diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/.classpath b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/.classpath new file mode 100644 index 0000000000000000000000000000000000000000..22f30643cba38503dfc820a64bc4225fd8c743ba --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/.classpath @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/.project b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/.project new file mode 100644 index 0000000000000000000000000000000000000000..4be95a5053c984436b01374714d4b8b7e57cbf3c --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/META-INF/MANIFEST.MF b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/META-INF/MANIFEST.MF new file mode 100644 index 0000000000000000000000000000000000000000..c61043e991ee0ad6910eb5f53452cb67d7e54f13 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/META-INF/MANIFEST.MF @@ -0,0 +1,16 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %pluginName +Bundle-SymbolicName: fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit;singleton:=true +Automatic-Module-Name: fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit +Bundle-Version: 1.0.0.qualifier +Bundle-ClassPath: . +Bundle-Activator: fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider.NSDEditPlugin$Implementation +Bundle-Vendor: %providerName +Bundle-Localization: plugin +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 +Export-Package: fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider +Require-Bundle: org.eclipse.core.runtime, + fr.centralesupelec.edf.riseclipse.iec61850.nsd;visibility:=reexport, + org.eclipse.emf.edit;visibility:=reexport +Bundle-ActivationPolicy: lazy diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/build.properties b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/build.properties new file mode 100644 index 0000000000000000000000000000000000000000..ed85e02f345262c32053c491e5423d60edb0b486 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/build.properties @@ -0,0 +1,26 @@ +# Copyright (c) 2019 CentraleSup�lec & EDF. +# 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 +# +# This file is part of the RiseClipse tool +# +# Contributors: +# Computer Science Department, CentraleSup�lec +# EDF R&D +# Contacts: +# dominique.marcadet@centralesupelec.fr +# aurelie.dehouck-neveu@edf.fr +# Web site: +# http://wdi.supelec.fr/software/RiseClipse/ +# + +bin.includes = .,\ + icons/,\ + META-INF/,\ + plugin.xml,\ + plugin.properties +jars.compile.order = . +source.. = src/ +output.. = bin/ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_applicableServiceNS_TApplicableServiceNS.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_applicableServiceNS_TApplicableServiceNS.gif new file mode 100644 index 0000000000000000000000000000000000000000..464e623af1bec3cb9169427f8df20d5108dce5cc Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_applicableServiceNS_TApplicableServiceNS.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_copyright_TCopyrightNotice.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_copyright_TCopyrightNotice.gif new file mode 100644 index 0000000000000000000000000000000000000000..f9be6da8f0d6f383d1c7bd8399c52a2ae1471218 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_copyright_TCopyrightNotice.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_nSDoc_TNSDoc.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_nSDoc_TNSDoc.gif new file mode 100644 index 0000000000000000000000000000000000000000..4ce1821708002471aeef8f03b62ff111d81b2a59 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_nSDoc_TNSDoc.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_nS_TNS.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_nS_TNS.gif new file mode 100644 index 0000000000000000000000000000000000000000..5b78080875cb046770b6a0b2b5dc9fde9bbab56f Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_nS_TNS.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_serviceNS_TServiceNS.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_serviceNS_TServiceNS.gif new file mode 100644 index 0000000000000000000000000000000000000000..1f8189adbeb9c651b1e073744529291b07715292 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateDocumentRoot_serviceNS_TServiceNS.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTAbbreviations_abbreviation_TAbbreviation.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTAbbreviations_abbreviation_TAbbreviation.gif new file mode 100644 index 0000000000000000000000000000000000000000..75a50e9797168d949d43c084a8e0f538ce52f9b9 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTAbbreviations_abbreviation_TAbbreviation.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTAnyLNClass_dataObject_TDataObject.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTAnyLNClass_dataObject_TDataObject.gif new file mode 100644 index 0000000000000000000000000000000000000000..d203b1d7444ad06025851896742ad53ab23a52dd Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTAnyLNClass_dataObject_TDataObject.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTApplicableServiceNS_serviceNsUsage_TServiceNsUsage.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTApplicableServiceNS_serviceNsUsage_TServiceNsUsage.gif new file mode 100644 index 0000000000000000000000000000000000000000..50ac6daf7ed170da8972dc9b878bc21df67ed47a Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTApplicableServiceNS_serviceNsUsage_TServiceNsUsage.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTApplicableServices_dataSetMemberOf_TDataSetMemberOf.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTApplicableServices_dataSetMemberOf_TDataSetMemberOf.gif new file mode 100644 index 0000000000000000000000000000000000000000..bf56763cd023ae9231705dcef6b7370ce9620ae6 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTApplicableServices_dataSetMemberOf_TDataSetMemberOf.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTApplicableServices_service_ServiceType.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTApplicableServices_service_ServiceType.gif new file mode 100644 index 0000000000000000000000000000000000000000..bf56763cd023ae9231705dcef6b7370ce9620ae6 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTApplicableServices_service_ServiceType.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTBasicTypes_basicType_TBasicType.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTBasicTypes_basicType_TBasicType.gif new file mode 100644 index 0000000000000000000000000000000000000000..b33e855fc39f163d653d09adfa309e59712913c9 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTBasicTypes_basicType_TBasicType.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDC_dataAttribute_TDataAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDC_dataAttribute_TDataAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..b6a1aceeddbe006c82b5f3102376e47cd6e7eb6f Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDC_dataAttribute_TDataAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDC_serviceParameter_TServiceParameter.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDC_serviceParameter_TServiceParameter.gif new file mode 100644 index 0000000000000000000000000000000000000000..f9e5fa823dae523cbf28d74b8e4f586df9098150 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDC_serviceParameter_TServiceParameter.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDC_subDataObject_TSubDataObject.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDC_subDataObject_TSubDataObject.gif new file mode 100644 index 0000000000000000000000000000000000000000..ed16f99f0c22fe084d0c13b73f0a76558e4187b4 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDC_subDataObject_TSubDataObject.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDCs_cDC_TCDC.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDCs_cDC_TCDC.gif new file mode 100644 index 0000000000000000000000000000000000000000..5766979ace0102112fd64e06602aefa40fdbcce8 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCDCs_cDC_TCDC.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTConstructedAttribute_subDataAttribute_TSubDataAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTConstructedAttribute_subDataAttribute_TSubDataAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..c85d5ad3a7e887b2da130c7e2efb426a8d7e64ed Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTConstructedAttribute_subDataAttribute_TSubDataAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTConstructedAttributes_constructedAttribute_TConstructedAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTConstructedAttributes_constructedAttribute_TConstructedAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..589ded3dfbde2368c1de8f9c11b19ace32d6ee81 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTConstructedAttributes_constructedAttribute_TConstructedAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTConstructedAttributes_constructedAttribute_TServiceConstructedAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTConstructedAttributes_constructedAttribute_TServiceConstructedAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..289eb8bf3851a5a2b39203366e46e4533a5cb076 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTConstructedAttributes_constructedAttribute_TServiceConstructedAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCopyrightNotice_license_TLicense.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCopyrightNotice_license_TLicense.gif new file mode 100644 index 0000000000000000000000000000000000000000..4c7f166dc4cbbbe39079f159ed44cfce8f1d9222 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCopyrightNotice_license_TLicense.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCopyrightNotice_notice_TNotice.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCopyrightNotice_notice_TNotice.gif new file mode 100644 index 0000000000000000000000000000000000000000..07adaab9f3a18020b0770b8d7bb1244b28cdd8de Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCopyrightNotice_notice_TNotice.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCopyrighted_copyright_TCopyrightNotice.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCopyrighted_copyright_TCopyrightNotice.gif new file mode 100644 index 0000000000000000000000000000000000000000..05dffc0a5ca466028783f0ab8ede814763b8e6fe Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTCopyrighted_copyright_TCopyrightNotice.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTEnumeration_literal_TLiteral.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTEnumeration_literal_TLiteral.gif new file mode 100644 index 0000000000000000000000000000000000000000..b3a2d022b7a46d296ae303203809034de9c205bc Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTEnumeration_literal_TLiteral.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTEnumerations_enumeration_TEnumeration.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTEnumerations_enumeration_TEnumeration.gif new file mode 100644 index 0000000000000000000000000000000000000000..73486a0c2db1f4a597d1e68276beb0b0ed7e80d8 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTEnumerations_enumeration_TEnumeration.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTFunctionalConstraint_applicableServices_TApplicableServices.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTFunctionalConstraint_applicableServices_TApplicableServices.gif new file mode 100644 index 0000000000000000000000000000000000000000..1edc5b9b23cf1c2c9ce8f303fec3cf3f94cf6bc4 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTFunctionalConstraint_applicableServices_TApplicableServices.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTFunctionalConstraints_functionalConstraint_TFunctionalConstraint.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTFunctionalConstraints_functionalConstraint_TFunctionalConstraint.gif new file mode 100644 index 0000000000000000000000000000000000000000..75a50e9797168d949d43c084a8e0f538ce52f9b9 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTFunctionalConstraints_functionalConstraint_TFunctionalConstraint.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTLNClasses_abstractLNClass_TAbstractLNClass.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTLNClasses_abstractLNClass_TAbstractLNClass.gif new file mode 100644 index 0000000000000000000000000000000000000000..d847f1b240113c9afb29e93e8c81445440b808e0 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTLNClasses_abstractLNClass_TAbstractLNClass.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTLNClasses_lNClass_TLNClass.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTLNClasses_lNClass_TLNClass.gif new file mode 100644 index 0000000000000000000000000000000000000000..e83e884daab92968f0214de522f83757650c1b47 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTLNClasses_lNClass_TLNClass.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNSDoc_doc_TDoc.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNSDoc_doc_TDoc.gif new file mode 100644 index 0000000000000000000000000000000000000000..fc17ce1f3934e33bc78e9dc80b93d8e8a0038f3a Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNSDoc_doc_TDoc.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_abbreviations_TAbbreviations.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_abbreviations_TAbbreviations.gif new file mode 100644 index 0000000000000000000000000000000000000000..5a593b6190f37120215dcb71123289cd6ff9ab8d Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_abbreviations_TAbbreviations.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_basicTypes_TBasicTypes.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_basicTypes_TBasicTypes.gif new file mode 100644 index 0000000000000000000000000000000000000000..b82fff7ab452de12a3842b56e606fcd22deafa3a Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_basicTypes_TBasicTypes.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_cDCs_TCDCs.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_cDCs_TCDCs.gif new file mode 100644 index 0000000000000000000000000000000000000000..247671fa2f2b04669c256db7a7ac4698521f6e46 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_cDCs_TCDCs.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_changes_TChanges.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_changes_TChanges.gif new file mode 100644 index 0000000000000000000000000000000000000000..d192e7c2c0b12086b8e19647ddc82bd559196f52 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_changes_TChanges.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_constructedAttributes_TConstructedAttributes.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_constructedAttributes_TConstructedAttributes.gif new file mode 100644 index 0000000000000000000000000000000000000000..32f857fd43dadcf04d3ac028b425a621cbf1b67a Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_constructedAttributes_TConstructedAttributes.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_dependsOn_DependsOnType.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_dependsOn_DependsOnType.gif new file mode 100644 index 0000000000000000000000000000000000000000..db2e9afd1d66186807006c834e5120dd29a2064c Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_dependsOn_DependsOnType.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_enumerations_TEnumerations.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_enumerations_TEnumerations.gif new file mode 100644 index 0000000000000000000000000000000000000000..e22c7e4cc469d050c527b7643d63ab6e7f2ff0f5 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_enumerations_TEnumerations.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_functionalConstraints_TFunctionalConstraints.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_functionalConstraints_TFunctionalConstraints.gif new file mode 100644 index 0000000000000000000000000000000000000000..5a593b6190f37120215dcb71123289cd6ff9ab8d Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_functionalConstraints_TFunctionalConstraints.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_lNClasses_TLNClasses.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_lNClasses_TLNClasses.gif new file mode 100644 index 0000000000000000000000000000000000000000..414b3c5f11aab7ab69c04c20eefacbe1a9f05513 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_lNClasses_TLNClasses.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_presenceConditions_TPresenceConditions.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_presenceConditions_TPresenceConditions.gif new file mode 100644 index 0000000000000000000000000000000000000000..73486a0c2db1f4a597d1e68276beb0b0ed7e80d8 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTNS_presenceConditions_TPresenceConditions.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTPresenceConditions_presenceCondition_TPresenceCondition.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTPresenceConditions_presenceCondition_TPresenceCondition.gif new file mode 100644 index 0000000000000000000000000000000000000000..65e9a41807f7a448b15e2b038cb1af59ac7b000e Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTPresenceConditions_presenceCondition_TPresenceCondition.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceCDC_serviceDataAttribute_TServiceDataAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceCDC_serviceDataAttribute_TServiceDataAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..4ca2167bf6fdc7a61cc9f9326051d70aa10773a4 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceCDC_serviceDataAttribute_TServiceDataAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceCDCs_serviceCDC_TServiceCDC.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceCDCs_serviceCDC_TServiceCDC.gif new file mode 100644 index 0000000000000000000000000000000000000000..6f2bb5e61f432b92a53f0bfe469e6d226a542650 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceCDCs_serviceCDC_TServiceCDC.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceConstructedAttributes_serviceConstructedAttribute_TServiceConstructedAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceConstructedAttributes_serviceConstructedAttribute_TServiceConstructedAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..fe9abb249374273fa38884b03394592ebfadaa78 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceConstructedAttributes_serviceConstructedAttribute_TServiceConstructedAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_abbreviations_TAbbreviations.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_abbreviations_TAbbreviations.gif new file mode 100644 index 0000000000000000000000000000000000000000..74f7ceb34b938a5d45117b8b00f03c067b4a51a8 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_abbreviations_TAbbreviations.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_changes_TChanges.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_changes_TChanges.gif new file mode 100644 index 0000000000000000000000000000000000000000..9b19f705944427e17a1e9dcb69b79d3466837f80 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_changes_TChanges.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_functionalConstraints_TFunctionalConstraints.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_functionalConstraints_TFunctionalConstraints.gif new file mode 100644 index 0000000000000000000000000000000000000000..74f7ceb34b938a5d45117b8b00f03c067b4a51a8 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_functionalConstraints_TFunctionalConstraints.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_presenceConditions_TPresenceConditions.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_presenceConditions_TPresenceConditions.gif new file mode 100644 index 0000000000000000000000000000000000000000..89d8767bf56c38fd34720d1577c45b61dc8817ca Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_presenceConditions_TPresenceConditions.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_serviceCDCs_TServiceCDCs.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_serviceCDCs_TServiceCDCs.gif new file mode 100644 index 0000000000000000000000000000000000000000..04aab9257b410114d814aa6c4591dbf71f20b349 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_serviceCDCs_TServiceCDCs.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_serviceConstructedAttributes_TServiceConstructedAttributes.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_serviceConstructedAttributes_TServiceConstructedAttributes.gif new file mode 100644 index 0000000000000000000000000000000000000000..9231d350a3d9e5357f17fb8203c0a0f4e8644f0e Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_serviceConstructedAttributes_TServiceConstructedAttributes.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_serviceTypeRealizations_TServiceTypeRealizations.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_serviceTypeRealizations_TServiceTypeRealizations.gif new file mode 100644 index 0000000000000000000000000000000000000000..381214b7725a0ba12c093604e1b4bf4c563cc604 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNS_serviceTypeRealizations_TServiceTypeRealizations.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNsUsage_appliesTo_AppliesToType.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNsUsage_appliesTo_AppliesToType.gif new file mode 100644 index 0000000000000000000000000000000000000000..9402ae7ef37fcb66d6a5e014ef7c43a11b5d062c Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceNsUsage_appliesTo_AppliesToType.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceTypeRealizations_serviceTypeRealization_TConstructedAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceTypeRealizations_serviceTypeRealization_TConstructedAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..e9245bcdf6ce78f567069d1828d7daae12c2b8c6 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceTypeRealizations_serviceTypeRealization_TConstructedAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceTypeRealizations_serviceTypeRealization_TServiceConstructedAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceTypeRealizations_serviceTypeRealization_TServiceConstructedAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..420dc70ca847db12046841705530d67cf1036d9f Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/ctool16/CreateTServiceTypeRealizations_serviceTypeRealization_TServiceConstructedAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/AppliesToType.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/AppliesToType.gif new file mode 100644 index 0000000000000000000000000000000000000000..9250fecbffd185d174d53f6b7ea979f63ce222d2 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/AppliesToType.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/DependsOnType.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/DependsOnType.gif new file mode 100644 index 0000000000000000000000000000000000000000..45731fe28e7e3521c15328ef201d58b47a13b383 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/DependsOnType.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/DocumentRoot.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/DocumentRoot.gif new file mode 100644 index 0000000000000000000000000000000000000000..739ebbfa6ac7b44cc1632663c006f47e20f05127 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/DocumentRoot.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/ServiceType.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/ServiceType.gif new file mode 100644 index 0000000000000000000000000000000000000000..c8d381f0b327e1289745a7e8ea72b5cc7b782bfe Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/ServiceType.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TAbbreviation.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TAbbreviation.gif new file mode 100644 index 0000000000000000000000000000000000000000..904159880b359f157463f3cb9230da602e5b3d3a Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TAbbreviation.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TAbbreviations.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TAbbreviations.gif new file mode 100644 index 0000000000000000000000000000000000000000..739ebbfa6ac7b44cc1632663c006f47e20f05127 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TAbbreviations.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TAbstractLNClass.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TAbstractLNClass.gif new file mode 100644 index 0000000000000000000000000000000000000000..498364f1c1ae0e61f26b0063dea3a1606959210e Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TAbstractLNClass.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TApplicableServiceNS.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TApplicableServiceNS.gif new file mode 100644 index 0000000000000000000000000000000000000000..7b7c428c715e615c179d42a8462ee953741414d4 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TApplicableServiceNS.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TApplicableServices.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TApplicableServices.gif new file mode 100644 index 0000000000000000000000000000000000000000..cdd3b76e3c0b3318166d84292d8d9e2146a48aa1 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TApplicableServices.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TBasicType.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TBasicType.gif new file mode 100644 index 0000000000000000000000000000000000000000..4365960a04b1589a21b7607f45f9b5907e2f01a8 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TBasicType.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TBasicTypes.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TBasicTypes.gif new file mode 100644 index 0000000000000000000000000000000000000000..7bac4fd3808df6247660dfb8d76e15609f279841 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TBasicTypes.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCDC.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCDC.gif new file mode 100644 index 0000000000000000000000000000000000000000..cdd3b76e3c0b3318166d84292d8d9e2146a48aa1 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCDC.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCDCs.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCDCs.gif new file mode 100644 index 0000000000000000000000000000000000000000..05dc74ad5da0d7b040b29537d5b24f2b120b11d5 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCDCs.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TChanges.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TChanges.gif new file mode 100644 index 0000000000000000000000000000000000000000..a26660ec28fda4a4216562537c32047bab42b782 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TChanges.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TConstructedAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TConstructedAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..83afb9b3c9a3c3e261dd043d2232d39254ac8e4a Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TConstructedAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TConstructedAttributes.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TConstructedAttributes.gif new file mode 100644 index 0000000000000000000000000000000000000000..c3370c7ddd5e0817a59de6fd45ad0993b52abe28 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TConstructedAttributes.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCopyrightNotice.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCopyrightNotice.gif new file mode 100644 index 0000000000000000000000000000000000000000..a26660ec28fda4a4216562537c32047bab42b782 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCopyrightNotice.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCopyrighted.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCopyrighted.gif new file mode 100644 index 0000000000000000000000000000000000000000..9250fecbffd185d174d53f6b7ea979f63ce222d2 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TCopyrighted.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDataAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDataAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..420eee177528d9bd6d862c38d2a66c14835a6140 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDataAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDataObject.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDataObject.gif new file mode 100644 index 0000000000000000000000000000000000000000..a17dc7d88e993e89a1d5f913ddfab16b1676c5bb Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDataObject.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDataSetMemberOf.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDataSetMemberOf.gif new file mode 100644 index 0000000000000000000000000000000000000000..c8d381f0b327e1289745a7e8ea72b5cc7b782bfe Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDataSetMemberOf.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDoc.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDoc.gif new file mode 100644 index 0000000000000000000000000000000000000000..134551bff7eb3f0beb14a6c4a270a2a94f782ec5 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDoc.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDocumentedClass.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDocumentedClass.gif new file mode 100644 index 0000000000000000000000000000000000000000..d92f34c8aea721c98537ccb1f4da29bdee3b8912 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TDocumentedClass.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TEnumeration.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TEnumeration.gif new file mode 100644 index 0000000000000000000000000000000000000000..d3dc5a9ad8159548d5ada4a1cd545ec1d4de029c Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TEnumeration.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TEnumerations.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TEnumerations.gif new file mode 100644 index 0000000000000000000000000000000000000000..1e5345fb3237c2f6eabcee2dbe44a371b49d8379 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TEnumerations.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TFunctionalConstraint.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TFunctionalConstraint.gif new file mode 100644 index 0000000000000000000000000000000000000000..904159880b359f157463f3cb9230da602e5b3d3a Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TFunctionalConstraint.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TFunctionalConstraints.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TFunctionalConstraints.gif new file mode 100644 index 0000000000000000000000000000000000000000..739ebbfa6ac7b44cc1632663c006f47e20f05127 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TFunctionalConstraints.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLNClass.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLNClass.gif new file mode 100644 index 0000000000000000000000000000000000000000..53500daf98e17bc98acd04b14eb7b16938ceb4dd Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLNClass.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLNClasses.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLNClasses.gif new file mode 100644 index 0000000000000000000000000000000000000000..89ad5da38ab3060f14ba925b1251bd5cb8454012 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLNClasses.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLicense.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLicense.gif new file mode 100644 index 0000000000000000000000000000000000000000..420eee177528d9bd6d862c38d2a66c14835a6140 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLicense.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLiteral.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLiteral.gif new file mode 100644 index 0000000000000000000000000000000000000000..53500daf98e17bc98acd04b14eb7b16938ceb4dd Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TLiteral.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TNS.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TNS.gif new file mode 100644 index 0000000000000000000000000000000000000000..1e5345fb3237c2f6eabcee2dbe44a371b49d8379 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TNS.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TNSDoc.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TNSDoc.gif new file mode 100644 index 0000000000000000000000000000000000000000..89ad5da38ab3060f14ba925b1251bd5cb8454012 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TNSDoc.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TNotice.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TNotice.gif new file mode 100644 index 0000000000000000000000000000000000000000..48e3cf2268736efbb8bc3c5bd29315702f2b38c4 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TNotice.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TPresenceCondition.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TPresenceCondition.gif new file mode 100644 index 0000000000000000000000000000000000000000..45731fe28e7e3521c15328ef201d58b47a13b383 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TPresenceCondition.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TPresenceConditions.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TPresenceConditions.gif new file mode 100644 index 0000000000000000000000000000000000000000..d3dc5a9ad8159548d5ada4a1cd545ec1d4de029c Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TPresenceConditions.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceCDC.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceCDC.gif new file mode 100644 index 0000000000000000000000000000000000000000..10d222998af0a3a571390bae7e117c9964ec1562 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceCDC.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceCDCs.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceCDCs.gif new file mode 100644 index 0000000000000000000000000000000000000000..106881e5d9bf05cb0cf3375cfd102e8039b8ace9 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceCDCs.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceConstructedAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceConstructedAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..afb82ea48a50d3fb875ce03cf0ec154e51c97cb7 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceConstructedAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceConstructedAttributes.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceConstructedAttributes.gif new file mode 100644 index 0000000000000000000000000000000000000000..33a997a1606acf7cb8a32921faeee1e5c809a0cb Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceConstructedAttributes.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceDataAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceDataAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..c414fe9f728a37e7a2578cf66e5d3f625b429d0e Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceDataAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceNS.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceNS.gif new file mode 100644 index 0000000000000000000000000000000000000000..cdd3b76e3c0b3318166d84292d8d9e2146a48aa1 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceNS.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceNsUsage.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceNsUsage.gif new file mode 100644 index 0000000000000000000000000000000000000000..48e3cf2268736efbb8bc3c5bd29315702f2b38c4 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceNsUsage.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceParameter.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceParameter.gif new file mode 100644 index 0000000000000000000000000000000000000000..a3908bcf7b4ec0b29040bb1ef944c4d5a93fbb32 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceParameter.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceTypeRealization.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceTypeRealization.gif new file mode 100644 index 0000000000000000000000000000000000000000..c8d381f0b327e1289745a7e8ea72b5cc7b782bfe Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceTypeRealization.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceTypeRealizations.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceTypeRealizations.gif new file mode 100644 index 0000000000000000000000000000000000000000..98b351f1c441775dfbe390577f2e534a4dcf07f9 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TServiceTypeRealizations.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TSubDataAttribute.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TSubDataAttribute.gif new file mode 100644 index 0000000000000000000000000000000000000000..d3dc5a9ad8159548d5ada4a1cd545ec1d4de029c Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TSubDataAttribute.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TSubDataObject.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TSubDataObject.gif new file mode 100644 index 0000000000000000000000000000000000000000..53500daf98e17bc98acd04b14eb7b16938ceb4dd Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TSubDataObject.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TTitledClass.gif b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TTitledClass.gif new file mode 100644 index 0000000000000000000000000000000000000000..c3370c7ddd5e0817a59de6fd45ad0993b52abe28 Binary files /dev/null and b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/icons/full/obj16/TTitledClass.gif differ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/plugin.properties b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/plugin.properties new file mode 100644 index 0000000000000000000000000000000000000000..da1d5b177bed8de7149a307a295b95c2fab220ac --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/plugin.properties @@ -0,0 +1,386 @@ +# Copyright (c) 2019 CentraleSup�lec & EDF. +# 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 +# +# This file is part of the RiseClipse tool +# +# Contributors: +# Computer Science Department, CentraleSup�lec +# EDF R&D +# Contacts: +# dominique.marcadet@centralesupelec.fr +# aurelie.dehouck-neveu@edf.fr +# Web site: +# http://wdi.supelec.fr/software/RiseClipse/ +# + +pluginName = NSD Edit Support +providerName = www.example.org + +_UI_CreateChild_text = {0} +_UI_CreateChild_text2 = {1} {0} +_UI_CreateChild_text3 = {1} +_UI_CreateChild_tooltip = Create New {0} Under {1} Feature +_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}. +_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent. + +_UI_PropertyDescriptor_description = The {0} of the {1} + +_UI_AppliesToType_type = Applies To Type +_UI_DependsOnType_type = Depends On Type +_UI_DocumentRoot_type = Document Root +_UI_ServiceType_type = Service Type +_UI_TAbbreviation_type = TAbbreviation +_UI_TAbbreviations_type = TAbbreviations +_UI_TAbstractLNClass_type = TAbstract LN Class +_UI_TAnyLNClass_type = TAny LN Class +_UI_TApplicableServiceNS_type = TApplicable Service NS +_UI_TApplicableServices_type = TApplicable Services +_UI_TBasicType_type = TBasic Type +_UI_TBasicTypes_type = TBasic Types +_UI_TCDC_type = TCDC +_UI_TCDCs_type = TCD Cs +_UI_TChanges_type = TChanges +_UI_TConstructedAttribute_type = TConstructed Attribute +_UI_TConstructedAttributes_type = TConstructed Attributes +_UI_TCopyrighted_type = TCopyrighted +_UI_TCopyrightNotice_type = TCopyright Notice +_UI_TDataAttribute_type = TData Attribute +_UI_TDataObject_type = TData Object +_UI_TDataSetMemberOf_type = TData Set Member Of +_UI_TDoc_type = TDoc +_UI_TDocumentedClass_type = TDocumented Class +_UI_TEnumeration_type = TEnumeration +_UI_TEnumerations_type = TEnumerations +_UI_TFunctionalConstraint_type = TFunctional Constraint +_UI_TFunctionalConstraints_type = TFunctional Constraints +_UI_TLicense_type = TLicense +_UI_TLiteral_type = TLiteral +_UI_TLNClass_type = TLN Class +_UI_TLNClasses_type = TLN Classes +_UI_TNotice_type = TNotice +_UI_TNS_type = TNS +_UI_TNSDoc_type = TNS Doc +_UI_TPresenceCondition_type = TPresence Condition +_UI_TPresenceConditions_type = TPresence Conditions +_UI_TServiceCDC_type = TService CDC +_UI_TServiceCDCs_type = TService CD Cs +_UI_TServiceConstructedAttribute_type = TService Constructed Attribute +_UI_TServiceConstructedAttributes_type = TService Constructed Attributes +_UI_TServiceDataAttribute_type = TService Data Attribute +_UI_TServiceNS_type = TService NS +_UI_TServiceNsUsage_type = TService Ns Usage +_UI_TServiceParameter_type = TService Parameter +_UI_TServiceTypeRealization_type = TService Type Realization +_UI_TServiceTypeRealizations_type = TService Type Realizations +_UI_TSubDataAttribute_type = TSub Data Attribute +_UI_TSubDataObject_type = TSub Data Object +_UI_TTitledClass_type = TTitled Class +_UI_Unknown_type = Object + +_UI_Unknown_datatype= Value + +_UI_AppliesToType_id_feature = Id +_UI_AppliesToType_publicationStage_feature = Publication Stage +_UI_AppliesToType_release_feature = Release +_UI_AppliesToType_revision_feature = Revision +_UI_AppliesToType_version_feature = Version +_UI_DependsOnType_id_feature = Id +_UI_DependsOnType_publicationStage_feature = Publication Stage +_UI_DependsOnType_release_feature = Release +_UI_DependsOnType_revision_feature = Revision +_UI_DependsOnType_version_feature = Version +_UI_DocumentRoot_mixed_feature = Mixed +_UI_DocumentRoot_xMLNSPrefixMap_feature = XMLNS Prefix Map +_UI_DocumentRoot_xSISchemaLocation_feature = XSI Schema Location +_UI_DocumentRoot_applicableServiceNS_feature = Applicable Service NS +_UI_DocumentRoot_copyright_feature = Copyright +_UI_DocumentRoot_nS_feature = NS +_UI_DocumentRoot_nSDoc_feature = NS Doc +_UI_DocumentRoot_serviceNS_feature = Service NS +_UI_ServiceType_name_feature = Name +_UI_TAbbreviation_descID_feature = Desc ID +_UI_TAbbreviation_name_feature = Name +_UI_TAbbreviations_abbreviation_feature = Abbreviation +_UI_TAbstractLNClass_name_feature = Name +_UI_TAnyLNClass_dataObject_feature = Data Object +_UI_TAnyLNClass_base_feature = Base +_UI_TApplicableServiceNS_serviceNsUsage_feature = Service Ns Usage +_UI_TApplicableServiceNS_date_feature = Date +_UI_TApplicableServiceNS_version_feature = Version +_UI_TApplicableServices_service_feature = Service +_UI_TApplicableServices_dataSetMemberOf_feature = Data Set Member Of +_UI_TBasicType_descID_feature = Desc ID +_UI_TBasicType_name_feature = Name +_UI_TBasicTypes_basicType_feature = Basic Type +_UI_TCDC_subDataObject_feature = Sub Data Object +_UI_TCDC_dataAttribute_feature = Data Attribute +_UI_TCDC_serviceParameter_feature = Service Parameter +_UI_TCDC_enumParameterized_feature = Enum Parameterized +_UI_TCDC_name_feature = Name +_UI_TCDC_statistics_feature = Statistics +_UI_TCDC_typeKindParameterized_feature = Type Kind Parameterized +_UI_TCDC_variant_feature = Variant +_UI_TCDCs_cDC_feature = CDC +_UI_TChanges_changesID_feature = Changes ID +_UI_TChanges_date_feature = Date +_UI_TChanges_release_feature = Release +_UI_TChanges_revision_feature = Revision +_UI_TChanges_tissues_feature = Tissues +_UI_TChanges_version_feature = Version +_UI_TConstructedAttribute_subDataAttribute_feature = Sub Data Attribute +_UI_TConstructedAttribute_name_feature = Name +_UI_TConstructedAttributes_constructedAttribute_feature = Constructed Attribute +_UI_TCopyrighted_copyright_feature = Copyright +_UI_TCopyrightNotice_notice_feature = Notice +_UI_TCopyrightNotice_license_feature = License +_UI_TDataAttribute_dchg_feature = Dchg +_UI_TDataAttribute_defaultValue_feature = Default Value +_UI_TDataAttribute_dupd_feature = Dupd +_UI_TDataAttribute_fc_feature = Fc +_UI_TDataAttribute_isArray_feature = Is Array +_UI_TDataAttribute_maxIndexAttribute_feature = Max Index Attribute +_UI_TDataAttribute_maxValue_feature = Max Value +_UI_TDataAttribute_minIndex_feature = Min Index +_UI_TDataAttribute_minValue_feature = Min Value +_UI_TDataAttribute_name_feature = Name +_UI_TDataAttribute_presCond_feature = Pres Cond +_UI_TDataAttribute_presCondArgs_feature = Pres Cond Args +_UI_TDataAttribute_presCondArgsID_feature = Pres Cond Args ID +_UI_TDataAttribute_qchg_feature = Qchg +_UI_TDataAttribute_sizeAttribute_feature = Size Attribute +_UI_TDataAttribute_type_feature = Type +_UI_TDataAttribute_typeKind_feature = Type Kind +_UI_TDataObject_dsPresCond_feature = Ds Pres Cond +_UI_TDataObject_dsPresCondArgs_feature = Ds Pres Cond Args +_UI_TDataObject_dsPresCondArgsID_feature = Ds Pres Cond Args ID +_UI_TDataObject_name_feature = Name +_UI_TDataObject_presCond_feature = Pres Cond +_UI_TDataObject_presCondArgs_feature = Pres Cond Args +_UI_TDataObject_presCondArgsID_feature = Pres Cond Args ID +_UI_TDataObject_transient_feature = Transient +_UI_TDataObject_type_feature = Type +_UI_TDataObject_underlyingType_feature = Underlying Type +_UI_TDataObject_underlyingTypeKind_feature = Underlying Type Kind +_UI_TDataSetMemberOf_cb_feature = Cb +_UI_TDoc_mixed_feature = Mixed +_UI_TDoc_group_feature = Group +_UI_TDoc_any_feature = Any +_UI_TDoc_id_feature = Id +_UI_TDocumentedClass_deprecated_feature = Deprecated +_UI_TDocumentedClass_descID_feature = Desc ID +_UI_TDocumentedClass_informative_feature = Informative +_UI_TEnumeration_literal_feature = Literal +_UI_TEnumeration_inheritedFrom_feature = Inherited From +_UI_TEnumeration_name_feature = Name +_UI_TEnumerations_enumeration_feature = Enumeration +_UI_TFunctionalConstraint_applicableServices_feature = Applicable Services +_UI_TFunctionalConstraint_abbreviation_feature = Abbreviation +_UI_TFunctionalConstraint_descID_feature = Desc ID +_UI_TFunctionalConstraint_titleID_feature = Title ID +_UI_TFunctionalConstraints_functionalConstraint_feature = Functional Constraint +_UI_TLicense_mixed_feature = Mixed +_UI_TLicense_kind_feature = Kind +_UI_TLicense_uri_feature = Uri +_UI_TLiteral_literalVal_feature = Literal Val +_UI_TLiteral_name_feature = Name +_UI_TLNClass_canHaveLOG_feature = Can Have LOG +_UI_TLNClass_isExtension_feature = Is Extension +_UI_TLNClass_name_feature = Name +_UI_TLNClasses_abstractLNClass_feature = Abstract LN Class +_UI_TLNClasses_lNClass_feature = LN Class +_UI_TNotice_mixed_feature = Mixed +_UI_TNS_changes_feature = Changes +_UI_TNS_dependsOn_feature = Depends On +_UI_TNS_basicTypes_feature = Basic Types +_UI_TNS_functionalConstraints_feature = Functional Constraints +_UI_TNS_presenceConditions_feature = Presence Conditions +_UI_TNS_abbreviations_feature = Abbreviations +_UI_TNS_enumerations_feature = Enumerations +_UI_TNS_constructedAttributes_feature = Constructed Attributes +_UI_TNS_cDCs_feature = CD Cs +_UI_TNS_lNClasses_feature = LN Classes +_UI_TNS_descID_feature = Desc ID +_UI_TNS_id_feature = Id +_UI_TNS_publicationStage_feature = Publication Stage +_UI_TNS_release_feature = Release +_UI_TNS_revision_feature = Revision +_UI_TNS_umlDate_feature = Uml Date +_UI_TNS_umlVersion_feature = Uml Version +_UI_TNS_version_feature = Version +_UI_TNSDoc_doc_feature = Doc +_UI_TNSDoc_id_feature = Id +_UI_TNSDoc_lang_feature = Lang +_UI_TNSDoc_publicationStage_feature = Publication Stage +_UI_TNSDoc_release_feature = Release +_UI_TNSDoc_revision_feature = Revision +_UI_TNSDoc_umlDate_feature = Uml Date +_UI_TNSDoc_umlVersion_feature = Uml Version +_UI_TNSDoc_version_feature = Version +_UI_TPresenceCondition_argument_feature = Argument +_UI_TPresenceCondition_descID_feature = Desc ID +_UI_TPresenceCondition_name_feature = Name +_UI_TPresenceCondition_titleID_feature = Title ID +_UI_TPresenceConditions_presenceCondition_feature = Presence Condition +_UI_TServiceCDC_serviceDataAttribute_feature = Service Data Attribute +_UI_TServiceCDC_cdc_feature = Cdc +_UI_TServiceCDC_variant_feature = Variant +_UI_TServiceCDCs_serviceCDC_feature = Service CDC +_UI_TServiceConstructedAttribute_typeKindParameterized_feature = Type Kind Parameterized +_UI_TServiceConstructedAttributes_serviceConstructedAttribute_feature = Service Constructed Attribute +_UI_TServiceDataAttribute_fc_feature = Fc +_UI_TServiceDataAttribute_name_feature = Name +_UI_TServiceDataAttribute_presCond_feature = Pres Cond +_UI_TServiceDataAttribute_presCondArgs_feature = Pres Cond Args +_UI_TServiceDataAttribute_presCondArgsID_feature = Pres Cond Args ID +_UI_TServiceDataAttribute_type_feature = Type +_UI_TServiceDataAttribute_typeKind_feature = Type Kind +_UI_TServiceDataAttribute_underlyingType_feature = Underlying Type +_UI_TServiceDataAttribute_underlyingTypeKind_feature = Underlying Type Kind +_UI_TServiceNS_changes_feature = Changes +_UI_TServiceNS_functionalConstraints_feature = Functional Constraints +_UI_TServiceNS_presenceConditions_feature = Presence Conditions +_UI_TServiceNS_abbreviations_feature = Abbreviations +_UI_TServiceNS_serviceTypeRealizations_feature = Service Type Realizations +_UI_TServiceNS_serviceConstructedAttributes_feature = Service Constructed Attributes +_UI_TServiceNS_serviceCDCs_feature = Service CD Cs +_UI_TServiceNS_descID_feature = Desc ID +_UI_TServiceNS_id_feature = Id +_UI_TServiceNS_publicationStage_feature = Publication Stage +_UI_TServiceNS_release_feature = Release +_UI_TServiceNS_revision_feature = Revision +_UI_TServiceNS_umlDate_feature = Uml Date +_UI_TServiceNS_umlVersion_feature = Uml Version +_UI_TServiceNS_version_feature = Version +_UI_TServiceNsUsage_appliesTo_feature = Applies To +_UI_TServiceNsUsage_id_feature = Id +_UI_TServiceNsUsage_publicationStage_feature = Publication Stage +_UI_TServiceNsUsage_release_feature = Release +_UI_TServiceNsUsage_revision_feature = Revision +_UI_TServiceNsUsage_version_feature = Version +_UI_TServiceParameter_defaultValue_feature = Default Value +_UI_TServiceParameter_maxValue_feature = Max Value +_UI_TServiceParameter_minValue_feature = Min Value +_UI_TServiceParameter_name_feature = Name +_UI_TServiceParameter_type_feature = Type +_UI_TServiceParameter_typeKind_feature = Type Kind +_UI_TServiceTypeRealization_fc_feature = Fc +_UI_TServiceTypeRealization_name_feature = Name +_UI_TServiceTypeRealization_presCond_feature = Pres Cond +_UI_TServiceTypeRealization_presCondArgs_feature = Pres Cond Args +_UI_TServiceTypeRealization_presCondArgsID_feature = Pres Cond Args ID +_UI_TServiceTypeRealization_type_feature = Type +_UI_TServiceTypeRealization_typeKind_feature = Type Kind +_UI_TServiceTypeRealizations_serviceTypeRealization_feature = Service Type Realization +_UI_TSubDataAttribute_defaultValue_feature = Default Value +_UI_TSubDataAttribute_isArray_feature = Is Array +_UI_TSubDataAttribute_maxIndexAttribute_feature = Max Index Attribute +_UI_TSubDataAttribute_maxValue_feature = Max Value +_UI_TSubDataAttribute_minIndex_feature = Min Index +_UI_TSubDataAttribute_minValue_feature = Min Value +_UI_TSubDataAttribute_name_feature = Name +_UI_TSubDataAttribute_presCond_feature = Pres Cond +_UI_TSubDataAttribute_presCondArgs_feature = Pres Cond Args +_UI_TSubDataAttribute_presCondArgsID_feature = Pres Cond Args ID +_UI_TSubDataAttribute_sizeAttribute_feature = Size Attribute +_UI_TSubDataAttribute_type_feature = Type +_UI_TSubDataAttribute_typeKind_feature = Type Kind +_UI_TSubDataObject_isArray_feature = Is Array +_UI_TSubDataObject_maxIndexAttribute_feature = Max Index Attribute +_UI_TSubDataObject_minIndex_feature = Min Index +_UI_TSubDataObject_name_feature = Name +_UI_TSubDataObject_presCond_feature = Pres Cond +_UI_TSubDataObject_presCondArgs_feature = Pres Cond Args +_UI_TSubDataObject_presCondArgsID_feature = Pres Cond Args ID +_UI_TSubDataObject_sizeAttribute_feature = Size Attribute +_UI_TSubDataObject_type_feature = Type +_UI_TSubDataObject_underlyingType_feature = Underlying Type +_UI_TSubDataObject_underlyingTypeKind_feature = Underlying Type Kind +_UI_TTitledClass_titleID_feature = Title ID +_UI_XMLTypeDocumentRoot_comment_feature = Comment +_UI_XMLTypeDocumentRoot_text_feature = Text +_UI_XMLTypeDocumentRoot_processingInstruction_feature = Processing Instruction +_UI_XMLTypeDocumentRoot_cDATA_feature = CDATA +_UI_Unknown_feature = Unspecified + +_UI_TACSIServicesKind_Associate_literal = Associate +_UI_TACSIServicesKind_Abort_literal = Abort +_UI_TACSIServicesKind_Release_literal = Release +_UI_TACSIServicesKind_GetServerDirectory_literal = GetServerDirectory +_UI_TACSIServicesKind_GetLogicalDeviceDirectory_literal = GetLogicalDeviceDirectory +_UI_TACSIServicesKind_GetAllDataValues_literal = GetAllDataValues +_UI_TACSIServicesKind_GetDataValues_literal = GetDataValues +_UI_TACSIServicesKind_SetDataValues_literal = SetDataValues +_UI_TACSIServicesKind_GetDataDirectory_literal = GetDataDirectory +_UI_TACSIServicesKind_GetDataDefinition_literal = GetDataDefinition +_UI_TACSIServicesKind_GetDataSetValues_literal = GetDataSetValues +_UI_TACSIServicesKind_SetDataSetValues_literal = SetDataSetValues +_UI_TACSIServicesKind_CreateDataSet_literal = CreateDataSet +_UI_TACSIServicesKind_DeleteDataSet_literal = DeleteDataSet +_UI_TACSIServicesKind_GetDataSetDirectory_literal = GetDataSetDirectory +_UI_TACSIServicesKind_SelectActiveSG_literal = SelectActiveSG +_UI_TACSIServicesKind_SelectEditSG_literal = SelectEditSG +_UI_TACSIServicesKind_SetEditSGValue_literal = SetEditSGValue +_UI_TACSIServicesKind_ConfirmEditSGValues_literal = ConfirmEditSGValues +_UI_TACSIServicesKind_GetEditSGValue_literal = GetEditSGValue +_UI_TACSIServicesKind_GetSGCBValues_literal = GetSGCBValues +_UI_TACSIServicesKind_Report_literal = Report +_UI_TACSIServicesKind_GetBRCBValues_literal = GetBRCBValues +_UI_TACSIServicesKind_SetBRCBValues_literal = SetBRCBValues +_UI_TACSIServicesKind_GetURCBValues_literal = GetURCBValues +_UI_TACSIServicesKind_SetURCBValues_literal = SetURCBValues +_UI_TACSIServicesKind_GetLCBValues_literal = GetLCBValues +_UI_TACSIServicesKind_SetLCBValues_literal = SetLCBValues +_UI_TACSIServicesKind_QueryLogByTime_literal = QueryLogByTime +_UI_TACSIServicesKind_QueryLogAfter_literal = QueryLogAfter +_UI_TACSIServicesKind_GetLogStatusValues_literal = GetLogStatusValues +_UI_TACSIServicesKind_SendGOOSEMessage_literal = SendGOOSEMessage +_UI_TACSIServicesKind_GetGoCBValues_literal = GetGoCBValues +_UI_TACSIServicesKind_SetGoCBValues_literal = SetGoCBValues +_UI_TACSIServicesKind_GetGoReference_literal = GetGoReference +_UI_TACSIServicesKind_GetGOOSEElementNumber_literal = GetGOOSEElementNumber +_UI_TACSIServicesKind_SendMSVMessage_literal = SendMSVMessage +_UI_TACSIServicesKind_GetMSVCBValues_literal = GetMSVCBValues +_UI_TACSIServicesKind_SetMSVCBValues_literal = SetMSVCBValues +_UI_TACSIServicesKind_SendUSVMessage_literal = SendUSVMessage +_UI_TACSIServicesKind_GetUSVCBValues_literal = GetUSVCBValues +_UI_TACSIServicesKind_SetUSVCBValues_literal = SetUSVCBValues +_UI_TACSIServicesKind_Select_literal = Select +_UI_TACSIServicesKind_SelectWithValue_literal = SelectWithValue +_UI_TACSIServicesKind_Cancel_literal = Cancel +_UI_TACSIServicesKind_Operate_literal = Operate +_UI_TACSIServicesKind_CommandTermination_literal = CommandTermination +_UI_TACSIServicesKind_TimeActivatedOperate_literal = TimeActivatedOperate +_UI_TACSIServicesKind_GetFile_literal = GetFile +_UI_TACSIServicesKind_SetFile_literal = SetFile +_UI_TACSIServicesKind_DeleteFile_literal = DeleteFile +_UI_TACSIServicesKind_GetFileAttributeValues_literal = GetFileAttributeValues +_UI_TACSIServicesKind_TimeSynchronization_literal = TimeSynchronization +_UI_TACSIServicesKind_InternalChange_literal = InternalChange +_UI_TACSIServicesKind_GetLogicalNodeDirectory_literal = GetLogicalNodeDirectory +_UI_TACSIServicesKind_GetMsvReference_literal = GetMsvReference +_UI_TACSIServicesKind_GetMSVElementNumber_literal = GetMSVElementNumber +_UI_TACSIServicesKind_GetUsvReference_literal = GetUsvReference +_UI_TACSIServicesKind_GetUSVElementNumber_literal = GetUSVElementNumber +_UI_TCBKind_RCB_literal = RCB +_UI_TCBKind_LCB_literal = LCB +_UI_TCBKind_GoCB_literal = GoCB +_UI_TCBKind_SVCB_literal = SVCB +_UI_TDefinedAttributeTypeKind_BASIC_literal = BASIC +_UI_TDefinedAttributeTypeKind_ENUMERATED_literal = ENUMERATED +_UI_TDefinedAttributeTypeKind_CONSTRUCTED_literal = CONSTRUCTED +_UI_TLicenseKind_Standard_literal = Standard +_UI_TLicenseKind_Private_literal = Private +_UI_TLicenseKind_None_literal = None +_UI_TPubStage_WD_literal = WD +_UI_TPubStage_CD_literal = CD +_UI_TPubStage_CDV_literal = CDV +_UI_TPubStage_DTS_literal = DTS +_UI_TPubStage_DTR_literal = DTR +_UI_TPubStage_FDIS_literal = FDIS +_UI_TPubStage_TS_literal = TS +_UI_TPubStage_TR_literal = TR +_UI_TPubStage_IS_literal = IS +_UI_TUndefinedAttributeTypeKind_undefined_literal = undefined diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/plugin.xml b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/plugin.xml new file mode 100644 index 0000000000000000000000000000000000000000..fc2be3857aff3c4c6a0d508dd07c30c1eb1dcf08 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/plugin.xml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.0"?> + +<!-- + Copyright (c) 2019 CentraleSupélec & EDF. + 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 + + This file is part of the RiseClipse tool + + Contributors: + Computer Science Department, CentraleSupélec + EDF R&D + Contacts: + dominique.marcadet@centralesupelec.fr + aurelie.dehouck-neveu@edf.fr + Web site: + http://wdi.supelec.fr/software/RiseClipse/ + +--> + +<plugin> + + <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories"> + <!-- @generated nsd --> + <factory + uri="http://www.iec.ch/61850/2016/NSD" + class="fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider.NsdItemProviderAdapterFactory" + supportedTypes= + "org.eclipse.emf.edit.provider.IEditingDomainItemProvider + org.eclipse.emf.edit.provider.IStructuredItemContentProvider + org.eclipse.emf.edit.provider.ITreeItemContentProvider + org.eclipse.emf.edit.provider.IItemLabelProvider + org.eclipse.emf.edit.provider.IItemPropertySource"/> + </extension> + +</plugin> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AppliesToTypeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AppliesToTypeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..5b3ffed8ee96dc9223ff50c2c3d0a4cc47149027 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AppliesToTypeItemProvider.java @@ -0,0 +1,232 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class AppliesToTypeItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public AppliesToTypeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addIdPropertyDescriptor( object ); + addPublicationStagePropertyDescriptor( object ); + addReleasePropertyDescriptor( object ); + addRevisionPropertyDescriptor( object ); + addVersionPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Id feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIdPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_AppliesToType_id_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_AppliesToType_id_feature", + "_UI_AppliesToType_type" ), + NsdPackage.Literals.APPLIES_TO_TYPE__ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Publication Stage feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPublicationStagePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_AppliesToType_publicationStage_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_AppliesToType_publicationStage_feature", + "_UI_AppliesToType_type" ), + NsdPackage.Literals.APPLIES_TO_TYPE__PUBLICATION_STAGE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Release feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReleasePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_AppliesToType_release_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_AppliesToType_release_feature", + "_UI_AppliesToType_type" ), + NsdPackage.Literals.APPLIES_TO_TYPE__RELEASE, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Revision feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRevisionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_AppliesToType_revision_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_AppliesToType_revision_feature", + "_UI_AppliesToType_type" ), + NsdPackage.Literals.APPLIES_TO_TYPE__REVISION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_AppliesToType_version_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_AppliesToType_version_feature", + "_UI_AppliesToType_type" ), + NsdPackage.Literals.APPLIES_TO_TYPE__VERSION, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns AppliesToType.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/AppliesToType" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( AppliesToType ) object ).getId(); + return label == null || label.length() == 0 ? getString( "_UI_AppliesToType_type" ) + : getString( "_UI_AppliesToType_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( AppliesToType.class ) ) { + case NsdPackage.APPLIES_TO_TYPE__ID: + case NsdPackage.APPLIES_TO_TYPE__PUBLICATION_STAGE: + case NsdPackage.APPLIES_TO_TYPE__RELEASE: + case NsdPackage.APPLIES_TO_TYPE__REVISION: + case NsdPackage.APPLIES_TO_TYPE__VERSION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DependsOnTypeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DependsOnTypeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..59137e2776bf4b9f40d3b0e63c0619c38bececa1 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DependsOnTypeItemProvider.java @@ -0,0 +1,232 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class DependsOnTypeItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DependsOnTypeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addIdPropertyDescriptor( object ); + addPublicationStagePropertyDescriptor( object ); + addReleasePropertyDescriptor( object ); + addRevisionPropertyDescriptor( object ); + addVersionPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Id feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIdPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_DependsOnType_id_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_DependsOnType_id_feature", + "_UI_DependsOnType_type" ), + NsdPackage.Literals.DEPENDS_ON_TYPE__ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Publication Stage feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPublicationStagePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_DependsOnType_publicationStage_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_DependsOnType_publicationStage_feature", + "_UI_DependsOnType_type" ), + NsdPackage.Literals.DEPENDS_ON_TYPE__PUBLICATION_STAGE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Release feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReleasePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_DependsOnType_release_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_DependsOnType_release_feature", + "_UI_DependsOnType_type" ), + NsdPackage.Literals.DEPENDS_ON_TYPE__RELEASE, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Revision feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRevisionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_DependsOnType_revision_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_DependsOnType_revision_feature", + "_UI_DependsOnType_type" ), + NsdPackage.Literals.DEPENDS_ON_TYPE__REVISION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_DependsOnType_version_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_DependsOnType_version_feature", + "_UI_DependsOnType_type" ), + NsdPackage.Literals.DEPENDS_ON_TYPE__VERSION, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns DependsOnType.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/DependsOnType" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( DependsOnType ) object ).getId(); + return label == null || label.length() == 0 ? getString( "_UI_DependsOnType_type" ) + : getString( "_UI_DependsOnType_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( DependsOnType.class ) ) { + case NsdPackage.DEPENDS_ON_TYPE__ID: + case NsdPackage.DEPENDS_ON_TYPE__PUBLICATION_STAGE: + case NsdPackage.DEPENDS_ON_TYPE__RELEASE: + case NsdPackage.DEPENDS_ON_TYPE__REVISION: + case NsdPackage.DEPENDS_ON_TYPE__VERSION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocumentRootItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocumentRootItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..f480cd84982ae39a362255acd8af85659a49f640 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocumentRootItemProvider.java @@ -0,0 +1,195 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class DocumentRootItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DocumentRootItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS ); + childrenFeatures.add( NsdPackage.Literals.DOCUMENT_ROOT__COPYRIGHT ); + childrenFeatures.add( NsdPackage.Literals.DOCUMENT_ROOT__NS ); + childrenFeatures.add( NsdPackage.Literals.DOCUMENT_ROOT__NS_DOC ); + childrenFeatures.add( NsdPackage.Literals.DOCUMENT_ROOT__SERVICE_NS ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns DocumentRoot.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/DocumentRoot" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_DocumentRoot_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( DocumentRoot.class ) ) { + case NsdPackage.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS: + case NsdPackage.DOCUMENT_ROOT__COPYRIGHT: + case NsdPackage.DOCUMENT_ROOT__NS: + case NsdPackage.DOCUMENT_ROOT__NS_DOC: + case NsdPackage.DOCUMENT_ROOT__SERVICE_NS: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS, + NsdFactory.eINSTANCE.createTApplicableServiceNS() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.DOCUMENT_ROOT__COPYRIGHT, + NsdFactory.eINSTANCE.createTCopyrightNotice() ) ); + + newChildDescriptors + .add( createChildParameter( NsdPackage.Literals.DOCUMENT_ROOT__NS, NsdFactory.eINSTANCE.createTNS() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.DOCUMENT_ROOT__NS_DOC, + NsdFactory.eINSTANCE.createTNSDoc() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.DOCUMENT_ROOT__SERVICE_NS, + NsdFactory.eINSTANCE.createTServiceNS() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/NSDEditPlugin.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/NSDEditPlugin.java new file mode 100644 index 0000000000000000000000000000000000000000..6668aad8fa586f03e2be6698497b9ab0e6816587 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/NSDEditPlugin.java @@ -0,0 +1,104 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import org.eclipse.emf.common.EMFPlugin; + +import org.eclipse.emf.common.util.ResourceLocator; + +/** + * This is the central singleton for the NSD edit plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public final class NSDEditPlugin extends EMFPlugin { + /** + * Keep track of the singleton. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final NSDEditPlugin INSTANCE = new NSDEditPlugin(); + + /** + * Keep track of the singleton. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static Implementation plugin; + + /** + * Create the instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NSDEditPlugin() { + super( new ResourceLocator[] {} ); + } + + /** + * Returns the singleton instance of the Eclipse plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the singleton instance. + * @generated + */ + @Override + public ResourceLocator getPluginResourceLocator() { + return plugin; + } + + /** + * Returns the singleton instance of the Eclipse plugin. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the singleton instance. + * @generated + */ + public static Implementation getPlugin() { + return plugin; + } + + /** + * The actual implementation of the Eclipse <b>Plugin</b>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static class Implementation extends EclipsePlugin { + /** + * Creates an instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Implementation() { + super(); + + // Remember the static instance. + // + plugin = this; + } + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/NsdItemProviderAdapterFactory.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/NsdItemProviderAdapterFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..992462c21fec5884812d027204a3ab1285c95966 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/NsdItemProviderAdapterFactory.java @@ -0,0 +1,1375 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdAdapterFactory; + +import java.util.ArrayList; +import java.util.Collection; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.edit.provider.ChangeNotifier; +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.ComposedAdapterFactory; +import org.eclipse.emf.edit.provider.IChangeNotifier; +import org.eclipse.emf.edit.provider.IDisposable; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.INotifyChangedListener; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +/** + * This is the factory that is used to provide the interfaces needed to support Viewers. + * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}. + * The adapters also support Eclipse property sheets. + * Note that most of the adapters are shared among multiple instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class NsdItemProviderAdapterFactory extends NsdAdapterFactory + implements ComposeableAdapterFactory, IChangeNotifier, IDisposable { + /** + * This keeps track of the root adapter factory that delegates to this adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ComposedAdapterFactory parentAdapterFactory; + + /** + * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IChangeNotifier changeNotifier = new ChangeNotifier(); + + /** + * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Collection< Object > supportedTypes = new ArrayList< Object >(); + + /** + * This constructs an instance. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NsdItemProviderAdapterFactory() { + supportedTypes.add( IEditingDomainItemProvider.class ); + supportedTypes.add( IStructuredItemContentProvider.class ); + supportedTypes.add( ITreeItemContentProvider.class ); + supportedTypes.add( IItemLabelProvider.class ); + supportedTypes.add( IItemPropertySource.class ); + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AppliesToTypeItemProvider appliesToTypeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createAppliesToTypeAdapter() { + if( appliesToTypeItemProvider == null ) { + appliesToTypeItemProvider = new AppliesToTypeItemProvider( this ); + } + + return appliesToTypeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected DependsOnTypeItemProvider dependsOnTypeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createDependsOnTypeAdapter() { + if( dependsOnTypeItemProvider == null ) { + dependsOnTypeItemProvider = new DependsOnTypeItemProvider( this ); + } + + return dependsOnTypeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected DocumentRootItemProvider documentRootItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createDocumentRootAdapter() { + if( documentRootItemProvider == null ) { + documentRootItemProvider = new DocumentRootItemProvider( this ); + } + + return documentRootItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ServiceTypeItemProvider serviceTypeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createServiceTypeAdapter() { + if( serviceTypeItemProvider == null ) { + serviceTypeItemProvider = new ServiceTypeItemProvider( this ); + } + + return serviceTypeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TAbbreviationItemProvider tAbbreviationItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTAbbreviationAdapter() { + if( tAbbreviationItemProvider == null ) { + tAbbreviationItemProvider = new TAbbreviationItemProvider( this ); + } + + return tAbbreviationItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TAbbreviationsItemProvider tAbbreviationsItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTAbbreviationsAdapter() { + if( tAbbreviationsItemProvider == null ) { + tAbbreviationsItemProvider = new TAbbreviationsItemProvider( this ); + } + + return tAbbreviationsItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TAbstractLNClassItemProvider tAbstractLNClassItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTAbstractLNClassAdapter() { + if( tAbstractLNClassItemProvider == null ) { + tAbstractLNClassItemProvider = new TAbstractLNClassItemProvider( this ); + } + + return tAbstractLNClassItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TApplicableServiceNSItemProvider tApplicableServiceNSItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTApplicableServiceNSAdapter() { + if( tApplicableServiceNSItemProvider == null ) { + tApplicableServiceNSItemProvider = new TApplicableServiceNSItemProvider( this ); + } + + return tApplicableServiceNSItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TApplicableServicesItemProvider tApplicableServicesItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTApplicableServicesAdapter() { + if( tApplicableServicesItemProvider == null ) { + tApplicableServicesItemProvider = new TApplicableServicesItemProvider( this ); + } + + return tApplicableServicesItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TBasicTypeItemProvider tBasicTypeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTBasicTypeAdapter() { + if( tBasicTypeItemProvider == null ) { + tBasicTypeItemProvider = new TBasicTypeItemProvider( this ); + } + + return tBasicTypeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TBasicTypesItemProvider tBasicTypesItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTBasicTypesAdapter() { + if( tBasicTypesItemProvider == null ) { + tBasicTypesItemProvider = new TBasicTypesItemProvider( this ); + } + + return tBasicTypesItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TCDCItemProvider tcdcItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTCDCAdapter() { + if( tcdcItemProvider == null ) { + tcdcItemProvider = new TCDCItemProvider( this ); + } + + return tcdcItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TCDCsItemProvider tcdCsItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTCDCsAdapter() { + if( tcdCsItemProvider == null ) { + tcdCsItemProvider = new TCDCsItemProvider( this ); + } + + return tcdCsItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TChangesItemProvider tChangesItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTChangesAdapter() { + if( tChangesItemProvider == null ) { + tChangesItemProvider = new TChangesItemProvider( this ); + } + + return tChangesItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TConstructedAttributeItemProvider tConstructedAttributeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTConstructedAttributeAdapter() { + if( tConstructedAttributeItemProvider == null ) { + tConstructedAttributeItemProvider = new TConstructedAttributeItemProvider( this ); + } + + return tConstructedAttributeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TConstructedAttributesItemProvider tConstructedAttributesItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTConstructedAttributesAdapter() { + if( tConstructedAttributesItemProvider == null ) { + tConstructedAttributesItemProvider = new TConstructedAttributesItemProvider( this ); + } + + return tConstructedAttributesItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TCopyrightedItemProvider tCopyrightedItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTCopyrightedAdapter() { + if( tCopyrightedItemProvider == null ) { + tCopyrightedItemProvider = new TCopyrightedItemProvider( this ); + } + + return tCopyrightedItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TCopyrightNoticeItemProvider tCopyrightNoticeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTCopyrightNoticeAdapter() { + if( tCopyrightNoticeItemProvider == null ) { + tCopyrightNoticeItemProvider = new TCopyrightNoticeItemProvider( this ); + } + + return tCopyrightNoticeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TDataAttributeItemProvider tDataAttributeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTDataAttributeAdapter() { + if( tDataAttributeItemProvider == null ) { + tDataAttributeItemProvider = new TDataAttributeItemProvider( this ); + } + + return tDataAttributeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TDataObjectItemProvider tDataObjectItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTDataObjectAdapter() { + if( tDataObjectItemProvider == null ) { + tDataObjectItemProvider = new TDataObjectItemProvider( this ); + } + + return tDataObjectItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TDataSetMemberOfItemProvider tDataSetMemberOfItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTDataSetMemberOfAdapter() { + if( tDataSetMemberOfItemProvider == null ) { + tDataSetMemberOfItemProvider = new TDataSetMemberOfItemProvider( this ); + } + + return tDataSetMemberOfItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TDocItemProvider tDocItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTDocAdapter() { + if( tDocItemProvider == null ) { + tDocItemProvider = new TDocItemProvider( this ); + } + + return tDocItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TDocumentedClassItemProvider tDocumentedClassItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTDocumentedClassAdapter() { + if( tDocumentedClassItemProvider == null ) { + tDocumentedClassItemProvider = new TDocumentedClassItemProvider( this ); + } + + return tDocumentedClassItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TEnumerationItemProvider tEnumerationItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTEnumerationAdapter() { + if( tEnumerationItemProvider == null ) { + tEnumerationItemProvider = new TEnumerationItemProvider( this ); + } + + return tEnumerationItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TEnumerationsItemProvider tEnumerationsItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTEnumerationsAdapter() { + if( tEnumerationsItemProvider == null ) { + tEnumerationsItemProvider = new TEnumerationsItemProvider( this ); + } + + return tEnumerationsItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TFunctionalConstraintItemProvider tFunctionalConstraintItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTFunctionalConstraintAdapter() { + if( tFunctionalConstraintItemProvider == null ) { + tFunctionalConstraintItemProvider = new TFunctionalConstraintItemProvider( this ); + } + + return tFunctionalConstraintItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TFunctionalConstraintsItemProvider tFunctionalConstraintsItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTFunctionalConstraintsAdapter() { + if( tFunctionalConstraintsItemProvider == null ) { + tFunctionalConstraintsItemProvider = new TFunctionalConstraintsItemProvider( this ); + } + + return tFunctionalConstraintsItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TLicenseItemProvider tLicenseItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTLicenseAdapter() { + if( tLicenseItemProvider == null ) { + tLicenseItemProvider = new TLicenseItemProvider( this ); + } + + return tLicenseItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TLiteralItemProvider tLiteralItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTLiteralAdapter() { + if( tLiteralItemProvider == null ) { + tLiteralItemProvider = new TLiteralItemProvider( this ); + } + + return tLiteralItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TLNClassItemProvider tlnClassItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTLNClassAdapter() { + if( tlnClassItemProvider == null ) { + tlnClassItemProvider = new TLNClassItemProvider( this ); + } + + return tlnClassItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TLNClassesItemProvider tlnClassesItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTLNClassesAdapter() { + if( tlnClassesItemProvider == null ) { + tlnClassesItemProvider = new TLNClassesItemProvider( this ); + } + + return tlnClassesItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TNoticeItemProvider tNoticeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTNoticeAdapter() { + if( tNoticeItemProvider == null ) { + tNoticeItemProvider = new TNoticeItemProvider( this ); + } + + return tNoticeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TNSItemProvider tnsItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTNSAdapter() { + if( tnsItemProvider == null ) { + tnsItemProvider = new TNSItemProvider( this ); + } + + return tnsItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TNSDocItemProvider tnsDocItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTNSDocAdapter() { + if( tnsDocItemProvider == null ) { + tnsDocItemProvider = new TNSDocItemProvider( this ); + } + + return tnsDocItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TPresenceConditionItemProvider tPresenceConditionItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTPresenceConditionAdapter() { + if( tPresenceConditionItemProvider == null ) { + tPresenceConditionItemProvider = new TPresenceConditionItemProvider( this ); + } + + return tPresenceConditionItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TPresenceConditionsItemProvider tPresenceConditionsItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTPresenceConditionsAdapter() { + if( tPresenceConditionsItemProvider == null ) { + tPresenceConditionsItemProvider = new TPresenceConditionsItemProvider( this ); + } + + return tPresenceConditionsItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceCDCItemProvider tServiceCDCItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTServiceCDCAdapter() { + if( tServiceCDCItemProvider == null ) { + tServiceCDCItemProvider = new TServiceCDCItemProvider( this ); + } + + return tServiceCDCItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceCDCsItemProvider tServiceCDCsItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTServiceCDCsAdapter() { + if( tServiceCDCsItemProvider == null ) { + tServiceCDCsItemProvider = new TServiceCDCsItemProvider( this ); + } + + return tServiceCDCsItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceConstructedAttributeItemProvider tServiceConstructedAttributeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTServiceConstructedAttributeAdapter() { + if( tServiceConstructedAttributeItemProvider == null ) { + tServiceConstructedAttributeItemProvider = new TServiceConstructedAttributeItemProvider( this ); + } + + return tServiceConstructedAttributeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceConstructedAttributesItemProvider tServiceConstructedAttributesItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTServiceConstructedAttributesAdapter() { + if( tServiceConstructedAttributesItemProvider == null ) { + tServiceConstructedAttributesItemProvider = new TServiceConstructedAttributesItemProvider( this ); + } + + return tServiceConstructedAttributesItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceDataAttributeItemProvider tServiceDataAttributeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTServiceDataAttributeAdapter() { + if( tServiceDataAttributeItemProvider == null ) { + tServiceDataAttributeItemProvider = new TServiceDataAttributeItemProvider( this ); + } + + return tServiceDataAttributeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceNSItemProvider tServiceNSItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTServiceNSAdapter() { + if( tServiceNSItemProvider == null ) { + tServiceNSItemProvider = new TServiceNSItemProvider( this ); + } + + return tServiceNSItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceNsUsageItemProvider tServiceNsUsageItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTServiceNsUsageAdapter() { + if( tServiceNsUsageItemProvider == null ) { + tServiceNsUsageItemProvider = new TServiceNsUsageItemProvider( this ); + } + + return tServiceNsUsageItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceParameterItemProvider tServiceParameterItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTServiceParameterAdapter() { + if( tServiceParameterItemProvider == null ) { + tServiceParameterItemProvider = new TServiceParameterItemProvider( this ); + } + + return tServiceParameterItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceTypeRealizationItemProvider tServiceTypeRealizationItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTServiceTypeRealizationAdapter() { + if( tServiceTypeRealizationItemProvider == null ) { + tServiceTypeRealizationItemProvider = new TServiceTypeRealizationItemProvider( this ); + } + + return tServiceTypeRealizationItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceTypeRealizationsItemProvider tServiceTypeRealizationsItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTServiceTypeRealizationsAdapter() { + if( tServiceTypeRealizationsItemProvider == null ) { + tServiceTypeRealizationsItemProvider = new TServiceTypeRealizationsItemProvider( this ); + } + + return tServiceTypeRealizationsItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TSubDataAttributeItemProvider tSubDataAttributeItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTSubDataAttributeAdapter() { + if( tSubDataAttributeItemProvider == null ) { + tSubDataAttributeItemProvider = new TSubDataAttributeItemProvider( this ); + } + + return tSubDataAttributeItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TSubDataObjectItemProvider tSubDataObjectItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTSubDataObjectAdapter() { + if( tSubDataObjectItemProvider == null ) { + tSubDataObjectItemProvider = new TSubDataObjectItemProvider( this ); + } + + return tSubDataObjectItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass} instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TTitledClassItemProvider tTitledClassItemProvider; + + /** + * This creates an adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter createTTitledClassAdapter() { + if( tTitledClassItemProvider == null ) { + tTitledClassItemProvider = new TTitledClassItemProvider( this ); + } + + return tTitledClassItemProvider; + } + + /** + * This returns the root adapter factory that contains this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ComposeableAdapterFactory getRootAdapterFactory() { + return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory(); + } + + /** + * This sets the composed adapter factory that contains this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setParentAdapterFactory( ComposedAdapterFactory parentAdapterFactory ) { + this.parentAdapterFactory = parentAdapterFactory; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isFactoryForType( Object type ) { + return supportedTypes.contains( type ) || super.isFactoryForType( type ); + } + + /** + * This implementation substitutes the factory itself as the key for the adapter. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Adapter adapt( Notifier notifier, Object type ) { + return super.adapt( notifier, this ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object adapt( Object object, Object type ) { + if( isFactoryForType( type ) ) { + Object adapter = super.adapt( object, type ); + if( !( type instanceof Class< ? > ) || ( ( ( Class< ? > ) type ).isInstance( adapter ) ) ) { + return adapter; + } + } + + return null; + } + + /** + * This adds a listener. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void addListener( INotifyChangedListener notifyChangedListener ) { + changeNotifier.addListener( notifyChangedListener ); + } + + /** + * This removes a listener. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void removeListener( INotifyChangedListener notifyChangedListener ) { + changeNotifier.removeListener( notifyChangedListener ); + } + + /** + * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void fireNotifyChanged( Notification notification ) { + changeNotifier.fireNotifyChanged( notification ); + + if( parentAdapterFactory != null ) { + parentAdapterFactory.fireNotifyChanged( notification ); + } + } + + /** + * This disposes all of the item providers created by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void dispose() { + if( appliesToTypeItemProvider != null ) appliesToTypeItemProvider.dispose(); + if( dependsOnTypeItemProvider != null ) dependsOnTypeItemProvider.dispose(); + if( documentRootItemProvider != null ) documentRootItemProvider.dispose(); + if( serviceTypeItemProvider != null ) serviceTypeItemProvider.dispose(); + if( tAbbreviationItemProvider != null ) tAbbreviationItemProvider.dispose(); + if( tAbbreviationsItemProvider != null ) tAbbreviationsItemProvider.dispose(); + if( tAbstractLNClassItemProvider != null ) tAbstractLNClassItemProvider.dispose(); + if( tApplicableServiceNSItemProvider != null ) tApplicableServiceNSItemProvider.dispose(); + if( tApplicableServicesItemProvider != null ) tApplicableServicesItemProvider.dispose(); + if( tBasicTypeItemProvider != null ) tBasicTypeItemProvider.dispose(); + if( tBasicTypesItemProvider != null ) tBasicTypesItemProvider.dispose(); + if( tcdcItemProvider != null ) tcdcItemProvider.dispose(); + if( tcdCsItemProvider != null ) tcdCsItemProvider.dispose(); + if( tChangesItemProvider != null ) tChangesItemProvider.dispose(); + if( tConstructedAttributeItemProvider != null ) tConstructedAttributeItemProvider.dispose(); + if( tConstructedAttributesItemProvider != null ) tConstructedAttributesItemProvider.dispose(); + if( tCopyrightedItemProvider != null ) tCopyrightedItemProvider.dispose(); + if( tCopyrightNoticeItemProvider != null ) tCopyrightNoticeItemProvider.dispose(); + if( tDataAttributeItemProvider != null ) tDataAttributeItemProvider.dispose(); + if( tDataObjectItemProvider != null ) tDataObjectItemProvider.dispose(); + if( tDataSetMemberOfItemProvider != null ) tDataSetMemberOfItemProvider.dispose(); + if( tDocItemProvider != null ) tDocItemProvider.dispose(); + if( tDocumentedClassItemProvider != null ) tDocumentedClassItemProvider.dispose(); + if( tEnumerationItemProvider != null ) tEnumerationItemProvider.dispose(); + if( tEnumerationsItemProvider != null ) tEnumerationsItemProvider.dispose(); + if( tFunctionalConstraintItemProvider != null ) tFunctionalConstraintItemProvider.dispose(); + if( tFunctionalConstraintsItemProvider != null ) tFunctionalConstraintsItemProvider.dispose(); + if( tLicenseItemProvider != null ) tLicenseItemProvider.dispose(); + if( tLiteralItemProvider != null ) tLiteralItemProvider.dispose(); + if( tlnClassItemProvider != null ) tlnClassItemProvider.dispose(); + if( tlnClassesItemProvider != null ) tlnClassesItemProvider.dispose(); + if( tNoticeItemProvider != null ) tNoticeItemProvider.dispose(); + if( tnsItemProvider != null ) tnsItemProvider.dispose(); + if( tnsDocItemProvider != null ) tnsDocItemProvider.dispose(); + if( tPresenceConditionItemProvider != null ) tPresenceConditionItemProvider.dispose(); + if( tPresenceConditionsItemProvider != null ) tPresenceConditionsItemProvider.dispose(); + if( tServiceCDCItemProvider != null ) tServiceCDCItemProvider.dispose(); + if( tServiceCDCsItemProvider != null ) tServiceCDCsItemProvider.dispose(); + if( tServiceConstructedAttributeItemProvider != null ) tServiceConstructedAttributeItemProvider.dispose(); + if( tServiceConstructedAttributesItemProvider != null ) tServiceConstructedAttributesItemProvider.dispose(); + if( tServiceDataAttributeItemProvider != null ) tServiceDataAttributeItemProvider.dispose(); + if( tServiceNSItemProvider != null ) tServiceNSItemProvider.dispose(); + if( tServiceNsUsageItemProvider != null ) tServiceNsUsageItemProvider.dispose(); + if( tServiceParameterItemProvider != null ) tServiceParameterItemProvider.dispose(); + if( tServiceTypeRealizationItemProvider != null ) tServiceTypeRealizationItemProvider.dispose(); + if( tServiceTypeRealizationsItemProvider != null ) tServiceTypeRealizationsItemProvider.dispose(); + if( tSubDataAttributeItemProvider != null ) tSubDataAttributeItemProvider.dispose(); + if( tSubDataObjectItemProvider != null ) tSubDataObjectItemProvider.dispose(); + if( tTitledClassItemProvider != null ) tTitledClassItemProvider.dispose(); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceTypeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceTypeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..faa28dfb73622e1fb03988d5b00670ccf720f63c --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceTypeItemProvider.java @@ -0,0 +1,162 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class ServiceTypeItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ServiceTypeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addNamePropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_ServiceType_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_ServiceType_name_feature", + "_UI_ServiceType_type" ), + NsdPackage.Literals.SERVICE_TYPE__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns ServiceType.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/ServiceType" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + TACSIServicesKind labelValue = ( ( ServiceType ) object ).getName(); + String label = labelValue == null ? null : labelValue.toString(); + return label == null || label.length() == 0 ? getString( "_UI_ServiceType_type" ) + : getString( "_UI_ServiceType_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( ServiceType.class ) ) { + case NsdPackage.SERVICE_TYPE__NAME: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAbbreviationItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAbbreviationItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..498f66012e06416679f738f9699e4854ac44e43b --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAbbreviationItemProvider.java @@ -0,0 +1,178 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TAbbreviationItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TAbbreviationItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addDescIDPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Desc ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDescIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TAbbreviation_descID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TAbbreviation_descID_feature", + "_UI_TAbbreviation_type" ), + NsdPackage.Literals.TABBREVIATION__DESC_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TAbbreviation_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TAbbreviation_name_feature", + "_UI_TAbbreviation_type" ), + NsdPackage.Literals.TABBREVIATION__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TAbbreviation.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TAbbreviation" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TAbbreviation ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TAbbreviation_type" ) + : getString( "_UI_TAbbreviation_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TAbbreviation.class ) ) { + case NsdPackage.TABBREVIATION__DESC_ID: + case NsdPackage.TABBREVIATION__NAME: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAbbreviationsItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAbbreviationsItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..521b4c724c4397a99a5929c2314dc94dcf967b2a --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAbbreviationsItemProvider.java @@ -0,0 +1,175 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TAbbreviationsItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TAbbreviationsItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TABBREVIATIONS__ABBREVIATION ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TAbbreviations.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TAbbreviations" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TAbbreviations_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TAbbreviations.class ) ) { + case NsdPackage.TABBREVIATIONS__ABBREVIATION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TABBREVIATIONS__ABBREVIATION, + NsdFactory.eINSTANCE.createTAbbreviation() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAbstractLNClassItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAbstractLNClassItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..629ef0c168e31c08b3fc7d0abccd9a96db3b649d --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAbstractLNClassItemProvider.java @@ -0,0 +1,140 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TAbstractLNClassItemProvider extends TAnyLNClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TAbstractLNClassItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addNamePropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TAbstractLNClass_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TAbstractLNClass_name_feature", + "_UI_TAbstractLNClass_type" ), + NsdPackage.Literals.TABSTRACT_LN_CLASS__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TAbstractLNClass.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TAbstractLNClass" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TAbstractLNClass ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TAbstractLNClass_type" ) + : getString( "_UI_TAbstractLNClass_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TAbstractLNClass.class ) ) { + case NsdPackage.TABSTRACT_LN_CLASS__NAME: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAnyLNClassItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAnyLNClassItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..a29a220c4801ba3d7a180603e61796f7369d624f --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TAnyLNClassItemProvider.java @@ -0,0 +1,167 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TAnyLNClassItemProvider extends TTitledClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TAnyLNClassItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addBasePropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Base feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addBasePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TAnyLNClass_base_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TAnyLNClass_base_feature", + "_UI_TAnyLNClass_type" ), + NsdPackage.Literals.TANY_LN_CLASS__BASE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TANY_LN_CLASS__DATA_OBJECT ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + TAnyLNClass tAnyLNClass = ( TAnyLNClass ) object; + return getString( "_UI_TAnyLNClass_type" ) + " " + tAnyLNClass.isDeprecated(); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TAnyLNClass.class ) ) { + case NsdPackage.TANY_LN_CLASS__BASE: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TANY_LN_CLASS__DATA_OBJECT: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TANY_LN_CLASS__DATA_OBJECT, + NsdFactory.eINSTANCE.createTDataObject() ) ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TApplicableServiceNSItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TApplicableServiceNSItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..afe74ab4d5e4f6425a853c5f9f775da5c77e96d9 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TApplicableServiceNSItemProvider.java @@ -0,0 +1,200 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS; + +import java.util.Collection; +import java.util.List; + +import javax.xml.datatype.XMLGregorianCalendar; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TApplicableServiceNSItemProvider extends TCopyrightedItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TApplicableServiceNSItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addDatePropertyDescriptor( object ); + addVersionPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Date feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDatePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TApplicableServiceNS_date_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TApplicableServiceNS_date_feature", + "_UI_TApplicableServiceNS_type" ), + NsdPackage.Literals.TAPPLICABLE_SERVICE_NS__DATE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TApplicableServiceNS_version_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TApplicableServiceNS_version_feature", + "_UI_TApplicableServiceNS_type" ), + NsdPackage.Literals.TAPPLICABLE_SERVICE_NS__VERSION, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TApplicableServiceNS.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TApplicableServiceNS" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + XMLGregorianCalendar labelValue = ( ( TApplicableServiceNS ) object ).getDate(); + String label = labelValue == null ? null : labelValue.toString(); + return label == null || label.length() == 0 ? getString( "_UI_TApplicableServiceNS_type" ) + : getString( "_UI_TApplicableServiceNS_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TApplicableServiceNS.class ) ) { + case NsdPackage.TAPPLICABLE_SERVICE_NS__DATE: + case NsdPackage.TAPPLICABLE_SERVICE_NS__VERSION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE, + NsdFactory.eINSTANCE.createTServiceNsUsage() ) ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TApplicableServicesItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TApplicableServicesItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..d6a453b2132e83ba53574ad4e72651e6be556ca1 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TApplicableServicesItemProvider.java @@ -0,0 +1,180 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TApplicableServicesItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TApplicableServicesItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TAPPLICABLE_SERVICES__SERVICE ); + childrenFeatures.add( NsdPackage.Literals.TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TApplicableServices.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TApplicableServices" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TApplicableServices_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TApplicableServices.class ) ) { + case NsdPackage.TAPPLICABLE_SERVICES__SERVICE: + case NsdPackage.TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TAPPLICABLE_SERVICES__SERVICE, + NsdFactory.eINSTANCE.createServiceType() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF, + NsdFactory.eINSTANCE.createTDataSetMemberOf() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TBasicTypeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TBasicTypeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..50cf4ada4f5c0fdaefccf8ea6092cb73b6d46b76 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TBasicTypeItemProvider.java @@ -0,0 +1,178 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TBasicTypeItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TBasicTypeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addDescIDPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Desc ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDescIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TBasicType_descID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TBasicType_descID_feature", + "_UI_TBasicType_type" ), + NsdPackage.Literals.TBASIC_TYPE__DESC_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TBasicType_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TBasicType_name_feature", + "_UI_TBasicType_type" ), + NsdPackage.Literals.TBASIC_TYPE__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TBasicType.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TBasicType" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TBasicType ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TBasicType_type" ) + : getString( "_UI_TBasicType_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TBasicType.class ) ) { + case NsdPackage.TBASIC_TYPE__DESC_ID: + case NsdPackage.TBASIC_TYPE__NAME: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TBasicTypesItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TBasicTypesItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..568221931aadf6f05fdecef67e81974ddbd473d6 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TBasicTypesItemProvider.java @@ -0,0 +1,175 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TBasicTypesItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TBasicTypesItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TBASIC_TYPES__BASIC_TYPE ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TBasicTypes.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TBasicTypes" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TBasicTypes_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TBasicTypes.class ) ) { + case NsdPackage.TBASIC_TYPES__BASIC_TYPE: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TBASIC_TYPES__BASIC_TYPE, + NsdFactory.eINSTANCE.createTBasicType() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCDCItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCDCItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..c4bd4b08d795c395692bd67e0f8ceac29c70d92d --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCDCItemProvider.java @@ -0,0 +1,259 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TCDCItemProvider extends TTitledClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TCDCItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addEnumParameterizedPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + addStatisticsPropertyDescriptor( object ); + addTypeKindParameterizedPropertyDescriptor( object ); + addVariantPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Enum Parameterized feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addEnumParameterizedPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TCDC_enumParameterized_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TCDC_enumParameterized_feature", + "_UI_TCDC_type" ), + NsdPackage.Literals.TCDC__ENUM_PARAMETERIZED, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TCDC_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TCDC_name_feature", "_UI_TCDC_type" ), + NsdPackage.Literals.TCDC__NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, null ) ); + } + + /** + * This adds a property descriptor for the Statistics feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addStatisticsPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TCDC_statistics_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TCDC_statistics_feature", + "_UI_TCDC_type" ), + NsdPackage.Literals.TCDC__STATISTICS, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type Kind Parameterized feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypeKindParameterizedPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TCDC_typeKindParameterized_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TCDC_typeKindParameterized_feature", + "_UI_TCDC_type" ), + NsdPackage.Literals.TCDC__TYPE_KIND_PARAMETERIZED, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Variant feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addVariantPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TCDC_variant_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TCDC_variant_feature", "_UI_TCDC_type" ), + NsdPackage.Literals.TCDC__VARIANT, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TCDC__SUB_DATA_OBJECT ); + childrenFeatures.add( NsdPackage.Literals.TCDC__DATA_ATTRIBUTE ); + childrenFeatures.add( NsdPackage.Literals.TCDC__SERVICE_PARAMETER ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TCDC.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TCDC" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TCDC ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TCDC_type" ) + : getString( "_UI_TCDC_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TCDC.class ) ) { + case NsdPackage.TCDC__ENUM_PARAMETERIZED: + case NsdPackage.TCDC__NAME: + case NsdPackage.TCDC__STATISTICS: + case NsdPackage.TCDC__TYPE_KIND_PARAMETERIZED: + case NsdPackage.TCDC__VARIANT: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TCDC__SUB_DATA_OBJECT: + case NsdPackage.TCDC__DATA_ATTRIBUTE: + case NsdPackage.TCDC__SERVICE_PARAMETER: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TCDC__SUB_DATA_OBJECT, + NsdFactory.eINSTANCE.createTSubDataObject() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TCDC__DATA_ATTRIBUTE, + NsdFactory.eINSTANCE.createTDataAttribute() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TCDC__SERVICE_PARAMETER, + NsdFactory.eINSTANCE.createTServiceParameter() ) ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCDCsItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCDCsItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..4b69e5dee1bdeda14fd30fee3337937e1e966be0 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCDCsItemProvider.java @@ -0,0 +1,175 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TCDCsItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TCDCsItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TCD_CS__CDC ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TCDCs.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TCDCs" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TCDCs_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TCDCs.class ) ) { + case NsdPackage.TCD_CS__CDC: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors + .add( createChildParameter( NsdPackage.Literals.TCD_CS__CDC, NsdFactory.eINSTANCE.createTCDC() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TChangesItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TChangesItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..aba4b48c98021a231ac8932ec12f80f3e9cd9c4c --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TChangesItemProvider.java @@ -0,0 +1,250 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TChangesItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TChangesItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addChangesIDPropertyDescriptor( object ); + addDatePropertyDescriptor( object ); + addReleasePropertyDescriptor( object ); + addRevisionPropertyDescriptor( object ); + addTissuesPropertyDescriptor( object ); + addVersionPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Changes ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addChangesIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TChanges_changesID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TChanges_changesID_feature", + "_UI_TChanges_type" ), + NsdPackage.Literals.TCHANGES__CHANGES_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Date feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDatePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TChanges_date_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TChanges_date_feature", + "_UI_TChanges_type" ), + NsdPackage.Literals.TCHANGES__DATE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Release feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReleasePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TChanges_release_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TChanges_release_feature", + "_UI_TChanges_type" ), + NsdPackage.Literals.TCHANGES__RELEASE, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Revision feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRevisionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TChanges_revision_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TChanges_revision_feature", + "_UI_TChanges_type" ), + NsdPackage.Literals.TCHANGES__REVISION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Tissues feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTissuesPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TChanges_tissues_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TChanges_tissues_feature", + "_UI_TChanges_type" ), + NsdPackage.Literals.TCHANGES__TISSUES, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TChanges_version_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TChanges_version_feature", + "_UI_TChanges_type" ), + NsdPackage.Literals.TCHANGES__VERSION, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TChanges.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TChanges" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TChanges ) object ).getChangesID(); + return label == null || label.length() == 0 ? getString( "_UI_TChanges_type" ) + : getString( "_UI_TChanges_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TChanges.class ) ) { + case NsdPackage.TCHANGES__CHANGES_ID: + case NsdPackage.TCHANGES__DATE: + case NsdPackage.TCHANGES__RELEASE: + case NsdPackage.TCHANGES__REVISION: + case NsdPackage.TCHANGES__TISSUES: + case NsdPackage.TCHANGES__VERSION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TConstructedAttributeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TConstructedAttributeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..5223b0c6eaccd2b863210fdfb1ec9c84566ff9dc --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TConstructedAttributeItemProvider.java @@ -0,0 +1,179 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TConstructedAttributeItemProvider extends TTitledClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TConstructedAttributeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addNamePropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TConstructedAttribute_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TConstructedAttribute_name_feature", + "_UI_TConstructedAttribute_type" ), + NsdPackage.Literals.TCONSTRUCTED_ATTRIBUTE__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TConstructedAttribute.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TConstructedAttribute" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TConstructedAttribute ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TConstructedAttribute_type" ) + : getString( "_UI_TConstructedAttribute_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TConstructedAttribute.class ) ) { + case NsdPackage.TCONSTRUCTED_ATTRIBUTE__NAME: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE, + NsdFactory.eINSTANCE.createTSubDataAttribute() ) ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TConstructedAttributesItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TConstructedAttributesItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..770b87cc3b0d369fd8d92b5e22c1a106e8f10265 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TConstructedAttributesItemProvider.java @@ -0,0 +1,180 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TConstructedAttributesItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TConstructedAttributesItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TConstructedAttributes.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TConstructedAttributes" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TConstructedAttributes_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TConstructedAttributes.class ) ) { + case NsdPackage.TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors + .add( createChildParameter( NsdPackage.Literals.TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE, + NsdFactory.eINSTANCE.createTConstructedAttribute() ) ); + + newChildDescriptors + .add( createChildParameter( NsdPackage.Literals.TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE, + NsdFactory.eINSTANCE.createTServiceConstructedAttribute() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCopyrightNoticeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCopyrightNoticeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..cb8d8bb8d748e5f69eb9d92b0e427decf596c925 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCopyrightNoticeItemProvider.java @@ -0,0 +1,180 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TCopyrightNoticeItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TCopyrightNoticeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TCOPYRIGHT_NOTICE__NOTICE ); + childrenFeatures.add( NsdPackage.Literals.TCOPYRIGHT_NOTICE__LICENSE ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TCopyrightNotice.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TCopyrightNotice" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TCopyrightNotice_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TCopyrightNotice.class ) ) { + case NsdPackage.TCOPYRIGHT_NOTICE__NOTICE: + case NsdPackage.TCOPYRIGHT_NOTICE__LICENSE: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TCOPYRIGHT_NOTICE__NOTICE, + NsdFactory.eINSTANCE.createTNotice() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TCOPYRIGHT_NOTICE__LICENSE, + NsdFactory.eINSTANCE.createTLicense() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCopyrightedItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCopyrightedItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..da7fe44a0793952ea3b4fef2081c5b297010e63e --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TCopyrightedItemProvider.java @@ -0,0 +1,175 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TCopyrightedItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TCopyrightedItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TCOPYRIGHTED__COPYRIGHT ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TCopyrighted.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TCopyrighted" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TCopyrighted_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TCopyrighted.class ) ) { + case NsdPackage.TCOPYRIGHTED__COPYRIGHT: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TCOPYRIGHTED__COPYRIGHT, + NsdFactory.eINSTANCE.createTCopyrightNotice() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDataAttributeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDataAttributeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..a65e1a2a6e483c49d3c23b9e3f3bb58033f098a3 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDataAttributeItemProvider.java @@ -0,0 +1,428 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TDataAttributeItemProvider extends TDocumentedClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TDataAttributeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addDchgPropertyDescriptor( object ); + addDefaultValuePropertyDescriptor( object ); + addDupdPropertyDescriptor( object ); + addFcPropertyDescriptor( object ); + addIsArrayPropertyDescriptor( object ); + addMaxIndexAttributePropertyDescriptor( object ); + addMaxValuePropertyDescriptor( object ); + addMinIndexPropertyDescriptor( object ); + addMinValuePropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + addPresCondPropertyDescriptor( object ); + addPresCondArgsPropertyDescriptor( object ); + addPresCondArgsIDPropertyDescriptor( object ); + addQchgPropertyDescriptor( object ); + addSizeAttributePropertyDescriptor( object ); + addTypePropertyDescriptor( object ); + addTypeKindPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Dchg feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDchgPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_dchg_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_dchg_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__DCHG, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Default Value feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDefaultValuePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_defaultValue_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_defaultValue_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__DEFAULT_VALUE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Dupd feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDupdPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_dupd_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_dupd_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__DUPD, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Fc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addFcPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_fc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_fc_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__FC, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Is Array feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIsArrayPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_isArray_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_isArray_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__IS_ARRAY, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Max Index Attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMaxIndexAttributePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_maxIndexAttribute_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_maxIndexAttribute_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Max Value feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMaxValuePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_maxValue_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_maxValue_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__MAX_VALUE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Min Index feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMinIndexPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_minIndex_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_minIndex_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__MIN_INDEX, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Min Value feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMinValuePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_minValue_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_minValue_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__MIN_VALUE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_name_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_presCond_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_presCond_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__PRES_COND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_presCondArgs_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_presCondArgs_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__PRES_COND_ARGS, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_presCondArgsID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_presCondArgsID_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__PRES_COND_ARGS_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Qchg feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addQchgPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_qchg_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_qchg_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__QCHG, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Size Attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addSizeAttributePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_sizeAttribute_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_sizeAttribute_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__SIZE_ATTRIBUTE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_type_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_type_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type Kind feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypeKindPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataAttribute_typeKind_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataAttribute_typeKind_feature", + "_UI_TDataAttribute_type" ), + NsdPackage.Literals.TDATA_ATTRIBUTE__TYPE_KIND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TDataAttribute.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TDataAttribute" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TDataAttribute ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TDataAttribute_type" ) + : getString( "_UI_TDataAttribute_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TDataAttribute.class ) ) { + case NsdPackage.TDATA_ATTRIBUTE__DCHG: + case NsdPackage.TDATA_ATTRIBUTE__DEFAULT_VALUE: + case NsdPackage.TDATA_ATTRIBUTE__DUPD: + case NsdPackage.TDATA_ATTRIBUTE__FC: + case NsdPackage.TDATA_ATTRIBUTE__IS_ARRAY: + case NsdPackage.TDATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: + case NsdPackage.TDATA_ATTRIBUTE__MAX_VALUE: + case NsdPackage.TDATA_ATTRIBUTE__MIN_INDEX: + case NsdPackage.TDATA_ATTRIBUTE__MIN_VALUE: + case NsdPackage.TDATA_ATTRIBUTE__NAME: + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND: + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS: + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS_ID: + case NsdPackage.TDATA_ATTRIBUTE__QCHG: + case NsdPackage.TDATA_ATTRIBUTE__SIZE_ATTRIBUTE: + case NsdPackage.TDATA_ATTRIBUTE__TYPE: + case NsdPackage.TDATA_ATTRIBUTE__TYPE_KIND: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDataObjectItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDataObjectItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..138e490ea90c713cc60e96343b5aa24011bf8ac8 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDataObjectItemProvider.java @@ -0,0 +1,320 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TDataObjectItemProvider extends TDocumentedClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TDataObjectItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addDsPresCondPropertyDescriptor( object ); + addDsPresCondArgsPropertyDescriptor( object ); + addDsPresCondArgsIDPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + addPresCondPropertyDescriptor( object ); + addPresCondArgsPropertyDescriptor( object ); + addPresCondArgsIDPropertyDescriptor( object ); + addTransientPropertyDescriptor( object ); + addTypePropertyDescriptor( object ); + addUnderlyingTypePropertyDescriptor( object ); + addUnderlyingTypeKindPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Ds Pres Cond feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDsPresCondPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_dsPresCond_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_dsPresCond_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__DS_PRES_COND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Ds Pres Cond Args feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDsPresCondArgsPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_dsPresCondArgs_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_dsPresCondArgs_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__DS_PRES_COND_ARGS, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Ds Pres Cond Args ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDsPresCondArgsIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_dsPresCondArgsID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_dsPresCondArgsID_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__DS_PRES_COND_ARGS_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_name_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_presCond_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_presCond_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__PRES_COND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_presCondArgs_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_presCondArgs_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__PRES_COND_ARGS, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_presCondArgsID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_presCondArgsID_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__PRES_COND_ARGS_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Transient feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTransientPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_transient_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_transient_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__TRANSIENT, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_type_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_type_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Underlying Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUnderlyingTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_underlyingType_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_underlyingType_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__UNDERLYING_TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Underlying Type Kind feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUnderlyingTypeKindPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataObject_underlyingTypeKind_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataObject_underlyingTypeKind_feature", + "_UI_TDataObject_type" ), + NsdPackage.Literals.TDATA_OBJECT__UNDERLYING_TYPE_KIND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TDataObject.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TDataObject" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TDataObject ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TDataObject_type" ) + : getString( "_UI_TDataObject_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TDataObject.class ) ) { + case NsdPackage.TDATA_OBJECT__DS_PRES_COND: + case NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS: + case NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS_ID: + case NsdPackage.TDATA_OBJECT__NAME: + case NsdPackage.TDATA_OBJECT__PRES_COND: + case NsdPackage.TDATA_OBJECT__PRES_COND_ARGS: + case NsdPackage.TDATA_OBJECT__PRES_COND_ARGS_ID: + case NsdPackage.TDATA_OBJECT__TRANSIENT: + case NsdPackage.TDATA_OBJECT__TYPE: + case NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE: + case NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE_KIND: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDataSetMemberOfItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDataSetMemberOfItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..383414adcee9f22484beb5f40aefa63870fb9acd --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDataSetMemberOfItemProvider.java @@ -0,0 +1,162 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TDataSetMemberOfItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TDataSetMemberOfItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addCbPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Cb feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addCbPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDataSetMemberOf_cb_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDataSetMemberOf_cb_feature", + "_UI_TDataSetMemberOf_type" ), + NsdPackage.Literals.TDATA_SET_MEMBER_OF__CB, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TDataSetMemberOf.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TDataSetMemberOf" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + TCBKind labelValue = ( ( TDataSetMemberOf ) object ).getCb(); + String label = labelValue == null ? null : labelValue.toString(); + return label == null || label.length() == 0 ? getString( "_UI_TDataSetMemberOf_type" ) + : getString( "_UI_TDataSetMemberOf_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TDataSetMemberOf.class ) ) { + case NsdPackage.TDATA_SET_MEMBER_OF__CB: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDocItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDocItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..e97ddd71274d32ee5d4d58a7ffcbf0f3c213b5d6 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDocItemProvider.java @@ -0,0 +1,261 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.ecore.util.FeatureMap; +import org.eclipse.emf.ecore.util.FeatureMapUtil; + +import org.eclipse.emf.ecore.xml.type.XMLTypeFactory; +import org.eclipse.emf.ecore.xml.type.XMLTypePackage; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TDocItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TDocItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addIdPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Id feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIdPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDoc_id_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDoc_id_feature", "_UI_TDoc_type" ), + NsdPackage.Literals.TDOC__ID, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TDOC__MIXED ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TDoc.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TDoc" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TDoc ) object ).getId(); + return label == null || label.length() == 0 ? getString( "_UI_TDoc_type" ) + : getString( "_UI_TDoc_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TDoc.class ) ) { + case NsdPackage.TDOC__ID: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TDOC__MIXED: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TDOC__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__COMMENT, "" ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TDOC__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__TEXT, "" ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TDOC__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__PROCESSING_INSTRUCTION, + XMLTypeFactory.eINSTANCE.createProcessingInstruction() ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TDOC__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__CDATA, "" ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TDOC__MIXED, + FeatureMapUtil.createEntry( NsdPackage.Literals.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS, + NsdFactory.eINSTANCE.createTApplicableServiceNS() ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TDOC__MIXED, FeatureMapUtil.createEntry( + NsdPackage.Literals.DOCUMENT_ROOT__COPYRIGHT, NsdFactory.eINSTANCE.createTCopyrightNotice() ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TDOC__MIXED, FeatureMapUtil + .createEntry( NsdPackage.Literals.DOCUMENT_ROOT__NS, NsdFactory.eINSTANCE.createTNS() ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TDOC__MIXED, FeatureMapUtil + .createEntry( NsdPackage.Literals.DOCUMENT_ROOT__NS_DOC, NsdFactory.eINSTANCE.createTNSDoc() ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TDOC__MIXED, FeatureMapUtil.createEntry( + NsdPackage.Literals.DOCUMENT_ROOT__SERVICE_NS, NsdFactory.eINSTANCE.createTServiceNS() ) ) ); + } + + /** + * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getCreateChildText( Object owner, Object feature, Object child, Collection< ? > selection ) { + Object childFeature = feature; + Object childObject = child; + + if( childFeature instanceof EStructuralFeature + && FeatureMapUtil.isFeatureMap( ( EStructuralFeature ) childFeature ) ) { + FeatureMap.Entry entry = ( FeatureMap.Entry ) childObject; + childFeature = entry.getEStructuralFeature(); + childObject = entry.getValue(); + } + + boolean qualify = childFeature == NsdPackage.Literals.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS + || childFeature == NsdPackage.Literals.DOCUMENT_ROOT__COPYRIGHT + || childFeature == NsdPackage.Literals.DOCUMENT_ROOT__NS + || childFeature == NsdPackage.Literals.DOCUMENT_ROOT__NS_DOC + || childFeature == NsdPackage.Literals.DOCUMENT_ROOT__SERVICE_NS; + + if( qualify ) { + return getString( "_UI_CreateChild_text2", + new Object[] { getTypeText( childObject ), getFeatureText( childFeature ), getTypeText( owner ) } ); + } + return super.getCreateChildText( owner, feature, child, selection ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDocumentedClassItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDocumentedClassItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..914eb0ed78198b7cbb203fd780a0c3bfb2bfb3bc --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TDocumentedClassItemProvider.java @@ -0,0 +1,195 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TDocumentedClassItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TDocumentedClassItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addDeprecatedPropertyDescriptor( object ); + addDescIDPropertyDescriptor( object ); + addInformativePropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Deprecated feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDeprecatedPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDocumentedClass_deprecated_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDocumentedClass_deprecated_feature", + "_UI_TDocumentedClass_type" ), + NsdPackage.Literals.TDOCUMENTED_CLASS__DEPRECATED, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Desc ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDescIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDocumentedClass_descID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDocumentedClass_descID_feature", + "_UI_TDocumentedClass_type" ), + NsdPackage.Literals.TDOCUMENTED_CLASS__DESC_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Informative feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addInformativePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TDocumentedClass_informative_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TDocumentedClass_informative_feature", + "_UI_TDocumentedClass_type" ), + NsdPackage.Literals.TDOCUMENTED_CLASS__INFORMATIVE, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TDocumentedClass.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TDocumentedClass" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + TDocumentedClass tDocumentedClass = ( TDocumentedClass ) object; + return getString( "_UI_TDocumentedClass_type" ) + " " + tDocumentedClass.isDeprecated(); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TDocumentedClass.class ) ) { + case NsdPackage.TDOCUMENTED_CLASS__DEPRECATED: + case NsdPackage.TDOCUMENTED_CLASS__DESC_ID: + case NsdPackage.TDOCUMENTED_CLASS__INFORMATIVE: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TEnumerationItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TEnumerationItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..9141ef3a25fb53ce33cd3a50ff222204536ad3e4 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TEnumerationItemProvider.java @@ -0,0 +1,197 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TEnumerationItemProvider extends TTitledClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TEnumerationItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addInheritedFromPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Inherited From feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addInheritedFromPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TEnumeration_inheritedFrom_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TEnumeration_inheritedFrom_feature", + "_UI_TEnumeration_type" ), + NsdPackage.Literals.TENUMERATION__INHERITED_FROM, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TEnumeration_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TEnumeration_name_feature", + "_UI_TEnumeration_type" ), + NsdPackage.Literals.TENUMERATION__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TENUMERATION__LITERAL ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TEnumeration.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TEnumeration" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TEnumeration ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TEnumeration_type" ) + : getString( "_UI_TEnumeration_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TEnumeration.class ) ) { + case NsdPackage.TENUMERATION__INHERITED_FROM: + case NsdPackage.TENUMERATION__NAME: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TENUMERATION__LITERAL: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TENUMERATION__LITERAL, + NsdFactory.eINSTANCE.createTLiteral() ) ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TEnumerationsItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TEnumerationsItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..4171f84ddeac755fb4b438a1bcf5a07c08278b4c --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TEnumerationsItemProvider.java @@ -0,0 +1,175 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TEnumerationsItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TEnumerationsItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TENUMERATIONS__ENUMERATION ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TEnumerations.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TEnumerations" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TEnumerations_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TEnumerations.class ) ) { + case NsdPackage.TENUMERATIONS__ENUMERATION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TENUMERATIONS__ENUMERATION, + NsdFactory.eINSTANCE.createTEnumeration() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TFunctionalConstraintItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TFunctionalConstraintItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..f6616dd9e843b5965b0fc0e4988d366800f16df0 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TFunctionalConstraintItemProvider.java @@ -0,0 +1,235 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TFunctionalConstraintItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TFunctionalConstraintItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addAbbreviationPropertyDescriptor( object ); + addDescIDPropertyDescriptor( object ); + addTitleIDPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Abbreviation feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addAbbreviationPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TFunctionalConstraint_abbreviation_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TFunctionalConstraint_abbreviation_feature", + "_UI_TFunctionalConstraint_type" ), + NsdPackage.Literals.TFUNCTIONAL_CONSTRAINT__ABBREVIATION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Desc ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDescIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TFunctionalConstraint_descID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TFunctionalConstraint_descID_feature", + "_UI_TFunctionalConstraint_type" ), + NsdPackage.Literals.TFUNCTIONAL_CONSTRAINT__DESC_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Title ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTitleIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TFunctionalConstraint_titleID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TFunctionalConstraint_titleID_feature", + "_UI_TFunctionalConstraint_type" ), + NsdPackage.Literals.TFUNCTIONAL_CONSTRAINT__TITLE_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TFunctionalConstraint.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TFunctionalConstraint" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TFunctionalConstraint ) object ).getAbbreviation(); + return label == null || label.length() == 0 ? getString( "_UI_TFunctionalConstraint_type" ) + : getString( "_UI_TFunctionalConstraint_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TFunctionalConstraint.class ) ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINT__ABBREVIATION: + case NsdPackage.TFUNCTIONAL_CONSTRAINT__DESC_ID: + case NsdPackage.TFUNCTIONAL_CONSTRAINT__TITLE_ID: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES, + NsdFactory.eINSTANCE.createTApplicableServices() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TFunctionalConstraintsItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TFunctionalConstraintsItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..c186cffbeccc832bfb70285bec24749591afb482 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TFunctionalConstraintsItemProvider.java @@ -0,0 +1,176 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TFunctionalConstraintsItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TFunctionalConstraintsItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TFunctionalConstraints.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TFunctionalConstraints" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TFunctionalConstraints_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TFunctionalConstraints.class ) ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors + .add( createChildParameter( NsdPackage.Literals.TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT, + NsdFactory.eINSTANCE.createTFunctionalConstraint() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLNClassItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLNClassItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..d2eca39c8aa6d56b204e29c1e6e220993ec2e506 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLNClassItemProvider.java @@ -0,0 +1,176 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TLNClassItemProvider extends TAnyLNClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TLNClassItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addCanHaveLOGPropertyDescriptor( object ); + addIsExtensionPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Can Have LOG feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addCanHaveLOGPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TLNClass_canHaveLOG_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TLNClass_canHaveLOG_feature", + "_UI_TLNClass_type" ), + NsdPackage.Literals.TLN_CLASS__CAN_HAVE_LOG, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Is Extension feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIsExtensionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TLNClass_isExtension_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TLNClass_isExtension_feature", + "_UI_TLNClass_type" ), + NsdPackage.Literals.TLN_CLASS__IS_EXTENSION, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TLNClass_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TLNClass_name_feature", + "_UI_TLNClass_type" ), + NsdPackage.Literals.TLN_CLASS__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TLNClass.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TLNClass" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TLNClass ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TLNClass_type" ) + : getString( "_UI_TLNClass_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TLNClass.class ) ) { + case NsdPackage.TLN_CLASS__CAN_HAVE_LOG: + case NsdPackage.TLN_CLASS__IS_EXTENSION: + case NsdPackage.TLN_CLASS__NAME: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLNClassesItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLNClassesItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..8b7e25df8739bb320d1316bc1961ca9dd70c6bca --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLNClassesItemProvider.java @@ -0,0 +1,180 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TLNClassesItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TLNClassesItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TLN_CLASSES__ABSTRACT_LN_CLASS ); + childrenFeatures.add( NsdPackage.Literals.TLN_CLASSES__LN_CLASS ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TLNClasses.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TLNClasses" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TLNClasses_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TLNClasses.class ) ) { + case NsdPackage.TLN_CLASSES__ABSTRACT_LN_CLASS: + case NsdPackage.TLN_CLASSES__LN_CLASS: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TLN_CLASSES__ABSTRACT_LN_CLASS, + NsdFactory.eINSTANCE.createTAbstractLNClass() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TLN_CLASSES__LN_CLASS, + NsdFactory.eINSTANCE.createTLNClass() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLicenseItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLicenseItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..4f01f5b938b4bd41719e10c5de7f0e451d3961f8 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLicenseItemProvider.java @@ -0,0 +1,233 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.ecore.util.FeatureMapUtil; + +import org.eclipse.emf.ecore.xml.type.XMLTypeFactory; +import org.eclipse.emf.ecore.xml.type.XMLTypePackage; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TLicenseItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TLicenseItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addKindPropertyDescriptor( object ); + addUriPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Kind feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addKindPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TLicense_kind_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TLicense_kind_feature", + "_UI_TLicense_type" ), + NsdPackage.Literals.TLICENSE__KIND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Uri feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUriPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TLicense_uri_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TLicense_uri_feature", + "_UI_TLicense_type" ), + NsdPackage.Literals.TLICENSE__URI, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TLICENSE__MIXED ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TLicense.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TLicense" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + TLicenseKind labelValue = ( ( TLicense ) object ).getKind(); + String label = labelValue == null ? null : labelValue.toString(); + return label == null || label.length() == 0 ? getString( "_UI_TLicense_type" ) + : getString( "_UI_TLicense_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TLicense.class ) ) { + case NsdPackage.TLICENSE__KIND: + case NsdPackage.TLICENSE__URI: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TLICENSE__MIXED: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TLICENSE__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__COMMENT, "" ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TLICENSE__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__TEXT, "" ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TLICENSE__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__PROCESSING_INSTRUCTION, + XMLTypeFactory.eINSTANCE.createProcessingInstruction() ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TLICENSE__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__CDATA, "" ) ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLiteralItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLiteralItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..3d75e82ac3bbbbe7bd66331623278d988cce3362 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TLiteralItemProvider.java @@ -0,0 +1,158 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TLiteralItemProvider extends TDocumentedClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TLiteralItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addLiteralValPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Literal Val feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addLiteralValPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TLiteral_literalVal_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TLiteral_literalVal_feature", + "_UI_TLiteral_type" ), + NsdPackage.Literals.TLITERAL__LITERAL_VAL, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TLiteral_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TLiteral_name_feature", + "_UI_TLiteral_type" ), + NsdPackage.Literals.TLITERAL__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TLiteral.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TLiteral" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TLiteral ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TLiteral_type" ) + : getString( "_UI_TLiteral_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TLiteral.class ) ) { + case NsdPackage.TLITERAL__LITERAL_VAL: + case NsdPackage.TLITERAL__NAME: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TNSDocItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TNSDocItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..c45a3d731abacde347adc94e1a291c8fd0401154 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TNSDocItemProvider.java @@ -0,0 +1,303 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TNSDocItemProvider extends TCopyrightedItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TNSDocItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addIdPropertyDescriptor( object ); + addLangPropertyDescriptor( object ); + addPublicationStagePropertyDescriptor( object ); + addReleasePropertyDescriptor( object ); + addRevisionPropertyDescriptor( object ); + addUmlDatePropertyDescriptor( object ); + addUmlVersionPropertyDescriptor( object ); + addVersionPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Id feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIdPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNSDoc_id_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNSDoc_id_feature", "_UI_TNSDoc_type" ), + NsdPackage.Literals.TNS_DOC__ID, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, null ) ); + } + + /** + * This adds a property descriptor for the Lang feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addLangPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNSDoc_lang_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNSDoc_lang_feature", "_UI_TNSDoc_type" ), + NsdPackage.Literals.TNS_DOC__LANG, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Publication Stage feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPublicationStagePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNSDoc_publicationStage_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNSDoc_publicationStage_feature", + "_UI_TNSDoc_type" ), + NsdPackage.Literals.TNS_DOC__PUBLICATION_STAGE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Release feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReleasePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNSDoc_release_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNSDoc_release_feature", + "_UI_TNSDoc_type" ), + NsdPackage.Literals.TNS_DOC__RELEASE, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Revision feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRevisionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNSDoc_revision_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNSDoc_revision_feature", + "_UI_TNSDoc_type" ), + NsdPackage.Literals.TNS_DOC__REVISION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Uml Date feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUmlDatePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNSDoc_umlDate_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNSDoc_umlDate_feature", + "_UI_TNSDoc_type" ), + NsdPackage.Literals.TNS_DOC__UML_DATE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Uml Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUmlVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNSDoc_umlVersion_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNSDoc_umlVersion_feature", + "_UI_TNSDoc_type" ), + NsdPackage.Literals.TNS_DOC__UML_VERSION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNSDoc_version_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNSDoc_version_feature", + "_UI_TNSDoc_type" ), + NsdPackage.Literals.TNS_DOC__VERSION, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TNS_DOC__DOC ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TNSDoc.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TNSDoc" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TNSDoc ) object ).getId(); + return label == null || label.length() == 0 ? getString( "_UI_TNSDoc_type" ) + : getString( "_UI_TNSDoc_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TNSDoc.class ) ) { + case NsdPackage.TNS_DOC__ID: + case NsdPackage.TNS_DOC__LANG: + case NsdPackage.TNS_DOC__PUBLICATION_STAGE: + case NsdPackage.TNS_DOC__RELEASE: + case NsdPackage.TNS_DOC__REVISION: + case NsdPackage.TNS_DOC__UML_DATE: + case NsdPackage.TNS_DOC__UML_VERSION: + case NsdPackage.TNS_DOC__VERSION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TNS_DOC__DOC: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors + .add( createChildParameter( NsdPackage.Literals.TNS_DOC__DOC, NsdFactory.eINSTANCE.createTDoc() ) ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TNSItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TNSItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..1690f583be47926739fe80003afce659e9d728fb --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TNSItemProvider.java @@ -0,0 +1,343 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TNSItemProvider extends TCopyrightedItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TNSItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addDescIDPropertyDescriptor( object ); + addIdPropertyDescriptor( object ); + addPublicationStagePropertyDescriptor( object ); + addReleasePropertyDescriptor( object ); + addRevisionPropertyDescriptor( object ); + addUmlDatePropertyDescriptor( object ); + addUmlVersionPropertyDescriptor( object ); + addVersionPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Desc ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDescIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNS_descID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNS_descID_feature", "_UI_TNS_type" ), + NsdPackage.Literals.TNS__DESC_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Id feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIdPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNS_id_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNS_id_feature", "_UI_TNS_type" ), + NsdPackage.Literals.TNS__ID, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, null ) ); + } + + /** + * This adds a property descriptor for the Publication Stage feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPublicationStagePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNS_publicationStage_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNS_publicationStage_feature", + "_UI_TNS_type" ), + NsdPackage.Literals.TNS__PUBLICATION_STAGE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Release feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReleasePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNS_release_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNS_release_feature", "_UI_TNS_type" ), + NsdPackage.Literals.TNS__RELEASE, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Revision feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRevisionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNS_revision_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNS_revision_feature", "_UI_TNS_type" ), + NsdPackage.Literals.TNS__REVISION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Uml Date feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUmlDatePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNS_umlDate_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNS_umlDate_feature", "_UI_TNS_type" ), + NsdPackage.Literals.TNS__UML_DATE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Uml Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUmlVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNS_umlVersion_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNS_umlVersion_feature", "_UI_TNS_type" ), + NsdPackage.Literals.TNS__UML_VERSION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TNS_version_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TNS_version_feature", "_UI_TNS_type" ), + NsdPackage.Literals.TNS__VERSION, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TNS__CHANGES ); + childrenFeatures.add( NsdPackage.Literals.TNS__DEPENDS_ON ); + childrenFeatures.add( NsdPackage.Literals.TNS__BASIC_TYPES ); + childrenFeatures.add( NsdPackage.Literals.TNS__FUNCTIONAL_CONSTRAINTS ); + childrenFeatures.add( NsdPackage.Literals.TNS__PRESENCE_CONDITIONS ); + childrenFeatures.add( NsdPackage.Literals.TNS__ABBREVIATIONS ); + childrenFeatures.add( NsdPackage.Literals.TNS__ENUMERATIONS ); + childrenFeatures.add( NsdPackage.Literals.TNS__CONSTRUCTED_ATTRIBUTES ); + childrenFeatures.add( NsdPackage.Literals.TNS__CD_CS ); + childrenFeatures.add( NsdPackage.Literals.TNS__LN_CLASSES ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TNS.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TNS" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TNS ) object ).getId(); + return label == null || label.length() == 0 ? getString( "_UI_TNS_type" ) + : getString( "_UI_TNS_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TNS.class ) ) { + case NsdPackage.TNS__DESC_ID: + case NsdPackage.TNS__ID: + case NsdPackage.TNS__PUBLICATION_STAGE: + case NsdPackage.TNS__RELEASE: + case NsdPackage.TNS__REVISION: + case NsdPackage.TNS__UML_DATE: + case NsdPackage.TNS__UML_VERSION: + case NsdPackage.TNS__VERSION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TNS__CHANGES: + case NsdPackage.TNS__DEPENDS_ON: + case NsdPackage.TNS__BASIC_TYPES: + case NsdPackage.TNS__FUNCTIONAL_CONSTRAINTS: + case NsdPackage.TNS__PRESENCE_CONDITIONS: + case NsdPackage.TNS__ABBREVIATIONS: + case NsdPackage.TNS__ENUMERATIONS: + case NsdPackage.TNS__CONSTRUCTED_ATTRIBUTES: + case NsdPackage.TNS__CD_CS: + case NsdPackage.TNS__LN_CLASSES: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors + .add( createChildParameter( NsdPackage.Literals.TNS__CHANGES, NsdFactory.eINSTANCE.createTChanges() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNS__DEPENDS_ON, + NsdFactory.eINSTANCE.createDependsOnType() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNS__BASIC_TYPES, + NsdFactory.eINSTANCE.createTBasicTypes() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNS__FUNCTIONAL_CONSTRAINTS, + NsdFactory.eINSTANCE.createTFunctionalConstraints() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNS__PRESENCE_CONDITIONS, + NsdFactory.eINSTANCE.createTPresenceConditions() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNS__ABBREVIATIONS, + NsdFactory.eINSTANCE.createTAbbreviations() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNS__ENUMERATIONS, + NsdFactory.eINSTANCE.createTEnumerations() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNS__CONSTRUCTED_ATTRIBUTES, + NsdFactory.eINSTANCE.createTConstructedAttributes() ) ); + + newChildDescriptors + .add( createChildParameter( NsdPackage.Literals.TNS__CD_CS, NsdFactory.eINSTANCE.createTCDCs() ) ); + + newChildDescriptors.add( + createChildParameter( NsdPackage.Literals.TNS__LN_CLASSES, NsdFactory.eINSTANCE.createTLNClasses() ) ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TNoticeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TNoticeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..6b26e6dcc8f1c62c61f9899547de994be47717c1 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TNoticeItemProvider.java @@ -0,0 +1,189 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.ecore.util.FeatureMapUtil; + +import org.eclipse.emf.ecore.xml.type.XMLTypeFactory; +import org.eclipse.emf.ecore.xml.type.XMLTypePackage; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TNoticeItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TNoticeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TNOTICE__MIXED ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TNotice.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TNotice" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TNotice_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TNotice.class ) ) { + case NsdPackage.TNOTICE__MIXED: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNOTICE__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__COMMENT, "" ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNOTICE__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__TEXT, "" ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNOTICE__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__PROCESSING_INSTRUCTION, + XMLTypeFactory.eINSTANCE.createProcessingInstruction() ) ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TNOTICE__MIXED, + FeatureMapUtil.createEntry( XMLTypePackage.Literals.XML_TYPE_DOCUMENT_ROOT__CDATA, "" ) ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TPresenceConditionItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TPresenceConditionItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..9a21749fc0cfa9b03f5771d77ae64df19e331858 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TPresenceConditionItemProvider.java @@ -0,0 +1,214 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TPresenceConditionItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TPresenceConditionItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addArgumentPropertyDescriptor( object ); + addDescIDPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + addTitleIDPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Argument feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addArgumentPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TPresenceCondition_argument_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TPresenceCondition_argument_feature", + "_UI_TPresenceCondition_type" ), + NsdPackage.Literals.TPRESENCE_CONDITION__ARGUMENT, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Desc ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDescIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TPresenceCondition_descID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TPresenceCondition_descID_feature", + "_UI_TPresenceCondition_type" ), + NsdPackage.Literals.TPRESENCE_CONDITION__DESC_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TPresenceCondition_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TPresenceCondition_name_feature", + "_UI_TPresenceCondition_type" ), + NsdPackage.Literals.TPRESENCE_CONDITION__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Title ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTitleIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TPresenceCondition_titleID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TPresenceCondition_titleID_feature", + "_UI_TPresenceCondition_type" ), + NsdPackage.Literals.TPRESENCE_CONDITION__TITLE_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TPresenceCondition.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TPresenceCondition" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TPresenceCondition ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TPresenceCondition_type" ) + : getString( "_UI_TPresenceCondition_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TPresenceCondition.class ) ) { + case NsdPackage.TPRESENCE_CONDITION__ARGUMENT: + case NsdPackage.TPRESENCE_CONDITION__DESC_ID: + case NsdPackage.TPRESENCE_CONDITION__NAME: + case NsdPackage.TPRESENCE_CONDITION__TITLE_ID: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TPresenceConditionsItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TPresenceConditionsItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..a57447008eda82f3961d83f0e930dbc669c6f44a --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TPresenceConditionsItemProvider.java @@ -0,0 +1,175 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TPresenceConditionsItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TPresenceConditionsItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TPRESENCE_CONDITIONS__PRESENCE_CONDITION ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TPresenceConditions.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TPresenceConditions" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TPresenceConditions_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TPresenceConditions.class ) ) { + case NsdPackage.TPRESENCE_CONDITIONS__PRESENCE_CONDITION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TPRESENCE_CONDITIONS__PRESENCE_CONDITION, + NsdFactory.eINSTANCE.createTPresenceCondition() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceCDCItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceCDCItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..9f7d394cdefb56a8587b0e99d2de520466f2b1d2 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceCDCItemProvider.java @@ -0,0 +1,217 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TServiceCDCItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TServiceCDCItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addCdcPropertyDescriptor( object ); + addVariantPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Cdc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addCdcPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceCDC_cdc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceCDC_cdc_feature", + "_UI_TServiceCDC_type" ), + NsdPackage.Literals.TSERVICE_CDC__CDC, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Variant feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addVariantPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceCDC_variant_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceCDC_variant_feature", + "_UI_TServiceCDC_type" ), + NsdPackage.Literals.TSERVICE_CDC__VARIANT, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TServiceCDC.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TServiceCDC" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TServiceCDC ) object ).getCdc(); + return label == null || label.length() == 0 ? getString( "_UI_TServiceCDC_type" ) + : getString( "_UI_TServiceCDC_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TServiceCDC.class ) ) { + case NsdPackage.TSERVICE_CDC__CDC: + case NsdPackage.TSERVICE_CDC__VARIANT: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE, + NsdFactory.eINSTANCE.createTServiceDataAttribute() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceCDCsItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceCDCsItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..af0695a9362c87d53ec9e9601cd0bd5746d85bce --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceCDCsItemProvider.java @@ -0,0 +1,175 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TServiceCDCsItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TServiceCDCsItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_CD_CS__SERVICE_CDC ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TServiceCDCs.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TServiceCDCs" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TServiceCDCs_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TServiceCDCs.class ) ) { + case NsdPackage.TSERVICE_CD_CS__SERVICE_CDC: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TSERVICE_CD_CS__SERVICE_CDC, + NsdFactory.eINSTANCE.createTServiceCDC() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceConstructedAttributeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceConstructedAttributeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..61517356ca12000f6fc4771e8b7be47aa7096786 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceConstructedAttributeItemProvider.java @@ -0,0 +1,141 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TServiceConstructedAttributeItemProvider extends TConstructedAttributeItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TServiceConstructedAttributeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addTypeKindParameterizedPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Type Kind Parameterized feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypeKindParameterizedPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceConstructedAttribute_typeKindParameterized_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_TServiceConstructedAttribute_typeKindParameterized_feature", + "_UI_TServiceConstructedAttribute_type" ), + NsdPackage.Literals.TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TServiceConstructedAttribute.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TServiceConstructedAttribute" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TServiceConstructedAttribute ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TServiceConstructedAttribute_type" ) + : getString( "_UI_TServiceConstructedAttribute_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TServiceConstructedAttribute.class ) ) { + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceConstructedAttributesItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceConstructedAttributesItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..f910c9efe2e8a0d8fd583b9b760aaba54cfee5ee --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceConstructedAttributesItemProvider.java @@ -0,0 +1,177 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TServiceConstructedAttributesItemProvider extends ItemProviderAdapter + implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, + IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TServiceConstructedAttributesItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TServiceConstructedAttributes.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TServiceConstructedAttributes" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TServiceConstructedAttributes_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TServiceConstructedAttributes.class ) ) { + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( + NsdPackage.Literals.TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE, + NsdFactory.eINSTANCE.createTServiceConstructedAttribute() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceDataAttributeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceDataAttributeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..41c79b586ac3aff9a958728d89c2d65236bcafdf --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceDataAttributeItemProvider.java @@ -0,0 +1,284 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TServiceDataAttributeItemProvider extends TDocumentedClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TServiceDataAttributeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addFcPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + addPresCondPropertyDescriptor( object ); + addPresCondArgsPropertyDescriptor( object ); + addPresCondArgsIDPropertyDescriptor( object ); + addTypePropertyDescriptor( object ); + addTypeKindPropertyDescriptor( object ); + addUnderlyingTypePropertyDescriptor( object ); + addUnderlyingTypeKindPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Fc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addFcPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceDataAttribute_fc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceDataAttribute_fc_feature", + "_UI_TServiceDataAttribute_type" ), + NsdPackage.Literals.TSERVICE_DATA_ATTRIBUTE__FC, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceDataAttribute_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceDataAttribute_name_feature", + "_UI_TServiceDataAttribute_type" ), + NsdPackage.Literals.TSERVICE_DATA_ATTRIBUTE__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceDataAttribute_presCond_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceDataAttribute_presCond_feature", + "_UI_TServiceDataAttribute_type" ), + NsdPackage.Literals.TSERVICE_DATA_ATTRIBUTE__PRES_COND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceDataAttribute_presCondArgs_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceDataAttribute_presCondArgs_feature", + "_UI_TServiceDataAttribute_type" ), + NsdPackage.Literals.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceDataAttribute_presCondArgsID_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_TServiceDataAttribute_presCondArgsID_feature", "_UI_TServiceDataAttribute_type" ), + NsdPackage.Literals.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceDataAttribute_type_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceDataAttribute_type_feature", + "_UI_TServiceDataAttribute_type" ), + NsdPackage.Literals.TSERVICE_DATA_ATTRIBUTE__TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type Kind feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypeKindPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceDataAttribute_typeKind_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceDataAttribute_typeKind_feature", + "_UI_TServiceDataAttribute_type" ), + NsdPackage.Literals.TSERVICE_DATA_ATTRIBUTE__TYPE_KIND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Underlying Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUnderlyingTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceDataAttribute_underlyingType_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_TServiceDataAttribute_underlyingType_feature", "_UI_TServiceDataAttribute_type" ), + NsdPackage.Literals.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Underlying Type Kind feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUnderlyingTypeKindPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceDataAttribute_underlyingTypeKind_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceDataAttribute_underlyingTypeKind_feature", + "_UI_TServiceDataAttribute_type" ), + NsdPackage.Literals.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TServiceDataAttribute.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TServiceDataAttribute" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TServiceDataAttribute ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TServiceDataAttribute_type" ) + : getString( "_UI_TServiceDataAttribute_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TServiceDataAttribute.class ) ) { + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__FC: + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__NAME: + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND: + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS: + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE: + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE_KIND: + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE: + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceNSItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceNSItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..4b18daef637b2fa20ae6928a232f73cceb0a86fa --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceNSItemProvider.java @@ -0,0 +1,335 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TServiceNSItemProvider extends TCopyrightedItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TServiceNSItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addDescIDPropertyDescriptor( object ); + addIdPropertyDescriptor( object ); + addPublicationStagePropertyDescriptor( object ); + addReleasePropertyDescriptor( object ); + addRevisionPropertyDescriptor( object ); + addUmlDatePropertyDescriptor( object ); + addUmlVersionPropertyDescriptor( object ); + addVersionPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Desc ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDescIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNS_descID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNS_descID_feature", + "_UI_TServiceNS_type" ), + NsdPackage.Literals.TSERVICE_NS__DESC_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Id feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIdPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNS_id_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNS_id_feature", + "_UI_TServiceNS_type" ), + NsdPackage.Literals.TSERVICE_NS__ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Publication Stage feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPublicationStagePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNS_publicationStage_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNS_publicationStage_feature", + "_UI_TServiceNS_type" ), + NsdPackage.Literals.TSERVICE_NS__PUBLICATION_STAGE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Release feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReleasePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNS_release_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNS_release_feature", + "_UI_TServiceNS_type" ), + NsdPackage.Literals.TSERVICE_NS__RELEASE, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Revision feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRevisionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNS_revision_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNS_revision_feature", + "_UI_TServiceNS_type" ), + NsdPackage.Literals.TSERVICE_NS__REVISION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Uml Date feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUmlDatePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNS_umlDate_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNS_umlDate_feature", + "_UI_TServiceNS_type" ), + NsdPackage.Literals.TSERVICE_NS__UML_DATE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Uml Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUmlVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNS_umlVersion_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNS_umlVersion_feature", + "_UI_TServiceNS_type" ), + NsdPackage.Literals.TSERVICE_NS__UML_VERSION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNS_version_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNS_version_feature", + "_UI_TServiceNS_type" ), + NsdPackage.Literals.TSERVICE_NS__VERSION, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_NS__CHANGES ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_NS__PRESENCE_CONDITIONS ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_NS__ABBREVIATIONS ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_NS__SERVICE_CD_CS ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TServiceNS.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TServiceNS" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TServiceNS ) object ).getId(); + return label == null || label.length() == 0 ? getString( "_UI_TServiceNS_type" ) + : getString( "_UI_TServiceNS_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TServiceNS.class ) ) { + case NsdPackage.TSERVICE_NS__DESC_ID: + case NsdPackage.TSERVICE_NS__ID: + case NsdPackage.TSERVICE_NS__PUBLICATION_STAGE: + case NsdPackage.TSERVICE_NS__RELEASE: + case NsdPackage.TSERVICE_NS__REVISION: + case NsdPackage.TSERVICE_NS__UML_DATE: + case NsdPackage.TSERVICE_NS__UML_VERSION: + case NsdPackage.TSERVICE_NS__VERSION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TSERVICE_NS__CHANGES: + case NsdPackage.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS: + case NsdPackage.TSERVICE_NS__PRESENCE_CONDITIONS: + case NsdPackage.TSERVICE_NS__ABBREVIATIONS: + case NsdPackage.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS: + case NsdPackage.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES: + case NsdPackage.TSERVICE_NS__SERVICE_CD_CS: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TSERVICE_NS__CHANGES, + NsdFactory.eINSTANCE.createTChanges() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS, + NsdFactory.eINSTANCE.createTFunctionalConstraints() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TSERVICE_NS__PRESENCE_CONDITIONS, + NsdFactory.eINSTANCE.createTPresenceConditions() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TSERVICE_NS__ABBREVIATIONS, + NsdFactory.eINSTANCE.createTAbbreviations() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS, + NsdFactory.eINSTANCE.createTServiceTypeRealizations() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES, + NsdFactory.eINSTANCE.createTServiceConstructedAttributes() ) ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TSERVICE_NS__SERVICE_CD_CS, + NsdFactory.eINSTANCE.createTServiceCDCs() ) ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceNsUsageItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceNsUsageItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..5e5fbed167e9192a28b674af4d49914a086841da --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceNsUsageItemProvider.java @@ -0,0 +1,271 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TServiceNsUsageItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TServiceNsUsageItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addIdPropertyDescriptor( object ); + addPublicationStagePropertyDescriptor( object ); + addReleasePropertyDescriptor( object ); + addRevisionPropertyDescriptor( object ); + addVersionPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Id feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIdPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNsUsage_id_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNsUsage_id_feature", + "_UI_TServiceNsUsage_type" ), + NsdPackage.Literals.TSERVICE_NS_USAGE__ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Publication Stage feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPublicationStagePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNsUsage_publicationStage_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNsUsage_publicationStage_feature", + "_UI_TServiceNsUsage_type" ), + NsdPackage.Literals.TSERVICE_NS_USAGE__PUBLICATION_STAGE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Release feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReleasePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNsUsage_release_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNsUsage_release_feature", + "_UI_TServiceNsUsage_type" ), + NsdPackage.Literals.TSERVICE_NS_USAGE__RELEASE, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Revision feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRevisionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNsUsage_revision_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNsUsage_revision_feature", + "_UI_TServiceNsUsage_type" ), + NsdPackage.Literals.TSERVICE_NS_USAGE__REVISION, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Version feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addVersionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceNsUsage_version_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceNsUsage_version_feature", + "_UI_TServiceNsUsage_type" ), + NsdPackage.Literals.TSERVICE_NS_USAGE__VERSION, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_NS_USAGE__APPLIES_TO ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TServiceNsUsage.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TServiceNsUsage" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TServiceNsUsage ) object ).getId(); + return label == null || label.length() == 0 ? getString( "_UI_TServiceNsUsage_type" ) + : getString( "_UI_TServiceNsUsage_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TServiceNsUsage.class ) ) { + case NsdPackage.TSERVICE_NS_USAGE__ID: + case NsdPackage.TSERVICE_NS_USAGE__PUBLICATION_STAGE: + case NsdPackage.TSERVICE_NS_USAGE__RELEASE: + case NsdPackage.TSERVICE_NS_USAGE__REVISION: + case NsdPackage.TSERVICE_NS_USAGE__VERSION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + case NsdPackage.TSERVICE_NS_USAGE__APPLIES_TO: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors.add( createChildParameter( NsdPackage.Literals.TSERVICE_NS_USAGE__APPLIES_TO, + NsdFactory.eINSTANCE.createAppliesToType() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceParameterItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceParameterItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..5699081acdf07bcd98d3fcb6de94da865e9e5004 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceParameterItemProvider.java @@ -0,0 +1,230 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TServiceParameterItemProvider extends TDocumentedClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TServiceParameterItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addDefaultValuePropertyDescriptor( object ); + addMaxValuePropertyDescriptor( object ); + addMinValuePropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + addTypePropertyDescriptor( object ); + addTypeKindPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Default Value feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDefaultValuePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceParameter_defaultValue_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceParameter_defaultValue_feature", + "_UI_TServiceParameter_type" ), + NsdPackage.Literals.TSERVICE_PARAMETER__DEFAULT_VALUE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Max Value feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMaxValuePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceParameter_maxValue_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceParameter_maxValue_feature", + "_UI_TServiceParameter_type" ), + NsdPackage.Literals.TSERVICE_PARAMETER__MAX_VALUE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Min Value feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMinValuePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceParameter_minValue_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceParameter_minValue_feature", + "_UI_TServiceParameter_type" ), + NsdPackage.Literals.TSERVICE_PARAMETER__MIN_VALUE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceParameter_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceParameter_name_feature", + "_UI_TServiceParameter_type" ), + NsdPackage.Literals.TSERVICE_PARAMETER__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceParameter_type_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceParameter_type_feature", + "_UI_TServiceParameter_type" ), + NsdPackage.Literals.TSERVICE_PARAMETER__TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type Kind feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypeKindPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceParameter_typeKind_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceParameter_typeKind_feature", + "_UI_TServiceParameter_type" ), + NsdPackage.Literals.TSERVICE_PARAMETER__TYPE_KIND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TServiceParameter.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TServiceParameter" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TServiceParameter ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TServiceParameter_type" ) + : getString( "_UI_TServiceParameter_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TServiceParameter.class ) ) { + case NsdPackage.TSERVICE_PARAMETER__DEFAULT_VALUE: + case NsdPackage.TSERVICE_PARAMETER__MAX_VALUE: + case NsdPackage.TSERVICE_PARAMETER__MIN_VALUE: + case NsdPackage.TSERVICE_PARAMETER__NAME: + case NsdPackage.TSERVICE_PARAMETER__TYPE: + case NsdPackage.TSERVICE_PARAMETER__TYPE_KIND: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceTypeRealizationItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceTypeRealizationItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..b68b66cbf0f61a7df5109c9b10d3cd0a111cd2ad --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceTypeRealizationItemProvider.java @@ -0,0 +1,268 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TServiceTypeRealizationItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TServiceTypeRealizationItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addFcPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + addPresCondPropertyDescriptor( object ); + addPresCondArgsPropertyDescriptor( object ); + addPresCondArgsIDPropertyDescriptor( object ); + addTypePropertyDescriptor( object ); + addTypeKindPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Fc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addFcPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TServiceTypeRealization_fc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceTypeRealization_fc_feature", + "_UI_TServiceTypeRealization_type" ), + NsdPackage.Literals.TSERVICE_TYPE_REALIZATION__FC, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceTypeRealization_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceTypeRealization_name_feature", + "_UI_TServiceTypeRealization_type" ), + NsdPackage.Literals.TSERVICE_TYPE_REALIZATION__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceTypeRealization_presCond_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceTypeRealization_presCond_feature", + "_UI_TServiceTypeRealization_type" ), + NsdPackage.Literals.TSERVICE_TYPE_REALIZATION__PRES_COND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceTypeRealization_presCondArgs_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceTypeRealization_presCondArgs_feature", + "_UI_TServiceTypeRealization_type" ), + NsdPackage.Literals.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceTypeRealization_presCondArgsID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceTypeRealization_presCondArgsID_feature", + "_UI_TServiceTypeRealization_type" ), + NsdPackage.Literals.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceTypeRealization_type_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceTypeRealization_type_feature", + "_UI_TServiceTypeRealization_type" ), + NsdPackage.Literals.TSERVICE_TYPE_REALIZATION__TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type Kind feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypeKindPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TServiceTypeRealization_typeKind_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TServiceTypeRealization_typeKind_feature", + "_UI_TServiceTypeRealization_type" ), + NsdPackage.Literals.TSERVICE_TYPE_REALIZATION__TYPE_KIND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TServiceTypeRealization.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TServiceTypeRealization" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TServiceTypeRealization ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TServiceTypeRealization_type" ) + : getString( "_UI_TServiceTypeRealization_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TServiceTypeRealization.class ) ) { + case NsdPackage.TSERVICE_TYPE_REALIZATION__FC: + case NsdPackage.TSERVICE_TYPE_REALIZATION__NAME: + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND: + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS: + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS_ID: + case NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE: + case NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE_KIND: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceTypeRealizationsItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceTypeRealizationsItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..476e0dd0d0ce775c885eec6b0428fb42a7c0d26b --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TServiceTypeRealizationsItemProvider.java @@ -0,0 +1,180 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TServiceTypeRealizationsItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, + IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TServiceTypeRealizationsItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + } + return itemPropertyDescriptors; + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Collection< ? extends EStructuralFeature > getChildrenFeatures( Object object ) { + if( childrenFeatures == null ) { + super.getChildrenFeatures( object ); + childrenFeatures.add( NsdPackage.Literals.TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION ); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EStructuralFeature getChildFeature( Object object, Object child ) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature( object, child ); + } + + /** + * This returns TServiceTypeRealizations.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TServiceTypeRealizations" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + return getString( "_UI_TServiceTypeRealizations_type" ); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TServiceTypeRealizations.class ) ) { + case NsdPackage.TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), true, false ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + + newChildDescriptors + .add( createChildParameter( NsdPackage.Literals.TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION, + NsdFactory.eINSTANCE.createTConstructedAttribute() ) ); + + newChildDescriptors + .add( createChildParameter( NsdPackage.Literals.TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION, + NsdFactory.eINSTANCE.createTServiceConstructedAttribute() ) ); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + return NSDEditPlugin.INSTANCE; + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TSubDataAttributeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TSubDataAttributeItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..3e16fc9f1d4c649ea7ba0cbbeb75efb70fde47f7 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TSubDataAttributeItemProvider.java @@ -0,0 +1,356 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TSubDataAttributeItemProvider extends TDocumentedClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TSubDataAttributeItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addDefaultValuePropertyDescriptor( object ); + addIsArrayPropertyDescriptor( object ); + addMaxIndexAttributePropertyDescriptor( object ); + addMaxValuePropertyDescriptor( object ); + addMinIndexPropertyDescriptor( object ); + addMinValuePropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + addPresCondPropertyDescriptor( object ); + addPresCondArgsPropertyDescriptor( object ); + addPresCondArgsIDPropertyDescriptor( object ); + addSizeAttributePropertyDescriptor( object ); + addTypePropertyDescriptor( object ); + addTypeKindPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Default Value feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDefaultValuePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_defaultValue_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_defaultValue_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__DEFAULT_VALUE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Is Array feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIsArrayPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_isArray_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_isArray_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__IS_ARRAY, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Max Index Attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMaxIndexAttributePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TSubDataAttribute_maxIndexAttribute_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_maxIndexAttribute_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Max Value feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMaxValuePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_maxValue_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_maxValue_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__MAX_VALUE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Min Index feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMinIndexPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_minIndex_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_minIndex_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__MIN_INDEX, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Min Value feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMinValuePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_minValue_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_minValue_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__MIN_VALUE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_name_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_presCond_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_presCond_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__PRES_COND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_presCondArgs_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_presCondArgs_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TSubDataAttribute_presCondArgsID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_presCondArgsID_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Size Attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addSizeAttributePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_sizeAttribute_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_sizeAttribute_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_type_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_type_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type Kind feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypeKindPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataAttribute_typeKind_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataAttribute_typeKind_feature", + "_UI_TSubDataAttribute_type" ), + NsdPackage.Literals.TSUB_DATA_ATTRIBUTE__TYPE_KIND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TSubDataAttribute.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TSubDataAttribute" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TSubDataAttribute ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TSubDataAttribute_type" ) + : getString( "_UI_TSubDataAttribute_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TSubDataAttribute.class ) ) { + case NsdPackage.TSUB_DATA_ATTRIBUTE__DEFAULT_VALUE: + case NsdPackage.TSUB_DATA_ATTRIBUTE__IS_ARRAY: + case NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: + case NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_VALUE: + case NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_INDEX: + case NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_VALUE: + case NsdPackage.TSUB_DATA_ATTRIBUTE__NAME: + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND: + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS: + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: + case NsdPackage.TSUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE: + case NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE: + case NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE_KIND: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TSubDataObjectItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TSubDataObjectItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..e250e5ae41f46ff8da17eb0d8f228228712e1e16 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TSubDataObjectItemProvider.java @@ -0,0 +1,320 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TSubDataObjectItemProvider extends TDocumentedClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TSubDataObjectItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addIsArrayPropertyDescriptor( object ); + addMaxIndexAttributePropertyDescriptor( object ); + addMinIndexPropertyDescriptor( object ); + addNamePropertyDescriptor( object ); + addPresCondPropertyDescriptor( object ); + addPresCondArgsPropertyDescriptor( object ); + addPresCondArgsIDPropertyDescriptor( object ); + addSizeAttributePropertyDescriptor( object ); + addTypePropertyDescriptor( object ); + addUnderlyingTypePropertyDescriptor( object ); + addUnderlyingTypeKindPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Is Array feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIsArrayPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataObject_isArray_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_isArray_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__IS_ARRAY, true, false, false, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Max Index Attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMaxIndexAttributePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataObject_maxIndexAttribute_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_maxIndexAttribute_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Min Index feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addMinIndexPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataObject_minIndex_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_minIndex_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__MIN_INDEX, true, false, false, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Name feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addNamePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataObject_name_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_name_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__NAME, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataObject_presCond_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_presCond_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__PRES_COND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataObject_presCondArgs_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_presCondArgs_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__PRES_COND_ARGS, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Pres Cond Args ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addPresCondArgsIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataObject_presCondArgsID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_presCondArgsID_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__PRES_COND_ARGS_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Size Attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addSizeAttributePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataObject_sizeAttribute_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_sizeAttribute_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__SIZE_ATTRIBUTE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataObject_type_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_type_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Underlying Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUnderlyingTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TSubDataObject_underlyingType_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_underlyingType_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__UNDERLYING_TYPE, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This adds a property descriptor for the Underlying Type Kind feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addUnderlyingTypeKindPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), getResourceLocator(), + getString( "_UI_TSubDataObject_underlyingTypeKind_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TSubDataObject_underlyingTypeKind_feature", + "_UI_TSubDataObject_type" ), + NsdPackage.Literals.TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TSubDataObject.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TSubDataObject" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + String label = ( ( TSubDataObject ) object ).getName(); + return label == null || label.length() == 0 ? getString( "_UI_TSubDataObject_type" ) + : getString( "_UI_TSubDataObject_type" ) + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TSubDataObject.class ) ) { + case NsdPackage.TSUB_DATA_OBJECT__IS_ARRAY: + case NsdPackage.TSUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE: + case NsdPackage.TSUB_DATA_OBJECT__MIN_INDEX: + case NsdPackage.TSUB_DATA_OBJECT__NAME: + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND: + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS: + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS_ID: + case NsdPackage.TSUB_DATA_OBJECT__SIZE_ATTRIBUTE: + case NsdPackage.TSUB_DATA_OBJECT__TYPE: + case NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE: + case NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TTitledClassItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TTitledClassItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..834eb4dddbfeeada36a1c137fc8e0c7ce9a9b6b3 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/TTitledClassItemProvider.java @@ -0,0 +1,139 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.provider; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +/** + * This is the item provider adapter for a {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class TTitledClassItemProvider extends TDocumentedClassItemProvider { + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TTitledClassItemProvider( AdapterFactory adapterFactory ) { + super( adapterFactory ); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public List< IItemPropertyDescriptor > getPropertyDescriptors( Object object ) { + if( itemPropertyDescriptors == null ) { + super.getPropertyDescriptors( object ); + + addTitleIDPropertyDescriptor( object ); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Title ID feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTitleIDPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), getString( "_UI_TTitledClass_titleID_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_TTitledClass_titleID_feature", + "_UI_TTitledClass_type" ), + NsdPackage.Literals.TTITLED_CLASS__TITLE_ID, true, false, false, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null ) ); + } + + /** + * This returns TTitledClass.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object getImage( Object object ) { + return overlayImage( object, getResourceLocator().getImage( "full/obj16/TTitledClass" ) ); + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getText( Object object ) { + TTitledClass tTitledClass = ( TTitledClass ) object; + return getString( "_UI_TTitledClass_type" ) + " " + tTitledClass.isDeprecated(); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void notifyChanged( Notification notification ) { + updateChildren( notification ); + + switch( notification.getFeatureID( TTitledClass.class ) ) { + case NsdPackage.TTITLED_CLASS__TITLE_ID: + fireNotifyChanged( new ViewerNotification( notification, notification.getNotifier(), false, true ) ); + return; + } + super.notifyChanged( notification ); + } + + /** + * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children + * that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected void collectNewChildDescriptors( Collection< Object > newChildDescriptors, Object object ) { + super.collectNewChildDescriptors( newChildDescriptors, object ); + } + +} diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/.classpath b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/.classpath new file mode 100644 index 0000000000000000000000000000000000000000..22f30643cba38503dfc820a64bc4225fd8c743ba --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/.classpath @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/.project b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/.project new file mode 100644 index 0000000000000000000000000000000000000000..2256c101e379cc9ce15e459336d8798d65be622a --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>fr.centralesupelec.edf.riseclipse.iec61850.nsd</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/META-INF/MANIFEST.MF b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/META-INF/MANIFEST.MF new file mode 100644 index 0000000000000000000000000000000000000000..f02084668c05b8a20d41d4e7589067775f34f4cd --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/META-INF/MANIFEST.MF @@ -0,0 +1,18 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %pluginName +Bundle-SymbolicName: fr.centralesupelec.edf.riseclipse.iec61850.nsd;singleton:=true +Automatic-Module-Name: fr.centralesupelec.edf.riseclipse.iec61850.nsd +Bundle-Version: 1.0.0.qualifier +Bundle-ClassPath: . +Bundle-Vendor: %providerName +Bundle-Localization: plugin +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 +Export-Package: fr.centralesupelec.edf.riseclipse.iec61850.nsd, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.util +Require-Bundle: org.eclipse.core.runtime, + org.eclipse.emf.ecore;visibility:=reexport, + org.eclipse.emf.ecore.xmi;visibility:=reexport, + fr.centralesupelec.edf.riseclipse.main +Bundle-ActivationPolicy: lazy diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/build.properties b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/build.properties new file mode 100644 index 0000000000000000000000000000000000000000..ad2171deec023d176c423ae916e3ad7e44a65f76 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/build.properties @@ -0,0 +1,26 @@ +# Copyright (c) 2019 CentraleSup�lec & EDF. +# 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 +# +# This file is part of the RiseClipse tool +# +# Contributors: +# Computer Science Department, CentraleSup�lec +# EDF R&D +# Contacts: +# dominique.marcadet@centralesupelec.fr +# aurelie.dehouck-neveu@edf.fr +# Web site: +# http://wdi.supelec.fr/software/RiseClipse/ +# + +bin.includes = .,\ + model/,\ + META-INF/,\ + plugin.xml,\ + plugin.properties +jars.compile.order = . +source.. = src/ +output.. = bin/ diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.ecore b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.ecore new file mode 100644 index 0000000000000000000000000000000000000000..d5bc0ede031d2f4538cd9d75443ba67a80640043 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.ecore @@ -0,0 +1,2978 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="nsd" nsURI="http://www.iec.ch/61850/2016/NSD" nsPrefix="nsd"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="
			COPYRIGHT (c) IEC, 2017. This version of this XSD is part of IEC 61850-7-7:2017; see the IEC 61850-7-7:2017 for full legal notices. In case of any differences between the here-below code and the IEC published content, the IEC published content remains the reference to be considered. The whole document has to be taken into account to have a full description of this code component.
		See www.iec.ch/CCv1 for copyright details.
		

			NameSpace Definition file syntax (NSD.xsd) for the machine processable format for tools.
			2017-08-28 (version 2017A).
			
			Describes in a machine-processable way selected components from the IEC 61850 data model.
			Four elements are defined:
			- NS: shall hold the namespace definition, all its documentation strings to be resolved in the sibling file (i.e., with same name but file extension "NSDOC") with NSDoc as root. Shall have as file extension "NSD".
			- ServiceNS: shall hold a service namespace definition, all its documentation strings to be resolved in the sibling file (i.e., with same name but file extension "NSDOC") with NSDoc as root. Shall have as file extension "SNSD".
			- NSDoc: shall hold all documentation strings defined in the sibling NS file. Shall have as file extension "NSDOC".
			- ApplicableServiceNS: shall hold definition of link between NS and applicable ServiceNS. Shall have as file extension "AppNS".
		

			COPYRIGHT (c) IEC, 2017. This version of this XSD is part of IEC copyright definition.
		

			Definition of elements used for copyright declaration in a code component XML file
			Draft 2016-11-23 (version 0.1).
			
			To be imported in other code component XSD to enable the usage of a copyright.
		"/> + </eAnnotations> + <eClassifiers xsi:type="ecore:EClass" name="AppliesToType"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="AppliesTo_._type"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="#//TNSIdentifier"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="id"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="publicationStage" eType="#//TPubStage" + defaultValueLiteral="IS" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The publication stage of the namespace, by default IS."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="publicationStage"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="release" eType="#//TNSRelease" + defaultValueLiteral="1" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Release of the namespace version and revision, by default 1."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="release"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="#//TNSRevision" + defaultValueLiteral="A" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Revision of the namespace version, by default 'A'."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="revision"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1" + eType="#//TNSVersion" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version (year) of the namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="version"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="DependsOnType"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="DependsOn_._type"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="#//TNSIdentifier"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="id"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="publicationStage" eType="#//TPubStage" + defaultValueLiteral="IS" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The publication stage of the namespace, by default IS."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="publicationStage"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="release" eType="#//TNSRelease" + defaultValueLiteral="1" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Release of the namespace version and revision, by default 1."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="release"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="#//TNSRevision" + defaultValueLiteral="A" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Revision of the namespace version, by default 'A'."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="revision"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1" + eType="#//TNSVersion" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version (year) of the namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="version"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="DocumentRoot"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value=""/> + <details key="kind" value="mixed"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="elementWildcard"/> + <details key="name" value=":mixed"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="xMLNSPrefixMap" upperBound="-1" + eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry" + transient="true" containment="true" resolveProxies="false"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="xmlns:prefix"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="xSISchemaLocation" upperBound="-1" + eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry" + transient="true" containment="true" resolveProxies="false"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="xsi:schemaLocation"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="applicableServiceNS" upperBound="-2" + eType="#//TApplicableServiceNS" volatile="true" transient="true" derived="true" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Root element of a file holding the allowed usages of ServiceNS-es."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ApplicableServiceNS"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="copyright" upperBound="-2" + eType="#//TCopyrightNotice" volatile="true" transient="true" derived="true" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The copyright notice attached to the XML"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Copyright"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="nS" upperBound="-2" eType="#//TNS" + volatile="true" transient="true" derived="true" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Root element of a namespace definition (NSD) file."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="NS"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="nSDoc" upperBound="-2" + eType="#//TNSDoc" volatile="true" transient="true" derived="true" containment="true" + resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Root element of a file holding the documentation strings of an NSD file (NSDOC)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="NSDoc"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="serviceNS" upperBound="-2" + eType="#//TServiceNS" volatile="true" transient="true" derived="true" containment="true" + resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Root element of a service namespace definition (SNSD) file."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ServiceNS"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ServiceType"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="Service_._type"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TACSIServicesKind" + unsettable="true"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TAbbreviation"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of an abbreviation."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tAbbreviation"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to a full description of this abbreviation."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="descID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TAbbreviationName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the abbreviation, as used in IEC 61850 data models."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TAbbreviationName" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of an abbreviation."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tAbbreviationName"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#normalizedString"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TAbbreviations"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of abbreviationss which are introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tAbbreviations"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="abbreviation" lowerBound="1" + upperBound="-1" eType="#//TAbbreviation" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of an abbreviation."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Abbreviation"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TAbstractLNClass" eSuperTypes="#//TAnyLNClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of an abstract logical node and its contents."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tAbstractLNClass"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TAbstractLNClassName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The name of the abstract logical node."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TAbstractLNClassName" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of an abstract logical node."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tAbstractLNClassName"/> + <details key="baseType" value="tIec61850Name"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="TACSIServicesKind"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Enumeration holding the names of all ACSI services, as defined in Part 7-2. Is conceptually identical to the 7-2 ServiceNameKind enumeration (except the Unknown)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tACSIServicesKind"/> + </eAnnotations> + <eLiterals name="Associate"/> + <eLiterals name="Abort" value="1"/> + <eLiterals name="Release" value="2"/> + <eLiterals name="GetServerDirectory" value="3"/> + <eLiterals name="GetLogicalDeviceDirectory" value="4"/> + <eLiterals name="GetAllDataValues" value="5"/> + <eLiterals name="GetDataValues" value="6"/> + <eLiterals name="SetDataValues" value="7"/> + <eLiterals name="GetDataDirectory" value="8"/> + <eLiterals name="GetDataDefinition" value="9"/> + <eLiterals name="GetDataSetValues" value="10"/> + <eLiterals name="SetDataSetValues" value="11"/> + <eLiterals name="CreateDataSet" value="12"/> + <eLiterals name="DeleteDataSet" value="13"/> + <eLiterals name="GetDataSetDirectory" value="14"/> + <eLiterals name="SelectActiveSG" value="15"/> + <eLiterals name="SelectEditSG" value="16"/> + <eLiterals name="SetEditSGValue" value="17"/> + <eLiterals name="ConfirmEditSGValues" value="18"/> + <eLiterals name="GetEditSGValue" value="19"/> + <eLiterals name="GetSGCBValues" value="20"/> + <eLiterals name="Report" value="21"/> + <eLiterals name="GetBRCBValues" value="22"/> + <eLiterals name="SetBRCBValues" value="23"/> + <eLiterals name="GetURCBValues" value="24"/> + <eLiterals name="SetURCBValues" value="25"/> + <eLiterals name="GetLCBValues" value="26"/> + <eLiterals name="SetLCBValues" value="27"/> + <eLiterals name="QueryLogByTime" value="28"/> + <eLiterals name="QueryLogAfter" value="29"/> + <eLiterals name="GetLogStatusValues" value="30"/> + <eLiterals name="SendGOOSEMessage" value="31"/> + <eLiterals name="GetGoCBValues" value="32"/> + <eLiterals name="SetGoCBValues" value="33"/> + <eLiterals name="GetGoReference" value="34"/> + <eLiterals name="GetGOOSEElementNumber" value="35"/> + <eLiterals name="SendMSVMessage" value="36"/> + <eLiterals name="GetMSVCBValues" value="37"/> + <eLiterals name="SetMSVCBValues" value="38"/> + <eLiterals name="SendUSVMessage" value="39"/> + <eLiterals name="GetUSVCBValues" value="40"/> + <eLiterals name="SetUSVCBValues" value="41"/> + <eLiterals name="Select" value="42"/> + <eLiterals name="SelectWithValue" value="43"/> + <eLiterals name="Cancel" value="44"/> + <eLiterals name="Operate" value="45"/> + <eLiterals name="CommandTermination" value="46"/> + <eLiterals name="TimeActivatedOperate" value="47"/> + <eLiterals name="GetFile" value="48"/> + <eLiterals name="SetFile" value="49"/> + <eLiterals name="DeleteFile" value="50"/> + <eLiterals name="GetFileAttributeValues" value="51"/> + <eLiterals name="TimeSynchronization" value="52"/> + <eLiterals name="InternalChange" value="53"/> + <eLiterals name="GetLogicalNodeDirectory" value="54"/> + <eLiterals name="GetMsvReference" value="55"/> + <eLiterals name="GetMSVElementNumber" value="56"/> + <eLiterals name="GetUsvReference" value="57"/> + <eLiterals name="GetUSVElementNumber" value="58"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TACSIServicesKindObject" instanceClassName="org.eclipse.emf.common.util.Enumerator"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tACSIServicesKind:Object"/> + <details key="baseType" value="tACSIServicesKind"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TAnyLNClass" abstract="true" eSuperTypes="#//TTitledClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a logical node (abstract or not) and its contents."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tAnyLNClass"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="dataObject" upperBound="-1" + eType="#//TDataObject" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Child Data Object of the logical node."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="DataObject"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="base" eType="#//TAbstractLNClassName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the abstract LN class this one extends (directly)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="base"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TApplicableServiceNS" eSuperTypes="#//TCopyrighted"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Describes the allowed usages of ServiceNS-es."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tApplicableServiceNS"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="serviceNsUsage" lowerBound="1" + upperBound="-1" eType="#//TServiceNsUsage" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Specification of a ServiceNS and all NS it can be used for."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ServiceNsUsage"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="date" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//DateTime"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Date of definition of the file."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="date"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//UnsignedInt" + unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version of the file."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="version"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TApplicableServices"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Applicable services for a given functional constraint."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tApplicableServices"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="service" upperBound="-1" + eType="#//ServiceType" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="If present, indicates that the service with given name applies to attributes with the specified FC (otherwise it may not be used)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Service"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="dataSetMemberOf" upperBound="-1" + eType="#//TDataSetMemberOf" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="An attribute of this FC can be member of a dataset for a control block type indicated by attribute cb if and only if this element is present."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="DataSetMemberOf"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TAttributeName" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of a Data Attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tAttributeName"/> + <details key="baseType" value="tIec61850Name"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TAttributeTypeKind" instanceClassName="org.eclipse.emf.common.util.Enumerator"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Type kind of a data attribute, which may be "undefined"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tAttributeTypeKind"/> + <details key="memberTypes" value="tDefinedAttributeTypeKind tUndefinedAttributeTypeKind"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TBasicType"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a basic type for a data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tBasicType"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to a full description of this object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="descID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TBasicTypeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the basic type (e.g., INT32), as used in SCL."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TBasicTypeName" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Type describing the name of a basic type of a data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tBasicTypeName"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#token"/> + <details key="minLength" value="1"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TBasicTypes"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of basic types for data attributes introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tBasicTypes"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="basicType" lowerBound="1" + upperBound="-1" eType="#//TBasicType" containment="true" resolveProxies="false"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="BasicType"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="TCBKind"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Enumeration of control block kinds."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tCBKind"/> + </eAnnotations> + <eLiterals name="RCB"/> + <eLiterals name="LCB" value="1"/> + <eLiterals name="GoCB" value="2"/> + <eLiterals name="SVCB" value="3"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TCBKindObject" instanceClassName="org.eclipse.emf.common.util.Enumerator"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tCBKind:Object"/> + <details key="baseType" value="tCBKind"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TCDC" eSuperTypes="#//TTitledClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a Common Data Class (CDC). It is always non-abstract."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tCDC"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="subDataObject" upperBound="-1" + eType="#//TSubDataObject" containment="true" resolveProxies="false"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="SubDataObject"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="dataAttribute" lowerBound="1" + upperBound="-1" eType="#//TDataAttribute" containment="true" resolveProxies="false"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="DataAttribute"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="serviceParameter" eType="#//TServiceParameter" + containment="true" resolveProxies="false"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ServiceParameter"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="enumParameterized" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether this CDC has at least one child data attribute of typeKind ENUMERATION but its exact enumeration type is left open."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="enumParameterized"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TCDCName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the common data class."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="statistics" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether DataObject of this CDC can be used for statistics."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="statistics"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="typeKindParameterized" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether this CDC has at least one child data attribute with typeKind "undefined".
Cannot be set to true at the same time as sibling attribute enumParameterized."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="typeKindParameterized"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="variant" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Token"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identification of the variant of the CDC (e.g., SPG_SP)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="variant"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TCDCName" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of a Common Data Class (CDC)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tCDCName"/> + <details key="baseType" value="tIec61850Name"/> + <details key="minLength" value="1"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TCDCs"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of CDCs introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tCDCs"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="cDC" upperBound="-1" eType="#//TCDC" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a common data class."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="CDC"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TChanges"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Namespace history, e.g., which version it is based on and which TISSUES it includes since then."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tChanges"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="changesID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to a textual description of changes (not TISSUE list). Shall only be used for private namespaces."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="changesID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="date" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Date"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The date since the Tissues have been logged."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="date"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="release" eType="#//TNSRelease" + defaultValueLiteral="1" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Release of the namespace this NSD file is based on, per default 1."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="release"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="#//TNSRevision" + defaultValueLiteral="A" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Revision of the namespace this NSD file is based on, per default 'A'."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="revision"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="tissues" eType="#//TissuesType"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Comma-separated list of TISSUE numbers that were implemented since the previous namespace version/revision/release."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="tissues"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1" + eType="#//TNSVersion" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version of the namespace this NSD file is based on."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="version"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TConstructedAttribute" eSuperTypes="#//TTitledClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a constructed (structured) data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tConstructedAttribute"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="subDataAttribute" lowerBound="1" + upperBound="-1" eType="#//TSubDataAttribute" containment="true" resolveProxies="false"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="SubDataAttribute"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the constructed (structured) data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TConstructedAttributes"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of Constructed Attributes introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tConstructedAttributes"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="constructedAttribute" upperBound="-1" + eType="#//TConstructedAttribute" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a constructed (structured) data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ConstructedAttribute"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TCopyrighted"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Add description for a copyrighted XML."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tCopyrighted"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="copyright" eType="#//TCopyrightNotice" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The copyright notice attached to the XML"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Copyright"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TCopyrightNotice"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Copyright notice definition."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tCopyrightNotice"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="notice" lowerBound="1" + eType="#//TNotice" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The textual copyright notice."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Notice"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="license" lowerBound="1" + eType="#//TLicense" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The license definition."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="License"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TDataAttribute" eSuperTypes="#//TDocumentedClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a Data Attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tDataAttribute"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="dchg" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="dchg"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//NormalizedString"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Default value for the data attribute. May only be defined for data attributes with typeKind="BASIC" or "ENUMERATED"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="defaultValue"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="dupd" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="dupd"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="fc" lowerBound="1" eType="#//TFCAbbreviation"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Functional constraint of the data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="fc"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="isArray" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether the element is an array. By default, not an array."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="isArray"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxIndexAttribute" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the Attribute holding the maximal index of the array.
Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="maxIndexAttribute"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Decimal"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Allowed maximal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="maxValue"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="minIndex" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//UnsignedInt" + defaultValueLiteral="0" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Lowest index of the array.
Is relevant information if and only if isArray=true.
By default 0."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="minIndex"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="minValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Decimal"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Allowed minimal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="minValue"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCond" eType="#//TPresenceConditionName" + defaultValueLiteral="M" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Presence condition of the element. By default 'M' (mandatory)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCond"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgs" eType="#//TPresenceConditionArgument"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition. Can be a sibling element or a group number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgs"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgsID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition: a documentation identifier referring to some free text."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgsID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="qchg" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="qchg"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sizeAttribute" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Sibling data attribute name holding the size of the array.
Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="sizeAttribute"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The type of the data attribute, e.g., the name of a basic type like INT32, the name of an enumeration of a constructed data attribute - depending on the sibling typeKind. If not provided, shall be defined by the "parent" element."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="type"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="typeKind" eType="#//TAttributeTypeKind" + defaultValueLiteral="BASIC" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The kind of the data attribute's type. By default, "BASIC"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="typeKind"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TDataObject" eSuperTypes="#//TDocumentedClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a Data Object of a logical node."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tDataObject"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="dsPresCond" eType="#//TPresenceConditionName" + defaultValueLiteral="M" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Presence condition of the element. By default 'M' (mandatory)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="dsPresCond"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="dsPresCondArgs" eType="#//TPresenceConditionArgument"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition. Can be a sibling element or a group number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="dsPresCondArgs"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="dsPresCondArgsID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition: a documentation identifier referring to some free text."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="dsPresCondArgsID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TDataObjectName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the data object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCond" eType="#//TPresenceConditionName" + defaultValueLiteral="M" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Presence condition of the element. By default 'M' (mandatory)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCond"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgs" eType="#//TPresenceConditionArgument"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition. Can be a sibling element or a group number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgs"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgsID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition: a documentation identifier referring to some free text."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgsID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="transient" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether this data object is transient. By default, it is not."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="transient"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1" eType="#//TCDCName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Type of the data object, i.e., the name of the CDC."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="type"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="underlyingType" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Type to be used for type-open CDCs, e.g., enumeration to be used for enumeration-based CDCs (e.g., ENS, ENC, ENG)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="underlyingType"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="underlyingTypeKind" eType="#//TDefinedAttributeTypeKind" + unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The typeKind to be used for all "undefined" attributes of the CDC of this DataObject."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="underlyingTypeKind"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TDataObjectName" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of a Data Object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tDataObjectName"/> + <details key="baseType" value="tIec61850Name"/> + <details key="maxLength" value="12"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TDataSetMemberOf"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Indication of a given object can be a data set member of a given control block."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tDataSetMemberOf"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="cb" lowerBound="1" eType="#//TCBKind" + unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Control block kind."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="cb"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="TDefinedAttributeTypeKind"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Type kind of a data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tDefinedAttributeTypeKind"/> + </eAnnotations> + <eLiterals name="BASIC"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The type of the data attribute is a basic one (e.g., BOOLEAN, INT32), including CODED ENUMs (e.g., Dbpos, Tcmd) and PACKED LISTs (Timestamp, Quality, OptFlds)."/> + </eAnnotations> + </eLiterals> + <eLiterals name="ENUMERATED" value="1"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The type of the data attribute is an enumeration."/> + </eAnnotations> + </eLiterals> + <eLiterals name="CONSTRUCTED" value="2"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The type of the data attribute is a constructed (composed) one."/> + </eAnnotations> + </eLiterals> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TDefinedAttributeTypeKindObject" + instanceClassName="org.eclipse.emf.common.util.Enumerator"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tDefinedAttributeTypeKind:Object"/> + <details key="baseType" value="tDefinedAttributeTypeKind"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TDoc"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="A key-value pair for documentation. Attribute "id" is the key (the documentation string identifier) and the value of the element is the documentation string itself."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tDoc"/> + <details key="kind" value="mixed"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="elementWildcard"/> + <details key="name" value=":mixed"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="group" unique="false" upperBound="-1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry" + volatile="true" transient="true" derived="true"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="group"/> + <details key="name" value="group:1"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="any" unique="false" upperBound="-1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry" + volatile="true" transient="true" derived="true"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="elementWildcard"/> + <details key="wildcards" value="##any"/> + <details key="name" value=":2"/> + <details key="processing" value="lax"/> + <details key="group" value="#group:1"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identifier of the documentation string."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="id"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TDocID" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identifier referring to a documentation string, available in a sibling file."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tDocID"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#normalizedString"/> + <details key="minLength" value="1"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TDocumentedClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="A class with description."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tDocumentedClass"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="deprecated" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether this object is classified as deprecated or not. By default not deprecated."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="deprecated"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to a full description of this object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="descID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="informative" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether this object is classified as informative or not. By default not informative."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="informative"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TEmptyString" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The empty string."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tEmptyString"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#normalizedString"/> + <details key="maxLength" value="0"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TEnumeration" eSuperTypes="#//TTitledClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of an enumeration."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tEnumeration"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="literal" lowerBound="1" + upperBound="-1" eType="#//TLiteral" containment="true" resolveProxies="false"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Literal"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="inheritedFrom" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the enumeration which is extended by the current enumeration."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="inheritedFrom"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the enumeration."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TEnumerations"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of Enumerations introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tEnumerations"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="enumeration" upperBound="-1" + eType="#//TEnumeration" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of an enumeration."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Enumeration"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TFCAbbreviation" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Functional Constraint abbreviation."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tFCAbbreviation"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#token"/> + <details key="minLength" value="1"/> + <details key="pattern" value="[\p{IsBasicLatin}]+"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TFunctionalConstraint"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a Functional Constraint."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tFunctionalConstraint"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="applicableServices" eType="#//TApplicableServices" + containment="true" resolveProxies="false"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ApplicableServices"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="abbreviation" lowerBound="1" + eType="#//TFCAbbreviation"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Abbreviated name of the FC (e.g., ST, MX, etc.)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="abbreviation"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to a full description of this object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="descID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="titleID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to the title (alias) of this object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="titleID"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TFunctionalConstraints"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of Functional Constraints introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tFunctionalConstraints"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="functionalConstraint" lowerBound="1" + upperBound="-1" eType="#//TFunctionalConstraint" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a Functional Constraint."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="FunctionalConstraint"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TIec61850Name" instanceClassName="java.lang.String"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tIec61850Name"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#Name"/> + <details key="minLength" value="1"/> + <details key="pattern" value="[\p{IsBasicLatin}\p{IsLatin-1Supplement}]+"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TIec61850NameString" instanceClassName="java.lang.String"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tIec61850NameString"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#normalizedString"/> + <details key="pattern" value="[\p{IsBasicLatin}\p{IsLatin-1Supplement}]+"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TissuesType" instanceClassName="java.lang.String"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tissues_._type"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#normalizedString"/> + <details key="minLength" value="1"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TLicense"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Describe the license definition."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tLicense"/> + <details key="kind" value="mixed"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="elementWildcard"/> + <details key="name" value=":mixed"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//TLicenseKind" + unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="kind of license"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="kind"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="uri" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//NormalizedString"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="path to the license file"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="uri"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="TLicenseKind"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Kind of license"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tLicenseKind"/> + </eAnnotations> + <eLiterals name="Standard"/> + <eLiterals name="Private" value="1"/> + <eLiterals name="None" value="2"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TLicenseKindObject" instanceClassName="org.eclipse.emf.common.util.Enumerator"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tLicenseKind:Object"/> + <details key="baseType" value="tLicenseKind"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TLiteral" eSuperTypes="#//TDocumentedClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a literal of an enumeration."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tLiteral"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="literalVal" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Int" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Enumeration literal integer value."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="literalVal"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TLiteralName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the enumeration's literal."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TLiteralName" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of an enumeration literal. Maybe the empty string."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tLiteralName"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#normalizedString"/> + <details key="maxLength" value="127"/> + <details key="pattern" value="[\p{IsBasicLatin}\p{IsLatin-1Supplement}]*"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TLNClass" eSuperTypes="#//TAnyLNClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a concrete (i.e., not abstract) logical node and its contents. At most one of "base" and "isExtension" shall be defined."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tLNClass"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="canHaveLOG" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether a LOG can be allocated to this logical node. By default, false."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="canHaveLOG"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="isExtension" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether this logical node is an extension of another non-abstract logical node (with the same LN class name) defined in a namespace this one imports."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="isExtension"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TLNClassName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The logical node class name."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TLNClasses"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of LNClasses introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tLNClasses"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="abstractLNClass" upperBound="-1" + eType="#//TAbstractLNClass" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of an abstract logical node."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="AbstractLNClass"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="lNClass" upperBound="-1" + eType="#//TLNClass" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a (non-abstract) logical node."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="LNClass"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TLNClassName" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of a (non-abstract) logical node class."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tLNClassName"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#Name"/> + <details key="pattern" value="LLN0 [A-Z]{4}"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TNotice"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Textual notice"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tNotice"/> + <details key="kind" value="mixed"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="elementWildcard"/> + <details key="name" value=":mixed"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TNS" eSuperTypes="#//TCopyrighted"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tNS"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="changes" eType="#//TChanges" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The version/revision/release this namespace is based on, including the TISSUEs implemented in this release."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Changes"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" eType="#//DependsOnType" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The namespace identification this namespace depends on (and whose definitions are imported into this one)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="DependsOn"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="basicTypes" eType="#//TBasicTypes" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of basic types added by this namespace. Is cumulative to those defined in namespaces this one DependsOn (may not redefine "included" ones). Note: shall only be used in practice by the 7-2 namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="BasicTypes"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="functionalConstraints" + eType="#//TFunctionalConstraints" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of Functional Constraints added by this namespace. Is cumulative to those defined in namespaces this one DependsOn (may not redefine "included" ones)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="FunctionalConstraints"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="presenceConditions" eType="#//TPresenceConditions" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of presence conditions added by this namespace. Is cumulative to those defined in namespaces this one DependsOn (may not redefine "included" ones.)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="PresenceConditions"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="abbreviations" eType="#//TAbbreviations" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of abbreviations added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Abbreviations"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="enumerations" eType="#//TEnumerations" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of Enumerations added by this namespace. Is cumulative to those defined in namespaces this one DependsOn (may not redefine "included" ones)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Enumerations"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="constructedAttributes" + eType="#//TConstructedAttributes" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of Constructed Attributes added by this namespace. Constructed Attributes are not allowed to be extended by another namespace. Note: shall only be used in practice by the 7-3"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ConstructedAttributes"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="cDCs" eType="#//TCDCs" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of CDCs added by this namespace. CDCs are not allowed to be extended by another namespace. Note: shall only be used in practice by the 7-3"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="CDCs"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="lNClasses" eType="#//TLNClasses" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of LNClasses added by this namespace. Is cumulative to those defined in namespaces this one DependsOn (may not redefine "included" ones)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="LNClasses"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to a full description of this NS."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="descID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="#//TNSIdentifier"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="id"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="publicationStage" eType="#//TPubStage" + defaultValueLiteral="IS" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The publication stage of the namespace, by default IS."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="publicationStage"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="release" eType="#//TNSRelease" + defaultValueLiteral="1" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Release of the namespace version and revision, by default 1."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="release"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="#//TNSRevision" + defaultValueLiteral="A" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Revision of the namespace version, by default 'A'."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="revision"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDate" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//DateTime"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="UTC Date and time of the UML version from which this namespace definition file was generated. Shall be provided if umlVersion is present. Format: YYYY-MM-DDThh:mm:ssZ, where: YYYY indicates the year, MM indicates the month, DD indicates the day, T indicates the start of the required time section, hh indicates the hour, mm indicates the minute, ss indicates the second, and Z the UTC time stamp indication.
"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="umlDate"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlVersion" eType="#//TUMLVersion"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version of UML from which this namespace definition file was generated from."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="umlVersion"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1" + eType="#//TNSVersion" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version (year) of the namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="version"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TNSDoc" eSuperTypes="#//TCopyrighted"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="A non-empty list of tDoc elements."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tNSDoc"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="doc" lowerBound="1" upperBound="-1" + eType="#//TDoc" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of documentation identifiers and corresponding documentation strings in the corresponding language."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Doc"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="#//TNSIdentifier"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="id"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="lang" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Language"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Language of the documentation strings in the file."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="lang"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="publicationStage" eType="#//TPubStage" + defaultValueLiteral="IS" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The publication stage of the namespace, by default IS."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="publicationStage"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="release" eType="#//TNSRelease" + defaultValueLiteral="1" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Release of the namespace version and revision, by default 1."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="release"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="#//TNSRevision" + defaultValueLiteral="A" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Revision of the namespace version, by default 'A'."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="revision"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDate" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//DateTime"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="UTC Date and time of the UML version from which this namespace definition file was generated. Shall be provided if umlVersion is present. Format: YYYY-MM-DDThh:mm:ssZ, where: YYYY indicates the year, MM indicates the month, DD indicates the day, T indicates the start of the required time section, hh indicates the hour, mm indicates the minute, ss indicates the second, and Z the UTC time stamp indication.
"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="umlDate"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlVersion" eType="#//TUMLVersion"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version of UML from which this namespace definition file was generated from."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="umlVersion"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1" + eType="#//TNSVersion" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version (year) of the namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="version"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TNSIdentifier" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identifier of a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tNSIdentifier"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#normalizedString"/> + <details key="pattern" value="\p{IsBasicLatin}+"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TNSRelease" instanceClassName="short"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Release of a namespace (number between 1 and 255), distinguishing between releases of a same namespace version and revision."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tNSRelease"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#unsignedByte"/> + <details key="minExclusive" value="0"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TNSReleaseObject" instanceClassName="java.lang.Short"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tNSRelease:Object"/> + <details key="baseType" value="tNSRelease"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TNSRevision" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Revision of a namespace (a basic latin upper-case letter), distinguishing between revisions of a same namespace version."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tNSRevision"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#token"/> + <details key="pattern" value="[A-Z]"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TNSVersion" instanceClassName="int"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version of a namespace (a year between 2002 and 2099)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tNSVersion"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#unsignedShort"/> + <details key="minInclusive" value="2002"/> + <details key="maxInclusive" value="2099"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TNSVersionObject" instanceClassName="java.lang.Integer"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tNSVersion:Object"/> + <details key="baseType" value="tNSVersion"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TPresenceCondition"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a presence condition."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tPresenceCondition"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="argument" eType="#//TPresenceConditionArgument"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The presence condition argument, if any."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="argument"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to a full description of this object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="descID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TPresenceConditionName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the presence condition, as used in IEC 61850 data models."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="titleID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to the title (alias) of this object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="titleID"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TPresenceConditionArgument" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Argument to (some) presence conditions."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tPresenceConditionArgument"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#normalizedString"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TPresenceConditionName" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of a presence condition of a child."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tPresenceConditionName"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#normalizedString"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TPresenceConditions"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of presence conditions which are introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tPresenceConditions"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="presenceCondition" lowerBound="1" + upperBound="-1" eType="#//TPresenceCondition" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a presence condition."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="PresenceCondition"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="TPubStage"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Publication stage of the namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tPubStage"/> + </eAnnotations> + <eLiterals name="WD"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Working Draft"/> + </eAnnotations> + </eLiterals> + <eLiterals name="CD" value="1"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Committee Draft"/> + </eAnnotations> + </eLiterals> + <eLiterals name="CDV" value="2"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Committee Draft for Vote"/> + </eAnnotations> + </eLiterals> + <eLiterals name="DTS" value="3"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Draft Technical Specification"/> + </eAnnotations> + </eLiterals> + <eLiterals name="DTR" value="4"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Draft Technical Report"/> + </eAnnotations> + </eLiterals> + <eLiterals name="FDIS" value="5"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Final Draft International Standard"/> + </eAnnotations> + </eLiterals> + <eLiterals name="TS" value="6"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Technical Specification"/> + </eAnnotations> + </eLiterals> + <eLiterals name="TR" value="7"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Technical Report"/> + </eAnnotations> + </eLiterals> + <eLiterals name="IS" value="8"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="International Standard"/> + </eAnnotations> + </eLiterals> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TPubStageObject" instanceClassName="org.eclipse.emf.common.util.Enumerator"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tPubStage:Object"/> + <details key="baseType" value="tPubStage"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TServiceCDC"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a CDC extension for control services."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tServiceCDC"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="serviceDataAttribute" lowerBound="1" + upperBound="-1" eType="#//TServiceDataAttribute" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Data attribute to be used as service parameter."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ServiceDataAttribute"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="cdc" lowerBound="1" eType="#//TCDCName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the common data class the service extension is for."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="cdc"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="variant" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Token"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identification of the variant of the CDC (e.g., SPG_SP)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="variant"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TServiceCDCs"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of Service CDCs introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tServiceCDCs"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="serviceCDC" upperBound="-1" + eType="#//TServiceCDC" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="CDC extensions for control in this service namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ServiceCDC"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TServiceConstructedAttribute" eSuperTypes="#//TConstructedAttribute"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a constructed attribute type for services."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tServiceConstructedAttribute"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="typeKindParameterized" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether this ServiceConstructedAttribute has at least one child data attribute with typeKind "undefined"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="typeKindParameterized"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TServiceConstructedAttributes"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of Service Constructed Attributes introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tServiceConstructedAttributes"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="serviceConstructedAttribute" + upperBound="-1" eType="#//TServiceConstructedAttribute" containment="true" + resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Realization of Part 7-2 abstract types or constructed attributes needed for control services. Note: in SCL instance files, the ProtNs element shall be specified for these."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ServiceConstructedAttribute"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TServiceDataAttribute" eSuperTypes="#//TDocumentedClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a service parameter as Data Attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tServiceDataAttribute"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="fc" lowerBound="1" eType="#//TFCAbbreviation"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Functional constraint of the data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="fc"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCond" eType="#//TPresenceConditionName" + defaultValueLiteral="M" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Presence condition of the element. By default 'M' (mandatory)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCond"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgs" eType="#//TPresenceConditionArgument"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition. Can be a sibling element or a group number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgs"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgsID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition: a documentation identifier referring to some free text."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgsID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The type of the data attribute, e.g., the name of a basic type like INT32, the name of an enumeration of a constructed data attribute - depending on the sibling typeKind. If not provided, shall be defined by the "parent" element."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="type"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="typeKind" eType="#//TAttributeTypeKind" + defaultValueLiteral="BASIC" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The kind of the data attribute's type. By default, "BASIC"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="typeKind"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="underlyingType" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Type to be used for type-open CDCs, e.g., enumeration to be used for enumeration-based CDCs (e.g., ENS, ENC, ENG)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="underlyingType"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="underlyingTypeKind" eType="#//TDefinedAttributeTypeKind" + unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The typeKind to be used for all "undefined" attributes of the CDC of this DataObject."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="underlyingTypeKind"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TServiceNS" eSuperTypes="#//TCopyrighted"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a service namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tServiceNS"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="changes" eType="#//TChanges" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The version/revision/release this namespace is based on, including the TISSUEs implemented in this release."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Changes"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="functionalConstraints" + eType="#//TFunctionalConstraints" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of Functional Constraints added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="FunctionalConstraints"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="presenceConditions" eType="#//TPresenceConditions" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of presence conditions added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="PresenceConditions"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="abbreviations" eType="#//TAbbreviations" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of abbreviations added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="Abbreviations"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="serviceTypeRealizations" + eType="#//TServiceTypeRealizations" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of service type realization added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ServiceTypeRealizations"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="serviceConstructedAttributes" + eType="#//TServiceConstructedAttributes" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of service constructed attributes added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ServiceConstructedAttributes"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="serviceCDCs" eType="#//TServiceCDCs" + containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of service CDCs added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ServiceCDCs"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to a full description of this NS."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="descID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="#//TNSIdentifier"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="id"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="publicationStage" eType="#//TPubStage" + defaultValueLiteral="IS" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The publication stage of the namespace, by default IS."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="publicationStage"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="release" eType="#//TNSRelease" + defaultValueLiteral="1" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Release of the namespace version and revision, by default 1."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="release"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="#//TNSRevision" + defaultValueLiteral="A" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Revision of the namespace version, by default 'A'."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="revision"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlDate" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//DateTime"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="UTC Date and time of the UML version from which this namespace definition file was generated. Shall be provided if umlVersion is present. Format: YYYY-MM-DDThh:mm:ssZ, where: YYYY indicates the year, MM indicates the month, DD indicates the day, T indicates the start of the required time section, hh indicates the hour, mm indicates the minute, ss indicates the second, and Z the UTC time stamp indication.
"/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="umlDate"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="umlVersion" eType="#//TUMLVersion"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version of UML from which this namespace definition file was generated from."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="umlVersion"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1" + eType="#//TNSVersion" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version (year) of the namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="version"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TServiceNsUsage"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Describes the list of (domain) NS for which a ServiceNS is applicable."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tServiceNsUsage"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="appliesTo" lowerBound="1" + upperBound="-1" eType="#//AppliesToType" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="References to namespaces this ServiceNS can be used with."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="AppliesTo"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="#//TNSIdentifier"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="id"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="publicationStage" eType="#//TPubStage" + defaultValueLiteral="IS" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The publication stage of the namespace, by default IS."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="publicationStage"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="release" eType="#//TNSRelease" + defaultValueLiteral="1" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Release of the namespace version and revision, by default 1."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="release"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="#//TNSRevision" + defaultValueLiteral="A" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Revision of the namespace version, by default 'A'."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="revision"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1" + eType="#//TNSVersion" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version (year) of the namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="version"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TServiceParameter" eSuperTypes="#//TDocumentedClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of the service parameter for control services."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tServiceParameter"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//NormalizedString"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Default value for the data attribute. May only be defined for data attributes with typeKind="BASIC" or "ENUMERATED"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="defaultValue"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Decimal"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Allowed maximal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="maxValue"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="minValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Decimal"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Allowed minimal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="minValue"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The type of the data attribute, e.g., the name of a basic type like INT32, the name of an enumeration of a constructed data attribute - depending on the sibling typeKind. If not provided, shall be defined by the "parent" element."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="type"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="typeKind" eType="#//TAttributeTypeKind" + defaultValueLiteral="BASIC" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The kind of the data attribute's type. By default, "BASIC"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="typeKind"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TServiceTypeRealization"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of the realization of an abstract type as constructed attribute in the service namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tServiceTypeRealization"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="fc" lowerBound="1" eType="#//TFCAbbreviation"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Functional constraint of the data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="fc"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCond" eType="#//TPresenceConditionName" + defaultValueLiteral="M" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Presence condition of the element. By default 'M' (mandatory)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCond"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgs" eType="#//TPresenceConditionArgument"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition. Can be a sibling element or a group number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgs"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgsID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition: a documentation identifier referring to some free text."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgsID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The type of the data attribute, e.g., the name of a basic type like INT32, the name of an enumeration of a constructed data attribute - depending on the sibling typeKind. If not provided, shall be defined by the "parent" element."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="type"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="typeKind" eType="#//TAttributeTypeKind" + defaultValueLiteral="BASIC" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The kind of the data attribute's type. By default, "BASIC"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="typeKind"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TServiceTypeRealizations"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="List of Service Type Realizations introduced by a namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tServiceTypeRealizations"/> + <details key="kind" value="elementOnly"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EReference" name="serviceTypeRealization" + upperBound="-1" eType="#//TConstructedAttribute" containment="true" resolveProxies="false"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Realization of an abstract type as constructed attribute in the service namespace."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="element"/> + <details key="name" value="ServiceTypeRealization"/> + <details key="namespace" value="##targetNamespace"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TSubDataAttribute" eSuperTypes="#//TDocumentedClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a Sub Data Attribute (within a constructed data attribute)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tSubDataAttribute"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//NormalizedString"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Default value for the data attribute. May only be defined for data attributes with typeKind="BASIC" or "ENUMERATED"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="defaultValue"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="isArray" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether the element is an array. By default, not an array."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="isArray"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxIndexAttribute" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the Attribute holding the maximal index of the array.
Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="maxIndexAttribute"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Decimal"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Allowed maximal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="maxValue"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="minIndex" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//UnsignedInt" + defaultValueLiteral="0" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Lowest index of the array.
Is relevant information if and only if isArray=true.
By default 0."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="minIndex"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="minValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Decimal"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Allowed minimal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="minValue"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the data attribute."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCond" eType="#//TPresenceConditionName" + defaultValueLiteral="M" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Presence condition of the element. By default 'M' (mandatory)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCond"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgs" eType="#//TPresenceConditionArgument"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition. Can be a sibling element or a group number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgs"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgsID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition: a documentation identifier referring to some free text."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgsID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sizeAttribute" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Sibling data attribute name holding the size of the array.
Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="sizeAttribute"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The type of the data attribute, e.g., the name of a basic type like INT32, the name of an enumeration of a constructed data attribute - depending on the sibling typeKind. If not provided, shall be defined by the "parent" element."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="type"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="typeKind" eType="#//TAttributeTypeKind" + defaultValueLiteral="BASIC" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The kind of the data attribute's type. By default, "BASIC"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="typeKind"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TSubDataObject" eSuperTypes="#//TDocumentedClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Definition of a Sub-Data Object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tSubDataObject"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="isArray" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" + defaultValueLiteral="false" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Flag indicating whether the element is an array. By default, not an array."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="isArray"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxIndexAttribute" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the Attribute holding the maximal index of the array.
Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="maxIndexAttribute"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="minIndex" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//UnsignedInt" + defaultValueLiteral="0" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Lowest index of the array.
Is relevant information if and only if isArray=true.
By default 0."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="minIndex"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//TSubDataObjectName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of the Sub-Data Object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="name"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCond" eType="#//TPresenceConditionName" + defaultValueLiteral="M" unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Presence condition of the element. By default 'M' (mandatory)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCond"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgs" eType="#//TPresenceConditionArgument"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition. Can be a sibling element or a group number."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgs"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="presCondArgsID" eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Optional argument to the presence condition: a documentation identifier referring to some free text."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="presCondArgsID"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sizeAttribute" eType="#//TAttributeName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Sibling data attribute name holding the size of the array.
Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="sizeAttribute"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1" eType="#//TCDCName"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Type of the SubDataObject, i.e., its CDC."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="type"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="underlyingType" eType="#//TIec61850Name"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Type to be used for type-open CDCs, e.g., enumeration to be used for enumeration-based CDCs (e.g., ENS, ENC, ENG)."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="underlyingType"/> + </eAnnotations> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="underlyingTypeKind" eType="#//TDefinedAttributeTypeKind" + unsettable="true"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="The typeKind to be used for all "undefined" attributes of the CDC of this DataObject."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="underlyingTypeKind"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TSubDataObjectName" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Name of a Sub-Data Object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tSubDataObjectName"/> + <details key="baseType" value="tIec61850Name"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="TTitledClass" eSuperTypes="#//TDocumentedClass"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="A tDocumentedClass with title."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tTitledClass"/> + <details key="kind" value="empty"/> + </eAnnotations> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="titleID" lowerBound="1" + eType="#//TDocID"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Documentation identifier referring to the title (alias) of this object."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="kind" value="attribute"/> + <details key="name" value="titleID"/> + </eAnnotations> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TUMLVersion" instanceClassName="java.lang.String"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Version of the UML model used to generate this NSD."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tUMLVersion"/> + <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#Name"/> + <details key="minLength" value="1"/> + </eAnnotations> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="TUndefinedAttributeTypeKind"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Type kind for a data attribute which has its type "undefined"."/> + </eAnnotations> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tUndefinedAttributeTypeKind"/> + </eAnnotations> + <eLiterals name="undefined"> + <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> + <details key="documentation" value="Indicates that the type is not defined, and shall be done so where it is used."/> + </eAnnotations> + </eLiterals> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="TUndefinedAttributeTypeKindObject" + instanceClassName="org.eclipse.emf.common.util.Enumerator"> + <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> + <details key="name" value="tUndefinedAttributeTypeKind:Object"/> + <details key="baseType" value="tUndefinedAttributeTypeKind"/> + </eAnnotations> + </eClassifiers> +</ecore:EPackage> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.genmodel b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.genmodel new file mode 100644 index 0000000000000000000000000000000000000000..8313f1615342c3db2de679533e34f9b9f81d48ac --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.genmodel @@ -0,0 +1,452 @@ +<?xml version="1.0" encoding="UTF-8"?> +<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" + xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2019 CentraleSupélec & EDF.
 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

 This file is part of the RiseClipse tool
 
 Contributors:
 Computer Science Department, CentraleSupélec
 EDF R&D
 Contacts:
 dominique.marcadet@centralesupelec.fr
 aurelie.dehouck-neveu@edf.fr
 Web site:
 http://wdi.supelec.fr/software/RiseClipse/
" + modelDirectory="/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src" modelPluginID="fr.centralesupelec.edf.riseclipse.iec61850.nsd" + modelName="NSD" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" + codeFormatting="true" importerID="org.eclipse.xsd.ecore.importer" complianceLevel="8.0" + copyrightFields="false" operationReflection="true" importOrganizing="true" cleanup="true"> + <foreignModel>file:/Users/marcadet/Documents/Contrats/EDF%20CIM/2018-19/NSD/IEC_61850-7-7/NSD.xsd</foreignModel> + <genPackages prefix="Nsd" basePackage="fr.centralesupelec.edf.riseclipse.iec61850" + resource="XML" disposableProviderFactory="true" fileExtensions="nsd,snsd,nsdoc" + ecorePackage="nsd.ecore#/" documentation=""> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="nsd.ecore#//TACSIServicesKind"> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/Associate"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/Abort"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/Release"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetServerDirectory"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetLogicalDeviceDirectory"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetAllDataValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetDataValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SetDataValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetDataDirectory"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetDataDefinition"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetDataSetValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SetDataSetValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/CreateDataSet"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/DeleteDataSet"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetDataSetDirectory"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SelectActiveSG"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SelectEditSG"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SetEditSGValue"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/ConfirmEditSGValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetEditSGValue"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetSGCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/Report"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetBRCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SetBRCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetURCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SetURCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetLCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SetLCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/QueryLogByTime"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/QueryLogAfter"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetLogStatusValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SendGOOSEMessage"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetGoCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SetGoCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetGoReference"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetGOOSEElementNumber"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SendMSVMessage"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetMSVCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SetMSVCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SendUSVMessage"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetUSVCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SetUSVCBValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/Select"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SelectWithValue"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/Cancel"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/Operate"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/CommandTermination"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/TimeActivatedOperate"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetFile"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/SetFile"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/DeleteFile"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetFileAttributeValues"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/TimeSynchronization"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/InternalChange"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetLogicalNodeDirectory"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetMsvReference"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetMSVElementNumber"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetUsvReference"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TACSIServicesKind/GetUSVElementNumber"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="nsd.ecore#//TCBKind"> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TCBKind/RCB"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TCBKind/LCB"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TCBKind/GoCB"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TCBKind/SVCB"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="nsd.ecore#//TDefinedAttributeTypeKind"> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TDefinedAttributeTypeKind/BASIC"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TDefinedAttributeTypeKind/ENUMERATED"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TDefinedAttributeTypeKind/CONSTRUCTED"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="nsd.ecore#//TLicenseKind"> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TLicenseKind/Standard"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TLicenseKind/Private"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TLicenseKind/None"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="nsd.ecore#//TPubStage"> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TPubStage/WD"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TPubStage/CD"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TPubStage/CDV"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TPubStage/DTS"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TPubStage/DTR"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TPubStage/FDIS"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TPubStage/TS"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TPubStage/TR"/> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TPubStage/IS"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="nsd.ecore#//TUndefinedAttributeTypeKind"> + <genEnumLiterals ecoreEnumLiteral="nsd.ecore#//TUndefinedAttributeTypeKind/undefined"/> + </genEnums> + <genDataTypes ecoreDataType="nsd.ecore#//TAbbreviationName"/> + <genDataTypes ecoreDataType="nsd.ecore#//TAbstractLNClassName"/> + <genDataTypes ecoreDataType="nsd.ecore#//TACSIServicesKindObject"/> + <genDataTypes ecoreDataType="nsd.ecore#//TAttributeName"/> + <genDataTypes ecoreDataType="nsd.ecore#//TAttributeTypeKind"/> + <genDataTypes ecoreDataType="nsd.ecore#//TBasicTypeName"/> + <genDataTypes ecoreDataType="nsd.ecore#//TCBKindObject"/> + <genDataTypes ecoreDataType="nsd.ecore#//TCDCName"/> + <genDataTypes ecoreDataType="nsd.ecore#//TDataObjectName"/> + <genDataTypes ecoreDataType="nsd.ecore#//TDefinedAttributeTypeKindObject"/> + <genDataTypes ecoreDataType="nsd.ecore#//TDocID"/> + <genDataTypes ecoreDataType="nsd.ecore#//TEmptyString"/> + <genDataTypes ecoreDataType="nsd.ecore#//TFCAbbreviation"/> + <genDataTypes ecoreDataType="nsd.ecore#//TIec61850Name"/> + <genDataTypes ecoreDataType="nsd.ecore#//TIec61850NameString"/> + <genDataTypes ecoreDataType="nsd.ecore#//TissuesType"/> + <genDataTypes ecoreDataType="nsd.ecore#//TLicenseKindObject"/> + <genDataTypes ecoreDataType="nsd.ecore#//TLiteralName"/> + <genDataTypes ecoreDataType="nsd.ecore#//TLNClassName"/> + <genDataTypes ecoreDataType="nsd.ecore#//TNSIdentifier"/> + <genDataTypes ecoreDataType="nsd.ecore#//TNSRelease"/> + <genDataTypes ecoreDataType="nsd.ecore#//TNSReleaseObject"/> + <genDataTypes ecoreDataType="nsd.ecore#//TNSRevision"/> + <genDataTypes ecoreDataType="nsd.ecore#//TNSVersion"/> + <genDataTypes ecoreDataType="nsd.ecore#//TNSVersionObject"/> + <genDataTypes ecoreDataType="nsd.ecore#//TPresenceConditionArgument"/> + <genDataTypes ecoreDataType="nsd.ecore#//TPresenceConditionName"/> + <genDataTypes ecoreDataType="nsd.ecore#//TPubStageObject"/> + <genDataTypes ecoreDataType="nsd.ecore#//TSubDataObjectName"/> + <genDataTypes ecoreDataType="nsd.ecore#//TUMLVersion"/> + <genDataTypes ecoreDataType="nsd.ecore#//TUndefinedAttributeTypeKindObject"/> + <genClasses ecoreClass="nsd.ecore#//AppliesToType"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AppliesToType/id"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AppliesToType/publicationStage"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AppliesToType/release"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AppliesToType/revision"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AppliesToType/version"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//DependsOnType"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DependsOnType/id"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DependsOnType/publicationStage"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DependsOnType/release"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DependsOnType/revision"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DependsOnType/version"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//DocumentRoot"> + <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DocumentRoot/mixed"/> + <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//DocumentRoot/xMLNSPrefixMap"/> + <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//DocumentRoot/xSISchemaLocation"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//DocumentRoot/applicableServiceNS"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//DocumentRoot/copyright"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//DocumentRoot/nS"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//DocumentRoot/nSDoc"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//DocumentRoot/serviceNS"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//ServiceType"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//ServiceType/name"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TAbbreviation"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TAbbreviation/descID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TAbbreviation/name"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TAbbreviations"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TAbbreviations/abbreviation"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TAbstractLNClass"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TAbstractLNClass/name"/> + </genClasses> + <genClasses image="false" ecoreClass="nsd.ecore#//TAnyLNClass"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TAnyLNClass/dataObject"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TAnyLNClass/base"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TApplicableServiceNS"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TApplicableServiceNS/serviceNsUsage"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TApplicableServiceNS/date"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TApplicableServiceNS/version"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TApplicableServices"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TApplicableServices/service"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TApplicableServices/dataSetMemberOf"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TBasicType"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TBasicType/descID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TBasicType/name"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TBasicTypes"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TBasicTypes/basicType"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TCDC"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TCDC/subDataObject"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TCDC/dataAttribute"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TCDC/serviceParameter"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TCDC/enumParameterized"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TCDC/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TCDC/statistics"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TCDC/typeKindParameterized"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TCDC/variant"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TCDCs"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TCDCs/cDC"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TChanges"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TChanges/changesID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TChanges/date"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TChanges/release"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TChanges/revision"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TChanges/tissues"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TChanges/version"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TConstructedAttribute"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TConstructedAttribute/subDataAttribute"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TConstructedAttribute/name"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TConstructedAttributes"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TConstructedAttributes/constructedAttribute"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TCopyrighted"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TCopyrighted/copyright"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TCopyrightNotice"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TCopyrightNotice/notice"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TCopyrightNotice/license"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TDataAttribute"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/dchg"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/defaultValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/dupd"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/fc"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/isArray"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/maxIndexAttribute"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/maxValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/minIndex"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/minValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/presCond"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/presCondArgs"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/presCondArgsID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/qchg"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/sizeAttribute"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataAttribute/typeKind"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TDataObject"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/dsPresCond"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/dsPresCondArgs"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/dsPresCondArgsID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/presCond"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/presCondArgs"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/presCondArgsID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/transient"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/underlyingType"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataObject/underlyingTypeKind"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TDataSetMemberOf"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDataSetMemberOf/cb"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TDoc"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute nsd.ecore#//TDoc/mixed"/> + <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDoc/group"/> + <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDoc/any"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDoc/id"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TDocumentedClass"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDocumentedClass/deprecated"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDocumentedClass/descID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TDocumentedClass/informative"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TEnumeration"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TEnumeration/literal"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TEnumeration/inheritedFrom"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TEnumeration/name"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TEnumerations"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TEnumerations/enumeration"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TFunctionalConstraint"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TFunctionalConstraint/applicableServices"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TFunctionalConstraint/abbreviation"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TFunctionalConstraint/descID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TFunctionalConstraint/titleID"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TFunctionalConstraints"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TFunctionalConstraints/functionalConstraint"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TLicense"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute nsd.ecore#//TLicense/mixed"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TLicense/kind"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TLicense/uri"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TLiteral"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TLiteral/literalVal"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TLiteral/name"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TLNClass"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TLNClass/canHaveLOG"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TLNClass/isExtension"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TLNClass/name"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TLNClasses"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TLNClasses/abstractLNClass"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TLNClasses/lNClass"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TNotice"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute nsd.ecore#//TNotice/mixed"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TNS"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNS/changes"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNS/dependsOn"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNS/basicTypes"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNS/functionalConstraints"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNS/presenceConditions"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNS/abbreviations"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNS/enumerations"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNS/constructedAttributes"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNS/cDCs"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNS/lNClasses"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNS/descID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNS/id"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNS/publicationStage"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNS/release"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNS/revision"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNS/umlDate"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNS/umlVersion"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNS/version"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TNSDoc"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TNSDoc/doc"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNSDoc/id"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNSDoc/lang"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNSDoc/publicationStage"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNSDoc/release"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNSDoc/revision"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNSDoc/umlDate"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNSDoc/umlVersion"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TNSDoc/version"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TPresenceCondition"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TPresenceCondition/argument"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TPresenceCondition/descID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TPresenceCondition/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TPresenceCondition/titleID"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TPresenceConditions"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TPresenceConditions/presenceCondition"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TServiceCDC"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceCDC/serviceDataAttribute"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceCDC/cdc"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceCDC/variant"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TServiceCDCs"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceCDCs/serviceCDC"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TServiceConstructedAttribute"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceConstructedAttribute/typeKindParameterized"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TServiceConstructedAttributes"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceConstructedAttributes/serviceConstructedAttribute"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TServiceDataAttribute"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceDataAttribute/fc"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceDataAttribute/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceDataAttribute/presCond"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceDataAttribute/presCondArgs"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceDataAttribute/presCondArgsID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceDataAttribute/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceDataAttribute/typeKind"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceDataAttribute/underlyingType"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceDataAttribute/underlyingTypeKind"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TServiceNS"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceNS/changes"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceNS/functionalConstraints"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceNS/presenceConditions"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceNS/abbreviations"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceNS/serviceTypeRealizations"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceNS/serviceConstructedAttributes"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceNS/serviceCDCs"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNS/descID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNS/id"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNS/publicationStage"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNS/release"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNS/revision"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNS/umlDate"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNS/umlVersion"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNS/version"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TServiceNsUsage"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceNsUsage/appliesTo"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNsUsage/id"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNsUsage/publicationStage"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNsUsage/release"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNsUsage/revision"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceNsUsage/version"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TServiceParameter"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceParameter/defaultValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceParameter/maxValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceParameter/minValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceParameter/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceParameter/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceParameter/typeKind"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TServiceTypeRealization"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceTypeRealization/fc"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceTypeRealization/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceTypeRealization/presCond"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceTypeRealization/presCondArgs"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceTypeRealization/presCondArgsID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceTypeRealization/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TServiceTypeRealization/typeKind"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TServiceTypeRealizations"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//TServiceTypeRealizations/serviceTypeRealization"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TSubDataAttribute"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/defaultValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/isArray"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/maxIndexAttribute"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/maxValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/minIndex"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/minValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/presCond"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/presCondArgs"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/presCondArgsID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/sizeAttribute"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataAttribute/typeKind"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TSubDataObject"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/isArray"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/maxIndexAttribute"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/minIndex"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/presCond"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/presCondArgs"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/presCondArgsID"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/sizeAttribute"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/underlyingType"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TSubDataObject/underlyingTypeKind"/> + </genClasses> + <genClasses ecoreClass="nsd.ecore#//TTitledClass"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//TTitledClass/titleID"/> + </genClasses> + </genPackages> +</genmodel:GenModel> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/plugin.properties b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/plugin.properties new file mode 100644 index 0000000000000000000000000000000000000000..10e27cc6e51cc70f4fc76e4f415f0198f945d1a7 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/plugin.properties @@ -0,0 +1,20 @@ +# Copyright (c) 2019 CentraleSup�lec & EDF. +# 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 +# +# This file is part of the RiseClipse tool +# +# Contributors: +# Computer Science Department, CentraleSup�lec +# EDF R&D +# Contacts: +# dominique.marcadet@centralesupelec.fr +# aurelie.dehouck-neveu@edf.fr +# Web site: +# http://wdi.supelec.fr/software/RiseClipse/ +# + +pluginName = NSD Model +providerName = www.example.org diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/plugin.xml b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/plugin.xml new file mode 100644 index 0000000000000000000000000000000000000000..e93ddc7b16e9a3da8dc9b48c12ff6df8e8a81fb6 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/plugin.xml @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.0"?> + +<!-- + Copyright (c) 2019 CentraleSupélec & EDF. + 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 + + This file is part of the RiseClipse tool + + Contributors: + Computer Science Department, CentraleSupélec + EDF R&D + Contacts: + dominique.marcadet@centralesupelec.fr + aurelie.dehouck-neveu@edf.fr + Web site: + http://wdi.supelec.fr/software/RiseClipse/ + +--> + +<plugin> + + <extension point="org.eclipse.emf.ecore.generated_package"> + <!-- @generated nsd --> + <package + uri="http://www.iec.ch/61850/2016/NSD" + class="fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage" + genModel="model/nsd.genmodel"/> + </extension> + + <extension point="org.eclipse.emf.ecore.extension_parser"> + <!-- @generated nsd --> + <parser + type="nsd" + class="fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceFactoryImpl"/> + <parser + type="snsd" + class="fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceFactoryImpl"/> + <parser + type="nsdoc" + class="fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceFactoryImpl"/> + </extension> + +</plugin> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AppliesToType.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AppliesToType.java new file mode 100644 index 0000000000000000000000000000000000000000..9786cf8d746a0a8d810b57af6f27500720882b1b --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AppliesToType.java @@ -0,0 +1,289 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Applies To Type</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getVersion <em>Version</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAppliesToType() + * @model extendedMetaData="name='AppliesTo_._type' kind='empty'" + * @generated + */ +public interface AppliesToType extends EObject { + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4". + * <!-- end-model-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAppliesToType_Id() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSIdentifier" required="true" + * extendedMetaData="kind='attribute' name='id'" + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId( String value ); + + /** + * Returns the value of the '<em><b>Publication Stage</b></em>' attribute. + * The default value is <code>"IS"</code>. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The publication stage of the namespace, by default IS. + * <!-- end-model-doc --> + * @return the value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #setPublicationStage(TPubStage) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAppliesToType_PublicationStage() + * @model default="IS" unsettable="true" + * extendedMetaData="kind='attribute' name='publicationStage'" + * @generated + */ + TPubStage getPublicationStage(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @generated + */ + void setPublicationStage( TPubStage value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + void unsetPublicationStage(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getPublicationStage <em>Publication Stage</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Publication Stage</em>' attribute is set. + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + boolean isSetPublicationStage(); + + /** + * Returns the value of the '<em><b>Release</b></em>' attribute. + * The default value is <code>"1"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Release of the namespace version and revision, by default 1. + * <!-- end-model-doc --> + * @return the value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #setRelease(short) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAppliesToType_Release() + * @model default="1" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRelease" + * extendedMetaData="kind='attribute' name='release'" + * @generated + */ + short getRelease(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #getRelease() + * @generated + */ + void setRelease( short value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + void unsetRelease(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRelease <em>Release</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Release</em>' attribute is set. + * @see #unsetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + boolean isSetRelease(); + + /** + * Returns the value of the '<em><b>Revision</b></em>' attribute. + * The default value is <code>"A"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Revision of the namespace version, by default 'A'. + * <!-- end-model-doc --> + * @return the value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #setRevision(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAppliesToType_Revision() + * @model default="A" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRevision" + * extendedMetaData="kind='attribute' name='revision'" + * @generated + */ + String getRevision(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #getRevision() + * @generated + */ + void setRevision( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + void unsetRevision(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRevision <em>Revision</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Revision</em>' attribute is set. + * @see #unsetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + boolean isSetRevision(); + + /** + * Returns the value of the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version (year) of the namespace. + * <!-- end-model-doc --> + * @return the value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #setVersion(int) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAppliesToType_Version() + * @model unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSVersion" required="true" + * extendedMetaData="kind='attribute' name='version'" + * @generated + */ + int getVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #getVersion() + * @generated + */ + void setVersion( int value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + void unsetVersion(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getVersion <em>Version</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Version</em>' attribute is set. + * @see #unsetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + boolean isSetVersion(); + +} // AppliesToType diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/DependsOnType.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/DependsOnType.java new file mode 100644 index 0000000000000000000000000000000000000000..679a7cd708cbbcfc6df62ce77db5a154fc1a97bc --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/DependsOnType.java @@ -0,0 +1,289 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Depends On Type</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getVersion <em>Version</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDependsOnType() + * @model extendedMetaData="name='DependsOn_._type' kind='empty'" + * @generated + */ +public interface DependsOnType extends EObject { + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4". + * <!-- end-model-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDependsOnType_Id() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSIdentifier" required="true" + * extendedMetaData="kind='attribute' name='id'" + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId( String value ); + + /** + * Returns the value of the '<em><b>Publication Stage</b></em>' attribute. + * The default value is <code>"IS"</code>. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The publication stage of the namespace, by default IS. + * <!-- end-model-doc --> + * @return the value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #setPublicationStage(TPubStage) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDependsOnType_PublicationStage() + * @model default="IS" unsettable="true" + * extendedMetaData="kind='attribute' name='publicationStage'" + * @generated + */ + TPubStage getPublicationStage(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @generated + */ + void setPublicationStage( TPubStage value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + void unsetPublicationStage(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getPublicationStage <em>Publication Stage</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Publication Stage</em>' attribute is set. + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + boolean isSetPublicationStage(); + + /** + * Returns the value of the '<em><b>Release</b></em>' attribute. + * The default value is <code>"1"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Release of the namespace version and revision, by default 1. + * <!-- end-model-doc --> + * @return the value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #setRelease(short) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDependsOnType_Release() + * @model default="1" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRelease" + * extendedMetaData="kind='attribute' name='release'" + * @generated + */ + short getRelease(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #getRelease() + * @generated + */ + void setRelease( short value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + void unsetRelease(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRelease <em>Release</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Release</em>' attribute is set. + * @see #unsetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + boolean isSetRelease(); + + /** + * Returns the value of the '<em><b>Revision</b></em>' attribute. + * The default value is <code>"A"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Revision of the namespace version, by default 'A'. + * <!-- end-model-doc --> + * @return the value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #setRevision(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDependsOnType_Revision() + * @model default="A" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRevision" + * extendedMetaData="kind='attribute' name='revision'" + * @generated + */ + String getRevision(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #getRevision() + * @generated + */ + void setRevision( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + void unsetRevision(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRevision <em>Revision</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Revision</em>' attribute is set. + * @see #unsetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + boolean isSetRevision(); + + /** + * Returns the value of the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version (year) of the namespace. + * <!-- end-model-doc --> + * @return the value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #setVersion(int) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDependsOnType_Version() + * @model unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSVersion" required="true" + * extendedMetaData="kind='attribute' name='version'" + * @generated + */ + int getVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #getVersion() + * @generated + */ + void setVersion( int value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + void unsetVersion(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getVersion <em>Version</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Version</em>' attribute is set. + * @see #unsetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + boolean isSetVersion(); + +} // DependsOnType diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/DocumentRoot.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/DocumentRoot.java new file mode 100644 index 0000000000000000000000000000000000000000..826456aee55315b6f352644666879b7da586f1fb --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/DocumentRoot.java @@ -0,0 +1,235 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EMap; + +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.emf.ecore.util.FeatureMap; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Document Root</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getMixed <em>Mixed</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getXSISchemaLocation <em>XSI Schema Location</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getApplicableServiceNS <em>Applicable Service NS</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getCopyright <em>Copyright</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getNS <em>NS</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getNSDoc <em>NS Doc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getServiceNS <em>Service NS</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentRoot() + * @model extendedMetaData="name='' kind='mixed'" + * @generated + */ +public interface DocumentRoot extends EObject { + /** + * Returns the value of the '<em><b>Mixed</b></em>' attribute list. + * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mixed</em>' attribute list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Mixed</em>' attribute list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentRoot_Mixed() + * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true" + * extendedMetaData="kind='elementWildcard' name=':mixed'" + * @generated + */ + FeatureMap getMixed(); + + /** + * Returns the value of the '<em><b>XMLNS Prefix Map</b></em>' map. + * The key is of type {@link java.lang.String}, + * and the value is of type {@link java.lang.String}, + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>XMLNS Prefix Map</em>' map isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>XMLNS Prefix Map</em>' map. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentRoot_XMLNSPrefixMap() + * @model mapType="org.eclipse.emf.ecore.EStringToStringMapEntry<org.eclipse.emf.ecore.EString, org.eclipse.emf.ecore.EString>" transient="true" + * extendedMetaData="kind='attribute' name='xmlns:prefix'" + * @generated + */ + EMap< String, String > getXMLNSPrefixMap(); + + /** + * Returns the value of the '<em><b>XSI Schema Location</b></em>' map. + * The key is of type {@link java.lang.String}, + * and the value is of type {@link java.lang.String}, + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>XSI Schema Location</em>' map isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>XSI Schema Location</em>' map. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentRoot_XSISchemaLocation() + * @model mapType="org.eclipse.emf.ecore.EStringToStringMapEntry<org.eclipse.emf.ecore.EString, org.eclipse.emf.ecore.EString>" transient="true" + * extendedMetaData="kind='attribute' name='xsi:schemaLocation'" + * @generated + */ + EMap< String, String > getXSISchemaLocation(); + + /** + * Returns the value of the '<em><b>Applicable Service NS</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Root element of a file holding the allowed usages of ServiceNS-es. + * <!-- end-model-doc --> + * @return the value of the '<em>Applicable Service NS</em>' containment reference. + * @see #setApplicableServiceNS(TApplicableServiceNS) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentRoot_ApplicableServiceNS() + * @model containment="true" upper="-2" transient="true" volatile="true" derived="true" + * extendedMetaData="kind='element' name='ApplicableServiceNS' namespace='##targetNamespace'" + * @generated + */ + TApplicableServiceNS getApplicableServiceNS(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getApplicableServiceNS <em>Applicable Service NS</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Applicable Service NS</em>' containment reference. + * @see #getApplicableServiceNS() + * @generated + */ + void setApplicableServiceNS( TApplicableServiceNS value ); + + /** + * Returns the value of the '<em><b>Copyright</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The copyright notice attached to the XML + * <!-- end-model-doc --> + * @return the value of the '<em>Copyright</em>' containment reference. + * @see #setCopyright(TCopyrightNotice) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentRoot_Copyright() + * @model containment="true" upper="-2" transient="true" volatile="true" derived="true" + * extendedMetaData="kind='element' name='Copyright' namespace='##targetNamespace'" + * @generated + */ + TCopyrightNotice getCopyright(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getCopyright <em>Copyright</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Copyright</em>' containment reference. + * @see #getCopyright() + * @generated + */ + void setCopyright( TCopyrightNotice value ); + + /** + * Returns the value of the '<em><b>NS</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Root element of a namespace definition (NSD) file. + * <!-- end-model-doc --> + * @return the value of the '<em>NS</em>' containment reference. + * @see #setNS(TNS) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentRoot_NS() + * @model containment="true" upper="-2" transient="true" volatile="true" derived="true" + * extendedMetaData="kind='element' name='NS' namespace='##targetNamespace'" + * @generated + */ + TNS getNS(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getNS <em>NS</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>NS</em>' containment reference. + * @see #getNS() + * @generated + */ + void setNS( TNS value ); + + /** + * Returns the value of the '<em><b>NS Doc</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Root element of a file holding the documentation strings of an NSD file (NSDOC). + * <!-- end-model-doc --> + * @return the value of the '<em>NS Doc</em>' containment reference. + * @see #setNSDoc(TNSDoc) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentRoot_NSDoc() + * @model containment="true" upper="-2" transient="true" volatile="true" derived="true" + * extendedMetaData="kind='element' name='NSDoc' namespace='##targetNamespace'" + * @generated + */ + TNSDoc getNSDoc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getNSDoc <em>NS Doc</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>NS Doc</em>' containment reference. + * @see #getNSDoc() + * @generated + */ + void setNSDoc( TNSDoc value ); + + /** + * Returns the value of the '<em><b>Service NS</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Root element of a service namespace definition (SNSD) file. + * <!-- end-model-doc --> + * @return the value of the '<em>Service NS</em>' containment reference. + * @see #setServiceNS(TServiceNS) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentRoot_ServiceNS() + * @model containment="true" upper="-2" transient="true" volatile="true" derived="true" + * extendedMetaData="kind='element' name='ServiceNS' namespace='##targetNamespace'" + * @generated + */ + TServiceNS getServiceNS(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getServiceNS <em>Service NS</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Service NS</em>' containment reference. + * @see #getServiceNS() + * @generated + */ + void setServiceNS( TServiceNS value ); + +} // DocumentRoot diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/NsdFactory.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/NsdFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..2b691f5833bf825d444b85f4937b877017ecd5c5 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/NsdFactory.java @@ -0,0 +1,491 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage + * @generated + */ +public interface NsdFactory extends EFactory { + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + NsdFactory eINSTANCE = fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdFactoryImpl.init(); + + /** + * Returns a new object of class '<em>Applies To Type</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Applies To Type</em>'. + * @generated + */ + AppliesToType createAppliesToType(); + + /** + * Returns a new object of class '<em>Depends On Type</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Depends On Type</em>'. + * @generated + */ + DependsOnType createDependsOnType(); + + /** + * Returns a new object of class '<em>Document Root</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Document Root</em>'. + * @generated + */ + DocumentRoot createDocumentRoot(); + + /** + * Returns a new object of class '<em>Service Type</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Service Type</em>'. + * @generated + */ + ServiceType createServiceType(); + + /** + * Returns a new object of class '<em>TAbbreviation</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TAbbreviation</em>'. + * @generated + */ + TAbbreviation createTAbbreviation(); + + /** + * Returns a new object of class '<em>TAbbreviations</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TAbbreviations</em>'. + * @generated + */ + TAbbreviations createTAbbreviations(); + + /** + * Returns a new object of class '<em>TAbstract LN Class</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TAbstract LN Class</em>'. + * @generated + */ + TAbstractLNClass createTAbstractLNClass(); + + /** + * Returns a new object of class '<em>TApplicable Service NS</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TApplicable Service NS</em>'. + * @generated + */ + TApplicableServiceNS createTApplicableServiceNS(); + + /** + * Returns a new object of class '<em>TApplicable Services</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TApplicable Services</em>'. + * @generated + */ + TApplicableServices createTApplicableServices(); + + /** + * Returns a new object of class '<em>TBasic Type</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TBasic Type</em>'. + * @generated + */ + TBasicType createTBasicType(); + + /** + * Returns a new object of class '<em>TBasic Types</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TBasic Types</em>'. + * @generated + */ + TBasicTypes createTBasicTypes(); + + /** + * Returns a new object of class '<em>TCDC</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TCDC</em>'. + * @generated + */ + TCDC createTCDC(); + + /** + * Returns a new object of class '<em>TCD Cs</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TCD Cs</em>'. + * @generated + */ + TCDCs createTCDCs(); + + /** + * Returns a new object of class '<em>TChanges</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TChanges</em>'. + * @generated + */ + TChanges createTChanges(); + + /** + * Returns a new object of class '<em>TConstructed Attribute</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TConstructed Attribute</em>'. + * @generated + */ + TConstructedAttribute createTConstructedAttribute(); + + /** + * Returns a new object of class '<em>TConstructed Attributes</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TConstructed Attributes</em>'. + * @generated + */ + TConstructedAttributes createTConstructedAttributes(); + + /** + * Returns a new object of class '<em>TCopyrighted</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TCopyrighted</em>'. + * @generated + */ + TCopyrighted createTCopyrighted(); + + /** + * Returns a new object of class '<em>TCopyright Notice</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TCopyright Notice</em>'. + * @generated + */ + TCopyrightNotice createTCopyrightNotice(); + + /** + * Returns a new object of class '<em>TData Attribute</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TData Attribute</em>'. + * @generated + */ + TDataAttribute createTDataAttribute(); + + /** + * Returns a new object of class '<em>TData Object</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TData Object</em>'. + * @generated + */ + TDataObject createTDataObject(); + + /** + * Returns a new object of class '<em>TData Set Member Of</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TData Set Member Of</em>'. + * @generated + */ + TDataSetMemberOf createTDataSetMemberOf(); + + /** + * Returns a new object of class '<em>TDoc</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TDoc</em>'. + * @generated + */ + TDoc createTDoc(); + + /** + * Returns a new object of class '<em>TDocumented Class</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TDocumented Class</em>'. + * @generated + */ + TDocumentedClass createTDocumentedClass(); + + /** + * Returns a new object of class '<em>TEnumeration</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TEnumeration</em>'. + * @generated + */ + TEnumeration createTEnumeration(); + + /** + * Returns a new object of class '<em>TEnumerations</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TEnumerations</em>'. + * @generated + */ + TEnumerations createTEnumerations(); + + /** + * Returns a new object of class '<em>TFunctional Constraint</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TFunctional Constraint</em>'. + * @generated + */ + TFunctionalConstraint createTFunctionalConstraint(); + + /** + * Returns a new object of class '<em>TFunctional Constraints</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TFunctional Constraints</em>'. + * @generated + */ + TFunctionalConstraints createTFunctionalConstraints(); + + /** + * Returns a new object of class '<em>TLicense</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TLicense</em>'. + * @generated + */ + TLicense createTLicense(); + + /** + * Returns a new object of class '<em>TLiteral</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TLiteral</em>'. + * @generated + */ + TLiteral createTLiteral(); + + /** + * Returns a new object of class '<em>TLN Class</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TLN Class</em>'. + * @generated + */ + TLNClass createTLNClass(); + + /** + * Returns a new object of class '<em>TLN Classes</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TLN Classes</em>'. + * @generated + */ + TLNClasses createTLNClasses(); + + /** + * Returns a new object of class '<em>TNotice</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TNotice</em>'. + * @generated + */ + TNotice createTNotice(); + + /** + * Returns a new object of class '<em>TNS</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TNS</em>'. + * @generated + */ + TNS createTNS(); + + /** + * Returns a new object of class '<em>TNS Doc</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TNS Doc</em>'. + * @generated + */ + TNSDoc createTNSDoc(); + + /** + * Returns a new object of class '<em>TPresence Condition</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TPresence Condition</em>'. + * @generated + */ + TPresenceCondition createTPresenceCondition(); + + /** + * Returns a new object of class '<em>TPresence Conditions</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TPresence Conditions</em>'. + * @generated + */ + TPresenceConditions createTPresenceConditions(); + + /** + * Returns a new object of class '<em>TService CDC</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TService CDC</em>'. + * @generated + */ + TServiceCDC createTServiceCDC(); + + /** + * Returns a new object of class '<em>TService CD Cs</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TService CD Cs</em>'. + * @generated + */ + TServiceCDCs createTServiceCDCs(); + + /** + * Returns a new object of class '<em>TService Constructed Attribute</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TService Constructed Attribute</em>'. + * @generated + */ + TServiceConstructedAttribute createTServiceConstructedAttribute(); + + /** + * Returns a new object of class '<em>TService Constructed Attributes</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TService Constructed Attributes</em>'. + * @generated + */ + TServiceConstructedAttributes createTServiceConstructedAttributes(); + + /** + * Returns a new object of class '<em>TService Data Attribute</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TService Data Attribute</em>'. + * @generated + */ + TServiceDataAttribute createTServiceDataAttribute(); + + /** + * Returns a new object of class '<em>TService NS</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TService NS</em>'. + * @generated + */ + TServiceNS createTServiceNS(); + + /** + * Returns a new object of class '<em>TService Ns Usage</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TService Ns Usage</em>'. + * @generated + */ + TServiceNsUsage createTServiceNsUsage(); + + /** + * Returns a new object of class '<em>TService Parameter</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TService Parameter</em>'. + * @generated + */ + TServiceParameter createTServiceParameter(); + + /** + * Returns a new object of class '<em>TService Type Realization</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TService Type Realization</em>'. + * @generated + */ + TServiceTypeRealization createTServiceTypeRealization(); + + /** + * Returns a new object of class '<em>TService Type Realizations</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TService Type Realizations</em>'. + * @generated + */ + TServiceTypeRealizations createTServiceTypeRealizations(); + + /** + * Returns a new object of class '<em>TSub Data Attribute</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TSub Data Attribute</em>'. + * @generated + */ + TSubDataAttribute createTSubDataAttribute(); + + /** + * Returns a new object of class '<em>TSub Data Object</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TSub Data Object</em>'. + * @generated + */ + TSubDataObject createTSubDataObject(); + + /** + * Returns a new object of class '<em>TTitled Class</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>TTitled Class</em>'. + * @generated + */ + TTitledClass createTTitledClass(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + NsdPackage getNsdPackage(); + +} //NsdFactory diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/NsdPackage.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/NsdPackage.java new file mode 100644 index 0000000000000000000000000000000000000000..9523b26a449ecb46f9d9f1203cfdd6c02760ea9b --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/NsdPackage.java @@ -0,0 +1,10373 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * + * <!-- end-model-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory + * @model kind="package" + * @generated + */ +public interface NsdPackage extends EPackage { + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "nsd"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "http://www.iec.ch/61850/2016/NSD"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "nsd"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + NsdPackage eINSTANCE = fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl.init(); + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AppliesToTypeImpl <em>Applies To Type</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AppliesToTypeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getAppliesToType() + * @generated + */ + int APPLIES_TO_TYPE = 0; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLIES_TO_TYPE__ID = 0; + + /** + * The feature id for the '<em><b>Publication Stage</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLIES_TO_TYPE__PUBLICATION_STAGE = 1; + + /** + * The feature id for the '<em><b>Release</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLIES_TO_TYPE__RELEASE = 2; + + /** + * The feature id for the '<em><b>Revision</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLIES_TO_TYPE__REVISION = 3; + + /** + * The feature id for the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLIES_TO_TYPE__VERSION = 4; + + /** + * The number of structural features of the '<em>Applies To Type</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLIES_TO_TYPE_FEATURE_COUNT = 5; + + /** + * The number of operations of the '<em>Applies To Type</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLIES_TO_TYPE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DependsOnTypeImpl <em>Depends On Type</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DependsOnTypeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getDependsOnType() + * @generated + */ + int DEPENDS_ON_TYPE = 1; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DEPENDS_ON_TYPE__ID = 0; + + /** + * The feature id for the '<em><b>Publication Stage</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DEPENDS_ON_TYPE__PUBLICATION_STAGE = 1; + + /** + * The feature id for the '<em><b>Release</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DEPENDS_ON_TYPE__RELEASE = 2; + + /** + * The feature id for the '<em><b>Revision</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DEPENDS_ON_TYPE__REVISION = 3; + + /** + * The feature id for the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DEPENDS_ON_TYPE__VERSION = 4; + + /** + * The number of structural features of the '<em>Depends On Type</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DEPENDS_ON_TYPE_FEATURE_COUNT = 5; + + /** + * The number of operations of the '<em>Depends On Type</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DEPENDS_ON_TYPE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl <em>Document Root</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getDocumentRoot() + * @generated + */ + int DOCUMENT_ROOT = 2; + + /** + * The feature id for the '<em><b>Mixed</b></em>' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENT_ROOT__MIXED = 0; + + /** + * The feature id for the '<em><b>XMLNS Prefix Map</b></em>' map. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENT_ROOT__XMLNS_PREFIX_MAP = 1; + + /** + * The feature id for the '<em><b>XSI Schema Location</b></em>' map. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENT_ROOT__XSI_SCHEMA_LOCATION = 2; + + /** + * The feature id for the '<em><b>Applicable Service NS</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENT_ROOT__APPLICABLE_SERVICE_NS = 3; + + /** + * The feature id for the '<em><b>Copyright</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENT_ROOT__COPYRIGHT = 4; + + /** + * The feature id for the '<em><b>NS</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENT_ROOT__NS = 5; + + /** + * The feature id for the '<em><b>NS Doc</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENT_ROOT__NS_DOC = 6; + + /** + * The feature id for the '<em><b>Service NS</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENT_ROOT__SERVICE_NS = 7; + + /** + * The number of structural features of the '<em>Document Root</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENT_ROOT_FEATURE_COUNT = 8; + + /** + * The number of operations of the '<em>Document Root</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENT_ROOT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceTypeImpl <em>Service Type</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceTypeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getServiceType() + * @generated + */ + int SERVICE_TYPE = 3; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SERVICE_TYPE__NAME = 0; + + /** + * The number of structural features of the '<em>Service Type</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SERVICE_TYPE_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>Service Type</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SERVICE_TYPE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationImpl <em>TAbbreviation</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAbbreviation() + * @generated + */ + int TABBREVIATION = 4; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABBREVIATION__DESC_ID = 0; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABBREVIATION__NAME = 1; + + /** + * The number of structural features of the '<em>TAbbreviation</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABBREVIATION_FEATURE_COUNT = 2; + + /** + * The number of operations of the '<em>TAbbreviation</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABBREVIATION_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationsImpl <em>TAbbreviations</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAbbreviations() + * @generated + */ + int TABBREVIATIONS = 5; + + /** + * The feature id for the '<em><b>Abbreviation</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABBREVIATIONS__ABBREVIATION = 0; + + /** + * The number of structural features of the '<em>TAbbreviations</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABBREVIATIONS_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TAbbreviations</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABBREVIATIONS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocumentedClassImpl <em>TDocumented Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocumentedClassImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDocumentedClass() + * @generated + */ + int TDOCUMENTED_CLASS = 23; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOCUMENTED_CLASS__DEPRECATED = 0; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOCUMENTED_CLASS__DESC_ID = 1; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOCUMENTED_CLASS__INFORMATIVE = 2; + + /** + * The number of structural features of the '<em>TDocumented Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOCUMENTED_CLASS_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>TDocumented Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOCUMENTED_CLASS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TTitledClassImpl <em>TTitled Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TTitledClassImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTTitledClass() + * @generated + */ + int TTITLED_CLASS = 49; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TTITLED_CLASS__DEPRECATED = TDOCUMENTED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TTITLED_CLASS__DESC_ID = TDOCUMENTED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TTITLED_CLASS__INFORMATIVE = TDOCUMENTED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TTITLED_CLASS__TITLE_ID = TDOCUMENTED_CLASS_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>TTitled Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TTITLED_CLASS_FEATURE_COUNT = TDOCUMENTED_CLASS_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>TTitled Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TTITLED_CLASS_OPERATION_COUNT = TDOCUMENTED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAnyLNClassImpl <em>TAny LN Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAnyLNClassImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAnyLNClass() + * @generated + */ + int TANY_LN_CLASS = 7; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TANY_LN_CLASS__DEPRECATED = TTITLED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TANY_LN_CLASS__DESC_ID = TTITLED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TANY_LN_CLASS__INFORMATIVE = TTITLED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TANY_LN_CLASS__TITLE_ID = TTITLED_CLASS__TITLE_ID; + + /** + * The feature id for the '<em><b>Data Object</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TANY_LN_CLASS__DATA_OBJECT = TTITLED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Base</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TANY_LN_CLASS__BASE = TTITLED_CLASS_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>TAny LN Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TANY_LN_CLASS_FEATURE_COUNT = TTITLED_CLASS_FEATURE_COUNT + 2; + + /** + * The number of operations of the '<em>TAny LN Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TANY_LN_CLASS_OPERATION_COUNT = TTITLED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbstractLNClassImpl <em>TAbstract LN Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbstractLNClassImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAbstractLNClass() + * @generated + */ + int TABSTRACT_LN_CLASS = 6; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABSTRACT_LN_CLASS__DEPRECATED = TANY_LN_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABSTRACT_LN_CLASS__DESC_ID = TANY_LN_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABSTRACT_LN_CLASS__INFORMATIVE = TANY_LN_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABSTRACT_LN_CLASS__TITLE_ID = TANY_LN_CLASS__TITLE_ID; + + /** + * The feature id for the '<em><b>Data Object</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABSTRACT_LN_CLASS__DATA_OBJECT = TANY_LN_CLASS__DATA_OBJECT; + + /** + * The feature id for the '<em><b>Base</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABSTRACT_LN_CLASS__BASE = TANY_LN_CLASS__BASE; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABSTRACT_LN_CLASS__NAME = TANY_LN_CLASS_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>TAbstract LN Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABSTRACT_LN_CLASS_FEATURE_COUNT = TANY_LN_CLASS_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>TAbstract LN Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TABSTRACT_LN_CLASS_OPERATION_COUNT = TANY_LN_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightedImpl <em>TCopyrighted</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightedImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCopyrighted() + * @generated + */ + int TCOPYRIGHTED = 17; + + /** + * The feature id for the '<em><b>Copyright</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCOPYRIGHTED__COPYRIGHT = 0; + + /** + * The number of structural features of the '<em>TCopyrighted</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCOPYRIGHTED_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TCopyrighted</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCOPYRIGHTED_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServiceNSImpl <em>TApplicable Service NS</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServiceNSImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTApplicableServiceNS() + * @generated + */ + int TAPPLICABLE_SERVICE_NS = 8; + + /** + * The feature id for the '<em><b>Copyright</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAPPLICABLE_SERVICE_NS__COPYRIGHT = TCOPYRIGHTED__COPYRIGHT; + + /** + * The feature id for the '<em><b>Service Ns Usage</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE = TCOPYRIGHTED_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAPPLICABLE_SERVICE_NS__DATE = TCOPYRIGHTED_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAPPLICABLE_SERVICE_NS__VERSION = TCOPYRIGHTED_FEATURE_COUNT + 2; + + /** + * The number of structural features of the '<em>TApplicable Service NS</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAPPLICABLE_SERVICE_NS_FEATURE_COUNT = TCOPYRIGHTED_FEATURE_COUNT + 3; + + /** + * The number of operations of the '<em>TApplicable Service NS</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAPPLICABLE_SERVICE_NS_OPERATION_COUNT = TCOPYRIGHTED_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServicesImpl <em>TApplicable Services</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServicesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTApplicableServices() + * @generated + */ + int TAPPLICABLE_SERVICES = 9; + + /** + * The feature id for the '<em><b>Service</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAPPLICABLE_SERVICES__SERVICE = 0; + + /** + * The feature id for the '<em><b>Data Set Member Of</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF = 1; + + /** + * The number of structural features of the '<em>TApplicable Services</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAPPLICABLE_SERVICES_FEATURE_COUNT = 2; + + /** + * The number of operations of the '<em>TApplicable Services</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TAPPLICABLE_SERVICES_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypeImpl <em>TBasic Type</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTBasicType() + * @generated + */ + int TBASIC_TYPE = 10; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TBASIC_TYPE__DESC_ID = 0; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TBASIC_TYPE__NAME = 1; + + /** + * The number of structural features of the '<em>TBasic Type</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TBASIC_TYPE_FEATURE_COUNT = 2; + + /** + * The number of operations of the '<em>TBasic Type</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TBASIC_TYPE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypesImpl <em>TBasic Types</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTBasicTypes() + * @generated + */ + int TBASIC_TYPES = 11; + + /** + * The feature id for the '<em><b>Basic Type</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TBASIC_TYPES__BASIC_TYPE = 0; + + /** + * The number of structural features of the '<em>TBasic Types</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TBASIC_TYPES_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TBasic Types</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TBASIC_TYPES_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl <em>TCDC</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCDC() + * @generated + */ + int TCDC = 12; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__DEPRECATED = TTITLED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__DESC_ID = TTITLED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__INFORMATIVE = TTITLED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__TITLE_ID = TTITLED_CLASS__TITLE_ID; + + /** + * The feature id for the '<em><b>Sub Data Object</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__SUB_DATA_OBJECT = TTITLED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Data Attribute</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__DATA_ATTRIBUTE = TTITLED_CLASS_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Service Parameter</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__SERVICE_PARAMETER = TTITLED_CLASS_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Enum Parameterized</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__ENUM_PARAMETERIZED = TTITLED_CLASS_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__NAME = TTITLED_CLASS_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Statistics</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__STATISTICS = TTITLED_CLASS_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Type Kind Parameterized</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__TYPE_KIND_PARAMETERIZED = TTITLED_CLASS_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Variant</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC__VARIANT = TTITLED_CLASS_FEATURE_COUNT + 7; + + /** + * The number of structural features of the '<em>TCDC</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC_FEATURE_COUNT = TTITLED_CLASS_FEATURE_COUNT + 8; + + /** + * The number of operations of the '<em>TCDC</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCDC_OPERATION_COUNT = TTITLED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCsImpl <em>TCD Cs</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCDCs() + * @generated + */ + int TCD_CS = 13; + + /** + * The feature id for the '<em><b>CDC</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCD_CS__CDC = 0; + + /** + * The number of structural features of the '<em>TCD Cs</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCD_CS_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TCD Cs</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCD_CS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TChangesImpl <em>TChanges</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TChangesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTChanges() + * @generated + */ + int TCHANGES = 14; + + /** + * The feature id for the '<em><b>Changes ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCHANGES__CHANGES_ID = 0; + + /** + * The feature id for the '<em><b>Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCHANGES__DATE = 1; + + /** + * The feature id for the '<em><b>Release</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCHANGES__RELEASE = 2; + + /** + * The feature id for the '<em><b>Revision</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCHANGES__REVISION = 3; + + /** + * The feature id for the '<em><b>Tissues</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCHANGES__TISSUES = 4; + + /** + * The feature id for the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCHANGES__VERSION = 5; + + /** + * The number of structural features of the '<em>TChanges</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCHANGES_FEATURE_COUNT = 6; + + /** + * The number of operations of the '<em>TChanges</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCHANGES_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributeImpl <em>TConstructed Attribute</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTConstructedAttribute() + * @generated + */ + int TCONSTRUCTED_ATTRIBUTE = 15; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTE__DEPRECATED = TTITLED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTE__DESC_ID = TTITLED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTE__INFORMATIVE = TTITLED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTE__TITLE_ID = TTITLED_CLASS__TITLE_ID; + + /** + * The feature id for the '<em><b>Sub Data Attribute</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE = TTITLED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTE__NAME = TTITLED_CLASS_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>TConstructed Attribute</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTE_FEATURE_COUNT = TTITLED_CLASS_FEATURE_COUNT + 2; + + /** + * The number of operations of the '<em>TConstructed Attribute</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTE_OPERATION_COUNT = TTITLED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributesImpl <em>TConstructed Attributes</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTConstructedAttributes() + * @generated + */ + int TCONSTRUCTED_ATTRIBUTES = 16; + + /** + * The feature id for the '<em><b>Constructed Attribute</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE = 0; + + /** + * The number of structural features of the '<em>TConstructed Attributes</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTES_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TConstructed Attributes</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCONSTRUCTED_ATTRIBUTES_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightNoticeImpl <em>TCopyright Notice</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightNoticeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCopyrightNotice() + * @generated + */ + int TCOPYRIGHT_NOTICE = 18; + + /** + * The feature id for the '<em><b>Notice</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCOPYRIGHT_NOTICE__NOTICE = 0; + + /** + * The feature id for the '<em><b>License</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCOPYRIGHT_NOTICE__LICENSE = 1; + + /** + * The number of structural features of the '<em>TCopyright Notice</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCOPYRIGHT_NOTICE_FEATURE_COUNT = 2; + + /** + * The number of operations of the '<em>TCopyright Notice</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TCOPYRIGHT_NOTICE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl <em>TData Attribute</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDataAttribute() + * @generated + */ + int TDATA_ATTRIBUTE = 19; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__DEPRECATED = TDOCUMENTED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__DESC_ID = TDOCUMENTED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__INFORMATIVE = TDOCUMENTED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Dchg</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__DCHG = TDOCUMENTED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Default Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__DEFAULT_VALUE = TDOCUMENTED_CLASS_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Dupd</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__DUPD = TDOCUMENTED_CLASS_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Fc</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__FC = TDOCUMENTED_CLASS_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Is Array</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__IS_ARRAY = TDOCUMENTED_CLASS_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Max Index Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE = TDOCUMENTED_CLASS_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Max Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__MAX_VALUE = TDOCUMENTED_CLASS_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Min Index</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__MIN_INDEX = TDOCUMENTED_CLASS_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>Min Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__MIN_VALUE = TDOCUMENTED_CLASS_FEATURE_COUNT + 8; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__NAME = TDOCUMENTED_CLASS_FEATURE_COUNT + 9; + + /** + * The feature id for the '<em><b>Pres Cond</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__PRES_COND = TDOCUMENTED_CLASS_FEATURE_COUNT + 10; + + /** + * The feature id for the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__PRES_COND_ARGS = TDOCUMENTED_CLASS_FEATURE_COUNT + 11; + + /** + * The feature id for the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__PRES_COND_ARGS_ID = TDOCUMENTED_CLASS_FEATURE_COUNT + 12; + + /** + * The feature id for the '<em><b>Qchg</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__QCHG = TDOCUMENTED_CLASS_FEATURE_COUNT + 13; + + /** + * The feature id for the '<em><b>Size Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__SIZE_ATTRIBUTE = TDOCUMENTED_CLASS_FEATURE_COUNT + 14; + + /** + * The feature id for the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__TYPE = TDOCUMENTED_CLASS_FEATURE_COUNT + 15; + + /** + * The feature id for the '<em><b>Type Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE__TYPE_KIND = TDOCUMENTED_CLASS_FEATURE_COUNT + 16; + + /** + * The number of structural features of the '<em>TData Attribute</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE_FEATURE_COUNT = TDOCUMENTED_CLASS_FEATURE_COUNT + 17; + + /** + * The number of operations of the '<em>TData Attribute</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_ATTRIBUTE_OPERATION_COUNT = TDOCUMENTED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl <em>TData Object</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDataObject() + * @generated + */ + int TDATA_OBJECT = 20; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__DEPRECATED = TDOCUMENTED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__DESC_ID = TDOCUMENTED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__INFORMATIVE = TDOCUMENTED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Ds Pres Cond</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__DS_PRES_COND = TDOCUMENTED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Ds Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__DS_PRES_COND_ARGS = TDOCUMENTED_CLASS_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Ds Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__DS_PRES_COND_ARGS_ID = TDOCUMENTED_CLASS_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__NAME = TDOCUMENTED_CLASS_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Pres Cond</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__PRES_COND = TDOCUMENTED_CLASS_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__PRES_COND_ARGS = TDOCUMENTED_CLASS_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__PRES_COND_ARGS_ID = TDOCUMENTED_CLASS_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Transient</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__TRANSIENT = TDOCUMENTED_CLASS_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__TYPE = TDOCUMENTED_CLASS_FEATURE_COUNT + 8; + + /** + * The feature id for the '<em><b>Underlying Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__UNDERLYING_TYPE = TDOCUMENTED_CLASS_FEATURE_COUNT + 9; + + /** + * The feature id for the '<em><b>Underlying Type Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT__UNDERLYING_TYPE_KIND = TDOCUMENTED_CLASS_FEATURE_COUNT + 10; + + /** + * The number of structural features of the '<em>TData Object</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT_FEATURE_COUNT = TDOCUMENTED_CLASS_FEATURE_COUNT + 11; + + /** + * The number of operations of the '<em>TData Object</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_OBJECT_OPERATION_COUNT = TDOCUMENTED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataSetMemberOfImpl <em>TData Set Member Of</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataSetMemberOfImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDataSetMemberOf() + * @generated + */ + int TDATA_SET_MEMBER_OF = 21; + + /** + * The feature id for the '<em><b>Cb</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_SET_MEMBER_OF__CB = 0; + + /** + * The number of structural features of the '<em>TData Set Member Of</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_SET_MEMBER_OF_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TData Set Member Of</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDATA_SET_MEMBER_OF_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocImpl <em>TDoc</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDoc() + * @generated + */ + int TDOC = 22; + + /** + * The feature id for the '<em><b>Mixed</b></em>' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOC__MIXED = 0; + + /** + * The feature id for the '<em><b>Group</b></em>' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOC__GROUP = 1; + + /** + * The feature id for the '<em><b>Any</b></em>' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOC__ANY = 2; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOC__ID = 3; + + /** + * The number of structural features of the '<em>TDoc</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOC_FEATURE_COUNT = 4; + + /** + * The number of operations of the '<em>TDoc</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TDOC_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationImpl <em>TEnumeration</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTEnumeration() + * @generated + */ + int TENUMERATION = 24; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATION__DEPRECATED = TTITLED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATION__DESC_ID = TTITLED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATION__INFORMATIVE = TTITLED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATION__TITLE_ID = TTITLED_CLASS__TITLE_ID; + + /** + * The feature id for the '<em><b>Literal</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATION__LITERAL = TTITLED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Inherited From</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATION__INHERITED_FROM = TTITLED_CLASS_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATION__NAME = TTITLED_CLASS_FEATURE_COUNT + 2; + + /** + * The number of structural features of the '<em>TEnumeration</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATION_FEATURE_COUNT = TTITLED_CLASS_FEATURE_COUNT + 3; + + /** + * The number of operations of the '<em>TEnumeration</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATION_OPERATION_COUNT = TTITLED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationsImpl <em>TEnumerations</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTEnumerations() + * @generated + */ + int TENUMERATIONS = 25; + + /** + * The feature id for the '<em><b>Enumeration</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATIONS__ENUMERATION = 0; + + /** + * The number of structural features of the '<em>TEnumerations</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATIONS_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TEnumerations</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TENUMERATIONS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintImpl <em>TFunctional Constraint</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTFunctionalConstraint() + * @generated + */ + int TFUNCTIONAL_CONSTRAINT = 26; + + /** + * The feature id for the '<em><b>Applicable Services</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES = 0; + + /** + * The feature id for the '<em><b>Abbreviation</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TFUNCTIONAL_CONSTRAINT__ABBREVIATION = 1; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TFUNCTIONAL_CONSTRAINT__DESC_ID = 2; + + /** + * The feature id for the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TFUNCTIONAL_CONSTRAINT__TITLE_ID = 3; + + /** + * The number of structural features of the '<em>TFunctional Constraint</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TFUNCTIONAL_CONSTRAINT_FEATURE_COUNT = 4; + + /** + * The number of operations of the '<em>TFunctional Constraint</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TFUNCTIONAL_CONSTRAINT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintsImpl <em>TFunctional Constraints</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTFunctionalConstraints() + * @generated + */ + int TFUNCTIONAL_CONSTRAINTS = 27; + + /** + * The feature id for the '<em><b>Functional Constraint</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT = 0; + + /** + * The number of structural features of the '<em>TFunctional Constraints</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TFUNCTIONAL_CONSTRAINTS_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TFunctional Constraints</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TFUNCTIONAL_CONSTRAINTS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLicenseImpl <em>TLicense</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLicenseImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLicense() + * @generated + */ + int TLICENSE = 28; + + /** + * The feature id for the '<em><b>Mixed</b></em>' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLICENSE__MIXED = 0; + + /** + * The feature id for the '<em><b>Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLICENSE__KIND = 1; + + /** + * The feature id for the '<em><b>Uri</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLICENSE__URI = 2; + + /** + * The number of structural features of the '<em>TLicense</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLICENSE_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>TLicense</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLICENSE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLiteralImpl <em>TLiteral</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLiteralImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLiteral() + * @generated + */ + int TLITERAL = 29; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLITERAL__DEPRECATED = TDOCUMENTED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLITERAL__DESC_ID = TDOCUMENTED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLITERAL__INFORMATIVE = TDOCUMENTED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Literal Val</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLITERAL__LITERAL_VAL = TDOCUMENTED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLITERAL__NAME = TDOCUMENTED_CLASS_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>TLiteral</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLITERAL_FEATURE_COUNT = TDOCUMENTED_CLASS_FEATURE_COUNT + 2; + + /** + * The number of operations of the '<em>TLiteral</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLITERAL_OPERATION_COUNT = TDOCUMENTED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassImpl <em>TLN Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLNClass() + * @generated + */ + int TLN_CLASS = 30; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS__DEPRECATED = TANY_LN_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS__DESC_ID = TANY_LN_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS__INFORMATIVE = TANY_LN_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS__TITLE_ID = TANY_LN_CLASS__TITLE_ID; + + /** + * The feature id for the '<em><b>Data Object</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS__DATA_OBJECT = TANY_LN_CLASS__DATA_OBJECT; + + /** + * The feature id for the '<em><b>Base</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS__BASE = TANY_LN_CLASS__BASE; + + /** + * The feature id for the '<em><b>Can Have LOG</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS__CAN_HAVE_LOG = TANY_LN_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Is Extension</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS__IS_EXTENSION = TANY_LN_CLASS_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS__NAME = TANY_LN_CLASS_FEATURE_COUNT + 2; + + /** + * The number of structural features of the '<em>TLN Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS_FEATURE_COUNT = TANY_LN_CLASS_FEATURE_COUNT + 3; + + /** + * The number of operations of the '<em>TLN Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASS_OPERATION_COUNT = TANY_LN_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassesImpl <em>TLN Classes</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLNClasses() + * @generated + */ + int TLN_CLASSES = 31; + + /** + * The feature id for the '<em><b>Abstract LN Class</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASSES__ABSTRACT_LN_CLASS = 0; + + /** + * The feature id for the '<em><b>LN Class</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASSES__LN_CLASS = 1; + + /** + * The number of structural features of the '<em>TLN Classes</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASSES_FEATURE_COUNT = 2; + + /** + * The number of operations of the '<em>TLN Classes</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TLN_CLASSES_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNoticeImpl <em>TNotice</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNoticeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNotice() + * @generated + */ + int TNOTICE = 32; + + /** + * The feature id for the '<em><b>Mixed</b></em>' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNOTICE__MIXED = 0; + + /** + * The number of structural features of the '<em>TNotice</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNOTICE_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TNotice</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNOTICE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl <em>TNS</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNS() + * @generated + */ + int TNS = 33; + + /** + * The feature id for the '<em><b>Copyright</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__COPYRIGHT = TCOPYRIGHTED__COPYRIGHT; + + /** + * The feature id for the '<em><b>Changes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__CHANGES = TCOPYRIGHTED_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Depends On</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__DEPENDS_ON = TCOPYRIGHTED_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Basic Types</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__BASIC_TYPES = TCOPYRIGHTED_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Functional Constraints</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__FUNCTIONAL_CONSTRAINTS = TCOPYRIGHTED_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Presence Conditions</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__PRESENCE_CONDITIONS = TCOPYRIGHTED_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Abbreviations</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__ABBREVIATIONS = TCOPYRIGHTED_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Enumerations</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__ENUMERATIONS = TCOPYRIGHTED_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Constructed Attributes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__CONSTRUCTED_ATTRIBUTES = TCOPYRIGHTED_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>CD Cs</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__CD_CS = TCOPYRIGHTED_FEATURE_COUNT + 8; + + /** + * The feature id for the '<em><b>LN Classes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__LN_CLASSES = TCOPYRIGHTED_FEATURE_COUNT + 9; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__DESC_ID = TCOPYRIGHTED_FEATURE_COUNT + 10; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__ID = TCOPYRIGHTED_FEATURE_COUNT + 11; + + /** + * The feature id for the '<em><b>Publication Stage</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__PUBLICATION_STAGE = TCOPYRIGHTED_FEATURE_COUNT + 12; + + /** + * The feature id for the '<em><b>Release</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__RELEASE = TCOPYRIGHTED_FEATURE_COUNT + 13; + + /** + * The feature id for the '<em><b>Revision</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__REVISION = TCOPYRIGHTED_FEATURE_COUNT + 14; + + /** + * The feature id for the '<em><b>Uml Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__UML_DATE = TCOPYRIGHTED_FEATURE_COUNT + 15; + + /** + * The feature id for the '<em><b>Uml Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__UML_VERSION = TCOPYRIGHTED_FEATURE_COUNT + 16; + + /** + * The feature id for the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS__VERSION = TCOPYRIGHTED_FEATURE_COUNT + 17; + + /** + * The number of structural features of the '<em>TNS</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_FEATURE_COUNT = TCOPYRIGHTED_FEATURE_COUNT + 18; + + /** + * The number of operations of the '<em>TNS</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_OPERATION_COUNT = TCOPYRIGHTED_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl <em>TNS Doc</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSDoc() + * @generated + */ + int TNS_DOC = 34; + + /** + * The feature id for the '<em><b>Copyright</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC__COPYRIGHT = TCOPYRIGHTED__COPYRIGHT; + + /** + * The feature id for the '<em><b>Doc</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC__DOC = TCOPYRIGHTED_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC__ID = TCOPYRIGHTED_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Lang</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC__LANG = TCOPYRIGHTED_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Publication Stage</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC__PUBLICATION_STAGE = TCOPYRIGHTED_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Release</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC__RELEASE = TCOPYRIGHTED_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Revision</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC__REVISION = TCOPYRIGHTED_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Uml Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC__UML_DATE = TCOPYRIGHTED_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Uml Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC__UML_VERSION = TCOPYRIGHTED_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC__VERSION = TCOPYRIGHTED_FEATURE_COUNT + 8; + + /** + * The number of structural features of the '<em>TNS Doc</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC_FEATURE_COUNT = TCOPYRIGHTED_FEATURE_COUNT + 9; + + /** + * The number of operations of the '<em>TNS Doc</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TNS_DOC_OPERATION_COUNT = TCOPYRIGHTED_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionImpl <em>TPresence Condition</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPresenceCondition() + * @generated + */ + int TPRESENCE_CONDITION = 35; + + /** + * The feature id for the '<em><b>Argument</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TPRESENCE_CONDITION__ARGUMENT = 0; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TPRESENCE_CONDITION__DESC_ID = 1; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TPRESENCE_CONDITION__NAME = 2; + + /** + * The feature id for the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TPRESENCE_CONDITION__TITLE_ID = 3; + + /** + * The number of structural features of the '<em>TPresence Condition</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TPRESENCE_CONDITION_FEATURE_COUNT = 4; + + /** + * The number of operations of the '<em>TPresence Condition</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TPRESENCE_CONDITION_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionsImpl <em>TPresence Conditions</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPresenceConditions() + * @generated + */ + int TPRESENCE_CONDITIONS = 36; + + /** + * The feature id for the '<em><b>Presence Condition</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TPRESENCE_CONDITIONS__PRESENCE_CONDITION = 0; + + /** + * The number of structural features of the '<em>TPresence Conditions</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TPRESENCE_CONDITIONS_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TPresence Conditions</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TPRESENCE_CONDITIONS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCImpl <em>TService CDC</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceCDC() + * @generated + */ + int TSERVICE_CDC = 37; + + /** + * The feature id for the '<em><b>Service Data Attribute</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE = 0; + + /** + * The feature id for the '<em><b>Cdc</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CDC__CDC = 1; + + /** + * The feature id for the '<em><b>Variant</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CDC__VARIANT = 2; + + /** + * The number of structural features of the '<em>TService CDC</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CDC_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>TService CDC</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CDC_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCsImpl <em>TService CD Cs</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceCDCs() + * @generated + */ + int TSERVICE_CD_CS = 38; + + /** + * The feature id for the '<em><b>Service CDC</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CD_CS__SERVICE_CDC = 0; + + /** + * The number of structural features of the '<em>TService CD Cs</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CD_CS_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TService CD Cs</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CD_CS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceConstructedAttributeImpl <em>TService Constructed Attribute</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceConstructedAttributeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceConstructedAttribute() + * @generated + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTE = 39; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTE__DEPRECATED = TCONSTRUCTED_ATTRIBUTE__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTE__DESC_ID = TCONSTRUCTED_ATTRIBUTE__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTE__INFORMATIVE = TCONSTRUCTED_ATTRIBUTE__INFORMATIVE; + + /** + * The feature id for the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTE__TITLE_ID = TCONSTRUCTED_ATTRIBUTE__TITLE_ID; + + /** + * The feature id for the '<em><b>Sub Data Attribute</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE = TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTE__NAME = TCONSTRUCTED_ATTRIBUTE__NAME; + + /** + * The feature id for the '<em><b>Type Kind Parameterized</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED = TCONSTRUCTED_ATTRIBUTE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>TService Constructed Attribute</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTE_FEATURE_COUNT = TCONSTRUCTED_ATTRIBUTE_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>TService Constructed Attribute</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTE_OPERATION_COUNT = TCONSTRUCTED_ATTRIBUTE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceConstructedAttributesImpl <em>TService Constructed Attributes</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceConstructedAttributesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceConstructedAttributes() + * @generated + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTES = 40; + + /** + * The feature id for the '<em><b>Service Constructed Attribute</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE = 0; + + /** + * The number of structural features of the '<em>TService Constructed Attributes</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTES_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TService Constructed Attributes</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_CONSTRUCTED_ATTRIBUTES_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl <em>TService Data Attribute</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceDataAttribute() + * @generated + */ + int TSERVICE_DATA_ATTRIBUTE = 41; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__DEPRECATED = TDOCUMENTED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__DESC_ID = TDOCUMENTED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__INFORMATIVE = TDOCUMENTED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Fc</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__FC = TDOCUMENTED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__NAME = TDOCUMENTED_CLASS_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Pres Cond</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__PRES_COND = TDOCUMENTED_CLASS_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS = TDOCUMENTED_CLASS_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID = TDOCUMENTED_CLASS_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__TYPE = TDOCUMENTED_CLASS_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Type Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__TYPE_KIND = TDOCUMENTED_CLASS_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Underlying Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE = TDOCUMENTED_CLASS_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>Underlying Type Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND = TDOCUMENTED_CLASS_FEATURE_COUNT + 8; + + /** + * The number of structural features of the '<em>TService Data Attribute</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE_FEATURE_COUNT = TDOCUMENTED_CLASS_FEATURE_COUNT + 9; + + /** + * The number of operations of the '<em>TService Data Attribute</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_DATA_ATTRIBUTE_OPERATION_COUNT = TDOCUMENTED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl <em>TService NS</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceNS() + * @generated + */ + int TSERVICE_NS = 42; + + /** + * The feature id for the '<em><b>Copyright</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__COPYRIGHT = TCOPYRIGHTED__COPYRIGHT; + + /** + * The feature id for the '<em><b>Changes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__CHANGES = TCOPYRIGHTED_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Functional Constraints</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__FUNCTIONAL_CONSTRAINTS = TCOPYRIGHTED_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Presence Conditions</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__PRESENCE_CONDITIONS = TCOPYRIGHTED_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Abbreviations</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__ABBREVIATIONS = TCOPYRIGHTED_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Service Type Realizations</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__SERVICE_TYPE_REALIZATIONS = TCOPYRIGHTED_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Service Constructed Attributes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES = TCOPYRIGHTED_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Service CD Cs</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__SERVICE_CD_CS = TCOPYRIGHTED_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__DESC_ID = TCOPYRIGHTED_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__ID = TCOPYRIGHTED_FEATURE_COUNT + 8; + + /** + * The feature id for the '<em><b>Publication Stage</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__PUBLICATION_STAGE = TCOPYRIGHTED_FEATURE_COUNT + 9; + + /** + * The feature id for the '<em><b>Release</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__RELEASE = TCOPYRIGHTED_FEATURE_COUNT + 10; + + /** + * The feature id for the '<em><b>Revision</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__REVISION = TCOPYRIGHTED_FEATURE_COUNT + 11; + + /** + * The feature id for the '<em><b>Uml Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__UML_DATE = TCOPYRIGHTED_FEATURE_COUNT + 12; + + /** + * The feature id for the '<em><b>Uml Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__UML_VERSION = TCOPYRIGHTED_FEATURE_COUNT + 13; + + /** + * The feature id for the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS__VERSION = TCOPYRIGHTED_FEATURE_COUNT + 14; + + /** + * The number of structural features of the '<em>TService NS</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS_FEATURE_COUNT = TCOPYRIGHTED_FEATURE_COUNT + 15; + + /** + * The number of operations of the '<em>TService NS</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS_OPERATION_COUNT = TCOPYRIGHTED_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNsUsageImpl <em>TService Ns Usage</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNsUsageImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceNsUsage() + * @generated + */ + int TSERVICE_NS_USAGE = 43; + + /** + * The feature id for the '<em><b>Applies To</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS_USAGE__APPLIES_TO = 0; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS_USAGE__ID = 1; + + /** + * The feature id for the '<em><b>Publication Stage</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS_USAGE__PUBLICATION_STAGE = 2; + + /** + * The feature id for the '<em><b>Release</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS_USAGE__RELEASE = 3; + + /** + * The feature id for the '<em><b>Revision</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS_USAGE__REVISION = 4; + + /** + * The feature id for the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS_USAGE__VERSION = 5; + + /** + * The number of structural features of the '<em>TService Ns Usage</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS_USAGE_FEATURE_COUNT = 6; + + /** + * The number of operations of the '<em>TService Ns Usage</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_NS_USAGE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceParameterImpl <em>TService Parameter</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceParameterImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceParameter() + * @generated + */ + int TSERVICE_PARAMETER = 44; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER__DEPRECATED = TDOCUMENTED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER__DESC_ID = TDOCUMENTED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER__INFORMATIVE = TDOCUMENTED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Default Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER__DEFAULT_VALUE = TDOCUMENTED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Max Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER__MAX_VALUE = TDOCUMENTED_CLASS_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Min Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER__MIN_VALUE = TDOCUMENTED_CLASS_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER__NAME = TDOCUMENTED_CLASS_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER__TYPE = TDOCUMENTED_CLASS_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Type Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER__TYPE_KIND = TDOCUMENTED_CLASS_FEATURE_COUNT + 5; + + /** + * The number of structural features of the '<em>TService Parameter</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER_FEATURE_COUNT = TDOCUMENTED_CLASS_FEATURE_COUNT + 6; + + /** + * The number of operations of the '<em>TService Parameter</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_PARAMETER_OPERATION_COUNT = TDOCUMENTED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl <em>TService Type Realization</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceTypeRealization() + * @generated + */ + int TSERVICE_TYPE_REALIZATION = 45; + + /** + * The feature id for the '<em><b>Fc</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATION__FC = 0; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATION__NAME = 1; + + /** + * The feature id for the '<em><b>Pres Cond</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATION__PRES_COND = 2; + + /** + * The feature id for the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS = 3; + + /** + * The feature id for the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS_ID = 4; + + /** + * The feature id for the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATION__TYPE = 5; + + /** + * The feature id for the '<em><b>Type Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATION__TYPE_KIND = 6; + + /** + * The number of structural features of the '<em>TService Type Realization</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATION_FEATURE_COUNT = 7; + + /** + * The number of operations of the '<em>TService Type Realization</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATION_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationsImpl <em>TService Type Realizations</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceTypeRealizations() + * @generated + */ + int TSERVICE_TYPE_REALIZATIONS = 46; + + /** + * The feature id for the '<em><b>Service Type Realization</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION = 0; + + /** + * The number of structural features of the '<em>TService Type Realizations</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATIONS_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>TService Type Realizations</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSERVICE_TYPE_REALIZATIONS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl <em>TSub Data Attribute</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTSubDataAttribute() + * @generated + */ + int TSUB_DATA_ATTRIBUTE = 47; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__DEPRECATED = TDOCUMENTED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__DESC_ID = TDOCUMENTED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__INFORMATIVE = TDOCUMENTED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Default Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__DEFAULT_VALUE = TDOCUMENTED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Is Array</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__IS_ARRAY = TDOCUMENTED_CLASS_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Max Index Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE = TDOCUMENTED_CLASS_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Max Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__MAX_VALUE = TDOCUMENTED_CLASS_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Min Index</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__MIN_INDEX = TDOCUMENTED_CLASS_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Min Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__MIN_VALUE = TDOCUMENTED_CLASS_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__NAME = TDOCUMENTED_CLASS_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Pres Cond</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__PRES_COND = TDOCUMENTED_CLASS_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS = TDOCUMENTED_CLASS_FEATURE_COUNT + 8; + + /** + * The feature id for the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID = TDOCUMENTED_CLASS_FEATURE_COUNT + 9; + + /** + * The feature id for the '<em><b>Size Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE = TDOCUMENTED_CLASS_FEATURE_COUNT + 10; + + /** + * The feature id for the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__TYPE = TDOCUMENTED_CLASS_FEATURE_COUNT + 11; + + /** + * The feature id for the '<em><b>Type Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE__TYPE_KIND = TDOCUMENTED_CLASS_FEATURE_COUNT + 12; + + /** + * The number of structural features of the '<em>TSub Data Attribute</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE_FEATURE_COUNT = TDOCUMENTED_CLASS_FEATURE_COUNT + 13; + + /** + * The number of operations of the '<em>TSub Data Attribute</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_ATTRIBUTE_OPERATION_COUNT = TDOCUMENTED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl <em>TSub Data Object</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTSubDataObject() + * @generated + */ + int TSUB_DATA_OBJECT = 48; + + /** + * The feature id for the '<em><b>Deprecated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__DEPRECATED = TDOCUMENTED_CLASS__DEPRECATED; + + /** + * The feature id for the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__DESC_ID = TDOCUMENTED_CLASS__DESC_ID; + + /** + * The feature id for the '<em><b>Informative</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__INFORMATIVE = TDOCUMENTED_CLASS__INFORMATIVE; + + /** + * The feature id for the '<em><b>Is Array</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__IS_ARRAY = TDOCUMENTED_CLASS_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Max Index Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE = TDOCUMENTED_CLASS_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Min Index</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__MIN_INDEX = TDOCUMENTED_CLASS_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__NAME = TDOCUMENTED_CLASS_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Pres Cond</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__PRES_COND = TDOCUMENTED_CLASS_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__PRES_COND_ARGS = TDOCUMENTED_CLASS_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__PRES_COND_ARGS_ID = TDOCUMENTED_CLASS_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Size Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__SIZE_ATTRIBUTE = TDOCUMENTED_CLASS_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__TYPE = TDOCUMENTED_CLASS_FEATURE_COUNT + 8; + + /** + * The feature id for the '<em><b>Underlying Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__UNDERLYING_TYPE = TDOCUMENTED_CLASS_FEATURE_COUNT + 9; + + /** + * The feature id for the '<em><b>Underlying Type Kind</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND = TDOCUMENTED_CLASS_FEATURE_COUNT + 10; + + /** + * The number of structural features of the '<em>TSub Data Object</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT_FEATURE_COUNT = TDOCUMENTED_CLASS_FEATURE_COUNT + 11; + + /** + * The number of operations of the '<em>TSub Data Object</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TSUB_DATA_OBJECT_OPERATION_COUNT = TDOCUMENTED_CLASS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind <em>TACSI Services Kind</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTACSIServicesKind() + * @generated + */ + int TACSI_SERVICES_KIND = 50; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind <em>TCB Kind</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCBKind() + * @generated + */ + int TCB_KIND = 51; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind <em>TDefined Attribute Type Kind</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDefinedAttributeTypeKind() + * @generated + */ + int TDEFINED_ATTRIBUTE_TYPE_KIND = 52; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind <em>TLicense Kind</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLicenseKind() + * @generated + */ + int TLICENSE_KIND = 53; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage <em>TPub Stage</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPubStage() + * @generated + */ + int TPUB_STAGE = 54; + + /** + * The meta object id for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind <em>TUndefined Attribute Type Kind</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTUndefinedAttributeTypeKind() + * @generated + */ + int TUNDEFINED_ATTRIBUTE_TYPE_KIND = 55; + + /** + * The meta object id for the '<em>TAbbreviation Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAbbreviationName() + * @generated + */ + int TABBREVIATION_NAME = 56; + + /** + * The meta object id for the '<em>TAbstract LN Class Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAbstractLNClassName() + * @generated + */ + int TABSTRACT_LN_CLASS_NAME = 57; + + /** + * The meta object id for the '<em>TACSI Services Kind Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTACSIServicesKindObject() + * @generated + */ + int TACSI_SERVICES_KIND_OBJECT = 58; + + /** + * The meta object id for the '<em>TAttribute Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAttributeName() + * @generated + */ + int TATTRIBUTE_NAME = 59; + + /** + * The meta object id for the '<em>TAttribute Type Kind</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.common.util.Enumerator + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAttributeTypeKind() + * @generated + */ + int TATTRIBUTE_TYPE_KIND = 60; + + /** + * The meta object id for the '<em>TBasic Type Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTBasicTypeName() + * @generated + */ + int TBASIC_TYPE_NAME = 61; + + /** + * The meta object id for the '<em>TCB Kind Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCBKindObject() + * @generated + */ + int TCB_KIND_OBJECT = 62; + + /** + * The meta object id for the '<em>TCDC Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCDCName() + * @generated + */ + int TCDC_NAME = 63; + + /** + * The meta object id for the '<em>TData Object Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDataObjectName() + * @generated + */ + int TDATA_OBJECT_NAME = 64; + + /** + * The meta object id for the '<em>TDefined Attribute Type Kind Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDefinedAttributeTypeKindObject() + * @generated + */ + int TDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT = 65; + + /** + * The meta object id for the '<em>TDoc ID</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDocID() + * @generated + */ + int TDOC_ID = 66; + + /** + * The meta object id for the '<em>TEmpty String</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTEmptyString() + * @generated + */ + int TEMPTY_STRING = 67; + + /** + * The meta object id for the '<em>TFC Abbreviation</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTFCAbbreviation() + * @generated + */ + int TFC_ABBREVIATION = 68; + + /** + * The meta object id for the '<em>TIec61850 Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTIec61850Name() + * @generated + */ + int TIEC61850_NAME = 69; + + /** + * The meta object id for the '<em>TIec61850 Name String</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTIec61850NameString() + * @generated + */ + int TIEC61850_NAME_STRING = 70; + + /** + * The meta object id for the '<em>Tissues Type</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTissuesType() + * @generated + */ + int TISSUES_TYPE = 71; + + /** + * The meta object id for the '<em>TLicense Kind Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLicenseKindObject() + * @generated + */ + int TLICENSE_KIND_OBJECT = 72; + + /** + * The meta object id for the '<em>TLiteral Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLiteralName() + * @generated + */ + int TLITERAL_NAME = 73; + + /** + * The meta object id for the '<em>TLN Class Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLNClassName() + * @generated + */ + int TLN_CLASS_NAME = 74; + + /** + * The meta object id for the '<em>TNS Identifier</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSIdentifier() + * @generated + */ + int TNS_IDENTIFIER = 75; + + /** + * The meta object id for the '<em>TNS Release</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSRelease() + * @generated + */ + int TNS_RELEASE = 76; + + /** + * The meta object id for the '<em>TNS Release Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.Short + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSReleaseObject() + * @generated + */ + int TNS_RELEASE_OBJECT = 77; + + /** + * The meta object id for the '<em>TNS Revision</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSRevision() + * @generated + */ + int TNS_REVISION = 78; + + /** + * The meta object id for the '<em>TNS Version</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSVersion() + * @generated + */ + int TNS_VERSION = 79; + + /** + * The meta object id for the '<em>TNS Version Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.Integer + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSVersionObject() + * @generated + */ + int TNS_VERSION_OBJECT = 80; + + /** + * The meta object id for the '<em>TPresence Condition Argument</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPresenceConditionArgument() + * @generated + */ + int TPRESENCE_CONDITION_ARGUMENT = 81; + + /** + * The meta object id for the '<em>TPresence Condition Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPresenceConditionName() + * @generated + */ + int TPRESENCE_CONDITION_NAME = 82; + + /** + * The meta object id for the '<em>TPub Stage Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPubStageObject() + * @generated + */ + int TPUB_STAGE_OBJECT = 83; + + /** + * The meta object id for the '<em>TSub Data Object Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTSubDataObjectName() + * @generated + */ + int TSUB_DATA_OBJECT_NAME = 84; + + /** + * The meta object id for the '<em>TUML Version</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTUMLVersion() + * @generated + */ + int TUML_VERSION = 85; + + /** + * The meta object id for the '<em>TUndefined Attribute Type Kind Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTUndefinedAttributeTypeKindObject() + * @generated + */ + int TUNDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT = 86; + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType <em>Applies To Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Applies To Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType + * @generated + */ + EClass getAppliesToType(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getId() + * @see #getAppliesToType() + * @generated + */ + EAttribute getAppliesToType_Id(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getPublicationStage <em>Publication Stage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Publication Stage</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getPublicationStage() + * @see #getAppliesToType() + * @generated + */ + EAttribute getAppliesToType_PublicationStage(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRelease <em>Release</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Release</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRelease() + * @see #getAppliesToType() + * @generated + */ + EAttribute getAppliesToType_Release(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRevision <em>Revision</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Revision</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getRevision() + * @see #getAppliesToType() + * @generated + */ + EAttribute getAppliesToType_Revision(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getVersion <em>Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType#getVersion() + * @see #getAppliesToType() + * @generated + */ + EAttribute getAppliesToType_Version(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType <em>Depends On Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Depends On Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType + * @generated + */ + EClass getDependsOnType(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getId() + * @see #getDependsOnType() + * @generated + */ + EAttribute getDependsOnType_Id(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getPublicationStage <em>Publication Stage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Publication Stage</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getPublicationStage() + * @see #getDependsOnType() + * @generated + */ + EAttribute getDependsOnType_PublicationStage(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRelease <em>Release</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Release</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRelease() + * @see #getDependsOnType() + * @generated + */ + EAttribute getDependsOnType_Release(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRevision <em>Revision</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Revision</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getRevision() + * @see #getDependsOnType() + * @generated + */ + EAttribute getDependsOnType_Revision(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getVersion <em>Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType#getVersion() + * @see #getDependsOnType() + * @generated + */ + EAttribute getDependsOnType_Version(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot <em>Document Root</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Document Root</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot + * @generated + */ + EClass getDocumentRoot(); + + /** + * Returns the meta object for the attribute list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getMixed <em>Mixed</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute list '<em>Mixed</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getMixed() + * @see #getDocumentRoot() + * @generated + */ + EAttribute getDocumentRoot_Mixed(); + + /** + * Returns the meta object for the map '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the map '<em>XMLNS Prefix Map</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getXMLNSPrefixMap() + * @see #getDocumentRoot() + * @generated + */ + EReference getDocumentRoot_XMLNSPrefixMap(); + + /** + * Returns the meta object for the map '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getXSISchemaLocation <em>XSI Schema Location</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the map '<em>XSI Schema Location</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getXSISchemaLocation() + * @see #getDocumentRoot() + * @generated + */ + EReference getDocumentRoot_XSISchemaLocation(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getApplicableServiceNS <em>Applicable Service NS</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Applicable Service NS</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getApplicableServiceNS() + * @see #getDocumentRoot() + * @generated + */ + EReference getDocumentRoot_ApplicableServiceNS(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getCopyright <em>Copyright</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Copyright</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getCopyright() + * @see #getDocumentRoot() + * @generated + */ + EReference getDocumentRoot_Copyright(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getNS <em>NS</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>NS</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getNS() + * @see #getDocumentRoot() + * @generated + */ + EReference getDocumentRoot_NS(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getNSDoc <em>NS Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>NS Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getNSDoc() + * @see #getDocumentRoot() + * @generated + */ + EReference getDocumentRoot_NSDoc(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getServiceNS <em>Service NS</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Service NS</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot#getServiceNS() + * @see #getDocumentRoot() + * @generated + */ + EReference getDocumentRoot_ServiceNS(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType <em>Service Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Service Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType + * @generated + */ + EClass getServiceType(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType#getName() + * @see #getServiceType() + * @generated + */ + EAttribute getServiceType_Name(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation <em>TAbbreviation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TAbbreviation</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation + * @generated + */ + EClass getTAbbreviation(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation#getDescID <em>Desc ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Desc ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation#getDescID() + * @see #getTAbbreviation() + * @generated + */ + EAttribute getTAbbreviation_DescID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation#getName() + * @see #getTAbbreviation() + * @generated + */ + EAttribute getTAbbreviation_Name(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations <em>TAbbreviations</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TAbbreviations</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations + * @generated + */ + EClass getTAbbreviations(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations#getAbbreviation <em>Abbreviation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Abbreviation</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations#getAbbreviation() + * @see #getTAbbreviations() + * @generated + */ + EReference getTAbbreviations_Abbreviation(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass <em>TAbstract LN Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TAbstract LN Class</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass + * @generated + */ + EClass getTAbstractLNClass(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass#getName() + * @see #getTAbstractLNClass() + * @generated + */ + EAttribute getTAbstractLNClass_Name(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass <em>TAny LN Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TAny LN Class</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass + * @generated + */ + EClass getTAnyLNClass(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass#getDataObject <em>Data Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Data Object</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass#getDataObject() + * @see #getTAnyLNClass() + * @generated + */ + EReference getTAnyLNClass_DataObject(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass#getBase <em>Base</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Base</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass#getBase() + * @see #getTAnyLNClass() + * @generated + */ + EAttribute getTAnyLNClass_Base(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS <em>TApplicable Service NS</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TApplicable Service NS</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS + * @generated + */ + EClass getTApplicableServiceNS(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getServiceNsUsage <em>Service Ns Usage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Service Ns Usage</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getServiceNsUsage() + * @see #getTApplicableServiceNS() + * @generated + */ + EReference getTApplicableServiceNS_ServiceNsUsage(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getDate <em>Date</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Date</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getDate() + * @see #getTApplicableServiceNS() + * @generated + */ + EAttribute getTApplicableServiceNS_Date(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getVersion <em>Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getVersion() + * @see #getTApplicableServiceNS() + * @generated + */ + EAttribute getTApplicableServiceNS_Version(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices <em>TApplicable Services</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TApplicable Services</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices + * @generated + */ + EClass getTApplicableServices(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices#getService <em>Service</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Service</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices#getService() + * @see #getTApplicableServices() + * @generated + */ + EReference getTApplicableServices_Service(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices#getDataSetMemberOf <em>Data Set Member Of</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Data Set Member Of</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices#getDataSetMemberOf() + * @see #getTApplicableServices() + * @generated + */ + EReference getTApplicableServices_DataSetMemberOf(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType <em>TBasic Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TBasic Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType + * @generated + */ + EClass getTBasicType(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType#getDescID <em>Desc ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Desc ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType#getDescID() + * @see #getTBasicType() + * @generated + */ + EAttribute getTBasicType_DescID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType#getName() + * @see #getTBasicType() + * @generated + */ + EAttribute getTBasicType_Name(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes <em>TBasic Types</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TBasic Types</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes + * @generated + */ + EClass getTBasicTypes(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes#getBasicType <em>Basic Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Basic Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes#getBasicType() + * @see #getTBasicTypes() + * @generated + */ + EReference getTBasicTypes_BasicType(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC <em>TCDC</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TCDC</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC + * @generated + */ + EClass getTCDC(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getSubDataObject <em>Sub Data Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Sub Data Object</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getSubDataObject() + * @see #getTCDC() + * @generated + */ + EReference getTCDC_SubDataObject(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getDataAttribute <em>Data Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Data Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getDataAttribute() + * @see #getTCDC() + * @generated + */ + EReference getTCDC_DataAttribute(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getServiceParameter <em>Service Parameter</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Service Parameter</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getServiceParameter() + * @see #getTCDC() + * @generated + */ + EReference getTCDC_ServiceParameter(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isEnumParameterized <em>Enum Parameterized</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Enum Parameterized</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isEnumParameterized() + * @see #getTCDC() + * @generated + */ + EAttribute getTCDC_EnumParameterized(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getName() + * @see #getTCDC() + * @generated + */ + EAttribute getTCDC_Name(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isStatistics <em>Statistics</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Statistics</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isStatistics() + * @see #getTCDC() + * @generated + */ + EAttribute getTCDC_Statistics(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isTypeKindParameterized <em>Type Kind Parameterized</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type Kind Parameterized</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isTypeKindParameterized() + * @see #getTCDC() + * @generated + */ + EAttribute getTCDC_TypeKindParameterized(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getVariant <em>Variant</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Variant</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getVariant() + * @see #getTCDC() + * @generated + */ + EAttribute getTCDC_Variant(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs <em>TCD Cs</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TCD Cs</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs + * @generated + */ + EClass getTCDCs(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs#getCDC <em>CDC</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>CDC</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs#getCDC() + * @see #getTCDCs() + * @generated + */ + EReference getTCDCs_CDC(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges <em>TChanges</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TChanges</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges + * @generated + */ + EClass getTChanges(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getChangesID <em>Changes ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Changes ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getChangesID() + * @see #getTChanges() + * @generated + */ + EAttribute getTChanges_ChangesID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getDate <em>Date</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Date</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getDate() + * @see #getTChanges() + * @generated + */ + EAttribute getTChanges_Date(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRelease <em>Release</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Release</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRelease() + * @see #getTChanges() + * @generated + */ + EAttribute getTChanges_Release(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRevision <em>Revision</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Revision</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRevision() + * @see #getTChanges() + * @generated + */ + EAttribute getTChanges_Revision(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getTissues <em>Tissues</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Tissues</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getTissues() + * @see #getTChanges() + * @generated + */ + EAttribute getTChanges_Tissues(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getVersion <em>Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getVersion() + * @see #getTChanges() + * @generated + */ + EAttribute getTChanges_Version(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute <em>TConstructed Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TConstructed Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute + * @generated + */ + EClass getTConstructedAttribute(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute#getSubDataAttribute <em>Sub Data Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Sub Data Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute#getSubDataAttribute() + * @see #getTConstructedAttribute() + * @generated + */ + EReference getTConstructedAttribute_SubDataAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute#getName() + * @see #getTConstructedAttribute() + * @generated + */ + EAttribute getTConstructedAttribute_Name(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes <em>TConstructed Attributes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TConstructed Attributes</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes + * @generated + */ + EClass getTConstructedAttributes(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes#getConstructedAttribute <em>Constructed Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Constructed Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes#getConstructedAttribute() + * @see #getTConstructedAttributes() + * @generated + */ + EReference getTConstructedAttributes_ConstructedAttribute(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted <em>TCopyrighted</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TCopyrighted</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted + * @generated + */ + EClass getTCopyrighted(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted#getCopyright <em>Copyright</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Copyright</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted#getCopyright() + * @see #getTCopyrighted() + * @generated + */ + EReference getTCopyrighted_Copyright(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice <em>TCopyright Notice</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TCopyright Notice</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice + * @generated + */ + EClass getTCopyrightNotice(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice#getNotice <em>Notice</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Notice</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice#getNotice() + * @see #getTCopyrightNotice() + * @generated + */ + EReference getTCopyrightNotice_Notice(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice#getLicense <em>License</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>License</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice#getLicense() + * @see #getTCopyrightNotice() + * @generated + */ + EReference getTCopyrightNotice_License(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute <em>TData Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TData Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute + * @generated + */ + EClass getTDataAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDchg <em>Dchg</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Dchg</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDchg() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_Dchg(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getDefaultValue <em>Default Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Default Value</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getDefaultValue() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_DefaultValue(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDupd <em>Dupd</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Dupd</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDupd() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_Dupd(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getFc <em>Fc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Fc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getFc() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_Fc(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isIsArray <em>Is Array</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Is Array</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isIsArray() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_IsArray(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMaxIndexAttribute <em>Max Index Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Max Index Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMaxIndexAttribute() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_MaxIndexAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMaxValue <em>Max Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Max Value</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMaxValue() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_MaxValue(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMinIndex <em>Min Index</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Min Index</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMinIndex() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_MinIndex(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMinValue <em>Min Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Min Value</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMinValue() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_MinValue(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getName() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_Name(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCond <em>Pres Cond</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCond() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_PresCond(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCondArgs <em>Pres Cond Args</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCondArgs() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_PresCondArgs(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCondArgsID <em>Pres Cond Args ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCondArgsID() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_PresCondArgsID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isQchg <em>Qchg</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Qchg</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isQchg() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_Qchg(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getSizeAttribute <em>Size Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Size Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getSizeAttribute() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_SizeAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getType <em>Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getType() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_Type(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getTypeKind <em>Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getTypeKind() + * @see #getTDataAttribute() + * @generated + */ + EAttribute getTDataAttribute_TypeKind(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject <em>TData Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TData Object</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject + * @generated + */ + EClass getTDataObject(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCond <em>Ds Pres Cond</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Ds Pres Cond</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCond() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_DsPresCond(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCondArgs <em>Ds Pres Cond Args</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Ds Pres Cond Args</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCondArgs() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_DsPresCondArgs(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCondArgsID <em>Ds Pres Cond Args ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Ds Pres Cond Args ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCondArgsID() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_DsPresCondArgsID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getName() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_Name(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCond <em>Pres Cond</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCond() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_PresCond(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCondArgs <em>Pres Cond Args</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCondArgs() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_PresCondArgs(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCondArgsID <em>Pres Cond Args ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCondArgsID() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_PresCondArgsID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#isTransient <em>Transient</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Transient</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#isTransient() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_Transient(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getType <em>Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getType() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_Type(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getUnderlyingType <em>Underlying Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Underlying Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getUnderlyingType() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_UnderlyingType(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getUnderlyingTypeKind <em>Underlying Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Underlying Type Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getUnderlyingTypeKind() + * @see #getTDataObject() + * @generated + */ + EAttribute getTDataObject_UnderlyingTypeKind(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf <em>TData Set Member Of</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TData Set Member Of</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf + * @generated + */ + EClass getTDataSetMemberOf(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf#getCb <em>Cb</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Cb</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf#getCb() + * @see #getTDataSetMemberOf() + * @generated + */ + EAttribute getTDataSetMemberOf_Cb(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc <em>TDoc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TDoc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc + * @generated + */ + EClass getTDoc(); + + /** + * Returns the meta object for the attribute list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getMixed <em>Mixed</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute list '<em>Mixed</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getMixed() + * @see #getTDoc() + * @generated + */ + EAttribute getTDoc_Mixed(); + + /** + * Returns the meta object for the attribute list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getGroup <em>Group</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute list '<em>Group</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getGroup() + * @see #getTDoc() + * @generated + */ + EAttribute getTDoc_Group(); + + /** + * Returns the meta object for the attribute list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getAny <em>Any</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute list '<em>Any</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getAny() + * @see #getTDoc() + * @generated + */ + EAttribute getTDoc_Any(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getId() + * @see #getTDoc() + * @generated + */ + EAttribute getTDoc_Id(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass <em>TDocumented Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TDocumented Class</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass + * @generated + */ + EClass getTDocumentedClass(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isDeprecated <em>Deprecated</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Deprecated</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isDeprecated() + * @see #getTDocumentedClass() + * @generated + */ + EAttribute getTDocumentedClass_Deprecated(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#getDescID <em>Desc ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Desc ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#getDescID() + * @see #getTDocumentedClass() + * @generated + */ + EAttribute getTDocumentedClass_DescID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isInformative <em>Informative</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Informative</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isInformative() + * @see #getTDocumentedClass() + * @generated + */ + EAttribute getTDocumentedClass_Informative(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration <em>TEnumeration</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TEnumeration</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration + * @generated + */ + EClass getTEnumeration(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getLiteral <em>Literal</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Literal</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getLiteral() + * @see #getTEnumeration() + * @generated + */ + EReference getTEnumeration_Literal(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getInheritedFrom <em>Inherited From</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Inherited From</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getInheritedFrom() + * @see #getTEnumeration() + * @generated + */ + EAttribute getTEnumeration_InheritedFrom(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getName() + * @see #getTEnumeration() + * @generated + */ + EAttribute getTEnumeration_Name(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations <em>TEnumerations</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TEnumerations</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations + * @generated + */ + EClass getTEnumerations(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations#getEnumeration <em>Enumeration</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Enumeration</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations#getEnumeration() + * @see #getTEnumerations() + * @generated + */ + EReference getTEnumerations_Enumeration(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint <em>TFunctional Constraint</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TFunctional Constraint</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint + * @generated + */ + EClass getTFunctionalConstraint(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getApplicableServices <em>Applicable Services</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Applicable Services</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getApplicableServices() + * @see #getTFunctionalConstraint() + * @generated + */ + EReference getTFunctionalConstraint_ApplicableServices(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getAbbreviation <em>Abbreviation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Abbreviation</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getAbbreviation() + * @see #getTFunctionalConstraint() + * @generated + */ + EAttribute getTFunctionalConstraint_Abbreviation(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getDescID <em>Desc ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Desc ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getDescID() + * @see #getTFunctionalConstraint() + * @generated + */ + EAttribute getTFunctionalConstraint_DescID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getTitleID <em>Title ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Title ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getTitleID() + * @see #getTFunctionalConstraint() + * @generated + */ + EAttribute getTFunctionalConstraint_TitleID(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints <em>TFunctional Constraints</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TFunctional Constraints</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints + * @generated + */ + EClass getTFunctionalConstraints(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints#getFunctionalConstraint <em>Functional Constraint</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Functional Constraint</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints#getFunctionalConstraint() + * @see #getTFunctionalConstraints() + * @generated + */ + EReference getTFunctionalConstraints_FunctionalConstraint(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense <em>TLicense</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TLicense</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense + * @generated + */ + EClass getTLicense(); + + /** + * Returns the meta object for the attribute list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getMixed <em>Mixed</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute list '<em>Mixed</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getMixed() + * @see #getTLicense() + * @generated + */ + EAttribute getTLicense_Mixed(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getKind <em>Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getKind() + * @see #getTLicense() + * @generated + */ + EAttribute getTLicense_Kind(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getUri <em>Uri</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Uri</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getUri() + * @see #getTLicense() + * @generated + */ + EAttribute getTLicense_Uri(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral <em>TLiteral</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TLiteral</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral + * @generated + */ + EClass getTLiteral(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral#getLiteralVal <em>Literal Val</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Literal Val</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral#getLiteralVal() + * @see #getTLiteral() + * @generated + */ + EAttribute getTLiteral_LiteralVal(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral#getName() + * @see #getTLiteral() + * @generated + */ + EAttribute getTLiteral_Name(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass <em>TLN Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TLN Class</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass + * @generated + */ + EClass getTLNClass(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isCanHaveLOG <em>Can Have LOG</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Can Have LOG</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isCanHaveLOG() + * @see #getTLNClass() + * @generated + */ + EAttribute getTLNClass_CanHaveLOG(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isIsExtension <em>Is Extension</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Is Extension</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isIsExtension() + * @see #getTLNClass() + * @generated + */ + EAttribute getTLNClass_IsExtension(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#getName() + * @see #getTLNClass() + * @generated + */ + EAttribute getTLNClass_Name(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses <em>TLN Classes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TLN Classes</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses + * @generated + */ + EClass getTLNClasses(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses#getAbstractLNClass <em>Abstract LN Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Abstract LN Class</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses#getAbstractLNClass() + * @see #getTLNClasses() + * @generated + */ + EReference getTLNClasses_AbstractLNClass(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses#getLNClass <em>LN Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>LN Class</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses#getLNClass() + * @see #getTLNClasses() + * @generated + */ + EReference getTLNClasses_LNClass(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice <em>TNotice</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TNotice</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice + * @generated + */ + EClass getTNotice(); + + /** + * Returns the meta object for the attribute list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice#getMixed <em>Mixed</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute list '<em>Mixed</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice#getMixed() + * @see #getTNotice() + * @generated + */ + EAttribute getTNotice_Mixed(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS <em>TNS</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TNS</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS + * @generated + */ + EClass getTNS(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getChanges <em>Changes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Changes</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getChanges() + * @see #getTNS() + * @generated + */ + EReference getTNS_Changes(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getDependsOn <em>Depends On</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Depends On</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getDependsOn() + * @see #getTNS() + * @generated + */ + EReference getTNS_DependsOn(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getBasicTypes <em>Basic Types</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Basic Types</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getBasicTypes() + * @see #getTNS() + * @generated + */ + EReference getTNS_BasicTypes(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getFunctionalConstraints <em>Functional Constraints</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Functional Constraints</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getFunctionalConstraints() + * @see #getTNS() + * @generated + */ + EReference getTNS_FunctionalConstraints(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getPresenceConditions <em>Presence Conditions</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Presence Conditions</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getPresenceConditions() + * @see #getTNS() + * @generated + */ + EReference getTNS_PresenceConditions(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getAbbreviations <em>Abbreviations</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Abbreviations</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getAbbreviations() + * @see #getTNS() + * @generated + */ + EReference getTNS_Abbreviations(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getEnumerations <em>Enumerations</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Enumerations</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getEnumerations() + * @see #getTNS() + * @generated + */ + EReference getTNS_Enumerations(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getConstructedAttributes <em>Constructed Attributes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Constructed Attributes</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getConstructedAttributes() + * @see #getTNS() + * @generated + */ + EReference getTNS_ConstructedAttributes(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getCDCs <em>CD Cs</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>CD Cs</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getCDCs() + * @see #getTNS() + * @generated + */ + EReference getTNS_CDCs(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getLNClasses <em>LN Classes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>LN Classes</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getLNClasses() + * @see #getTNS() + * @generated + */ + EReference getTNS_LNClasses(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getDescID <em>Desc ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Desc ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getDescID() + * @see #getTNS() + * @generated + */ + EAttribute getTNS_DescID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getId() + * @see #getTNS() + * @generated + */ + EAttribute getTNS_Id(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getPublicationStage <em>Publication Stage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Publication Stage</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getPublicationStage() + * @see #getTNS() + * @generated + */ + EAttribute getTNS_PublicationStage(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRelease <em>Release</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Release</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRelease() + * @see #getTNS() + * @generated + */ + EAttribute getTNS_Release(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRevision <em>Revision</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Revision</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRevision() + * @see #getTNS() + * @generated + */ + EAttribute getTNS_Revision(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getUmlDate <em>Uml Date</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Uml Date</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getUmlDate() + * @see #getTNS() + * @generated + */ + EAttribute getTNS_UmlDate(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getUmlVersion <em>Uml Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Uml Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getUmlVersion() + * @see #getTNS() + * @generated + */ + EAttribute getTNS_UmlVersion(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getVersion <em>Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getVersion() + * @see #getTNS() + * @generated + */ + EAttribute getTNS_Version(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc <em>TNS Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TNS Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc + * @generated + */ + EClass getTNSDoc(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getDoc <em>Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getDoc() + * @see #getTNSDoc() + * @generated + */ + EReference getTNSDoc_Doc(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getId() + * @see #getTNSDoc() + * @generated + */ + EAttribute getTNSDoc_Id(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getLang <em>Lang</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Lang</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getLang() + * @see #getTNSDoc() + * @generated + */ + EAttribute getTNSDoc_Lang(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getPublicationStage <em>Publication Stage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Publication Stage</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getPublicationStage() + * @see #getTNSDoc() + * @generated + */ + EAttribute getTNSDoc_PublicationStage(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRelease <em>Release</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Release</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRelease() + * @see #getTNSDoc() + * @generated + */ + EAttribute getTNSDoc_Release(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRevision <em>Revision</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Revision</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRevision() + * @see #getTNSDoc() + * @generated + */ + EAttribute getTNSDoc_Revision(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getUmlDate <em>Uml Date</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Uml Date</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getUmlDate() + * @see #getTNSDoc() + * @generated + */ + EAttribute getTNSDoc_UmlDate(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getUmlVersion <em>Uml Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Uml Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getUmlVersion() + * @see #getTNSDoc() + * @generated + */ + EAttribute getTNSDoc_UmlVersion(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getVersion <em>Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getVersion() + * @see #getTNSDoc() + * @generated + */ + EAttribute getTNSDoc_Version(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition <em>TPresence Condition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TPresence Condition</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition + * @generated + */ + EClass getTPresenceCondition(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getArgument <em>Argument</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Argument</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getArgument() + * @see #getTPresenceCondition() + * @generated + */ + EAttribute getTPresenceCondition_Argument(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getDescID <em>Desc ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Desc ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getDescID() + * @see #getTPresenceCondition() + * @generated + */ + EAttribute getTPresenceCondition_DescID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getName() + * @see #getTPresenceCondition() + * @generated + */ + EAttribute getTPresenceCondition_Name(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getTitleID <em>Title ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Title ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getTitleID() + * @see #getTPresenceCondition() + * @generated + */ + EAttribute getTPresenceCondition_TitleID(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions <em>TPresence Conditions</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TPresence Conditions</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions + * @generated + */ + EClass getTPresenceConditions(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions#getPresenceCondition <em>Presence Condition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Presence Condition</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions#getPresenceCondition() + * @see #getTPresenceConditions() + * @generated + */ + EReference getTPresenceConditions_PresenceCondition(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC <em>TService CDC</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TService CDC</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC + * @generated + */ + EClass getTServiceCDC(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getServiceDataAttribute <em>Service Data Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Service Data Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getServiceDataAttribute() + * @see #getTServiceCDC() + * @generated + */ + EReference getTServiceCDC_ServiceDataAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getCdc <em>Cdc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Cdc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getCdc() + * @see #getTServiceCDC() + * @generated + */ + EAttribute getTServiceCDC_Cdc(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getVariant <em>Variant</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Variant</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getVariant() + * @see #getTServiceCDC() + * @generated + */ + EAttribute getTServiceCDC_Variant(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs <em>TService CD Cs</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TService CD Cs</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs + * @generated + */ + EClass getTServiceCDCs(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs#getServiceCDC <em>Service CDC</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Service CDC</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs#getServiceCDC() + * @see #getTServiceCDCs() + * @generated + */ + EReference getTServiceCDCs_ServiceCDC(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute <em>TService Constructed Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TService Constructed Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute + * @generated + */ + EClass getTServiceConstructedAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute#isTypeKindParameterized <em>Type Kind Parameterized</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type Kind Parameterized</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute#isTypeKindParameterized() + * @see #getTServiceConstructedAttribute() + * @generated + */ + EAttribute getTServiceConstructedAttribute_TypeKindParameterized(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes <em>TService Constructed Attributes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TService Constructed Attributes</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes + * @generated + */ + EClass getTServiceConstructedAttributes(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes#getServiceConstructedAttribute <em>Service Constructed Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Service Constructed Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes#getServiceConstructedAttribute() + * @see #getTServiceConstructedAttributes() + * @generated + */ + EReference getTServiceConstructedAttributes_ServiceConstructedAttribute(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute <em>TService Data Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TService Data Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute + * @generated + */ + EClass getTServiceDataAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getFc <em>Fc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Fc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getFc() + * @see #getTServiceDataAttribute() + * @generated + */ + EAttribute getTServiceDataAttribute_Fc(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getName() + * @see #getTServiceDataAttribute() + * @generated + */ + EAttribute getTServiceDataAttribute_Name(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCond <em>Pres Cond</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCond() + * @see #getTServiceDataAttribute() + * @generated + */ + EAttribute getTServiceDataAttribute_PresCond(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCondArgs <em>Pres Cond Args</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCondArgs() + * @see #getTServiceDataAttribute() + * @generated + */ + EAttribute getTServiceDataAttribute_PresCondArgs(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCondArgsID <em>Pres Cond Args ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCondArgsID() + * @see #getTServiceDataAttribute() + * @generated + */ + EAttribute getTServiceDataAttribute_PresCondArgsID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getType <em>Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getType() + * @see #getTServiceDataAttribute() + * @generated + */ + EAttribute getTServiceDataAttribute_Type(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getTypeKind <em>Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getTypeKind() + * @see #getTServiceDataAttribute() + * @generated + */ + EAttribute getTServiceDataAttribute_TypeKind(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getUnderlyingType <em>Underlying Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Underlying Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getUnderlyingType() + * @see #getTServiceDataAttribute() + * @generated + */ + EAttribute getTServiceDataAttribute_UnderlyingType(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getUnderlyingTypeKind <em>Underlying Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Underlying Type Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getUnderlyingTypeKind() + * @see #getTServiceDataAttribute() + * @generated + */ + EAttribute getTServiceDataAttribute_UnderlyingTypeKind(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS <em>TService NS</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TService NS</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS + * @generated + */ + EClass getTServiceNS(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getChanges <em>Changes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Changes</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getChanges() + * @see #getTServiceNS() + * @generated + */ + EReference getTServiceNS_Changes(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getFunctionalConstraints <em>Functional Constraints</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Functional Constraints</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getFunctionalConstraints() + * @see #getTServiceNS() + * @generated + */ + EReference getTServiceNS_FunctionalConstraints(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getPresenceConditions <em>Presence Conditions</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Presence Conditions</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getPresenceConditions() + * @see #getTServiceNS() + * @generated + */ + EReference getTServiceNS_PresenceConditions(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getAbbreviations <em>Abbreviations</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Abbreviations</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getAbbreviations() + * @see #getTServiceNS() + * @generated + */ + EReference getTServiceNS_Abbreviations(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceTypeRealizations <em>Service Type Realizations</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Service Type Realizations</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceTypeRealizations() + * @see #getTServiceNS() + * @generated + */ + EReference getTServiceNS_ServiceTypeRealizations(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceConstructedAttributes <em>Service Constructed Attributes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Service Constructed Attributes</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceConstructedAttributes() + * @see #getTServiceNS() + * @generated + */ + EReference getTServiceNS_ServiceConstructedAttributes(); + + /** + * Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceCDCs <em>Service CD Cs</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Service CD Cs</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceCDCs() + * @see #getTServiceNS() + * @generated + */ + EReference getTServiceNS_ServiceCDCs(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getDescID <em>Desc ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Desc ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getDescID() + * @see #getTServiceNS() + * @generated + */ + EAttribute getTServiceNS_DescID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getId() + * @see #getTServiceNS() + * @generated + */ + EAttribute getTServiceNS_Id(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getPublicationStage <em>Publication Stage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Publication Stage</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getPublicationStage() + * @see #getTServiceNS() + * @generated + */ + EAttribute getTServiceNS_PublicationStage(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRelease <em>Release</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Release</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRelease() + * @see #getTServiceNS() + * @generated + */ + EAttribute getTServiceNS_Release(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRevision <em>Revision</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Revision</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRevision() + * @see #getTServiceNS() + * @generated + */ + EAttribute getTServiceNS_Revision(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getUmlDate <em>Uml Date</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Uml Date</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getUmlDate() + * @see #getTServiceNS() + * @generated + */ + EAttribute getTServiceNS_UmlDate(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getUmlVersion <em>Uml Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Uml Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getUmlVersion() + * @see #getTServiceNS() + * @generated + */ + EAttribute getTServiceNS_UmlVersion(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getVersion <em>Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getVersion() + * @see #getTServiceNS() + * @generated + */ + EAttribute getTServiceNS_Version(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage <em>TService Ns Usage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TService Ns Usage</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage + * @generated + */ + EClass getTServiceNsUsage(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getAppliesTo <em>Applies To</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Applies To</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getAppliesTo() + * @see #getTServiceNsUsage() + * @generated + */ + EReference getTServiceNsUsage_AppliesTo(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getId() + * @see #getTServiceNsUsage() + * @generated + */ + EAttribute getTServiceNsUsage_Id(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getPublicationStage <em>Publication Stage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Publication Stage</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getPublicationStage() + * @see #getTServiceNsUsage() + * @generated + */ + EAttribute getTServiceNsUsage_PublicationStage(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRelease <em>Release</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Release</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRelease() + * @see #getTServiceNsUsage() + * @generated + */ + EAttribute getTServiceNsUsage_Release(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRevision <em>Revision</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Revision</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRevision() + * @see #getTServiceNsUsage() + * @generated + */ + EAttribute getTServiceNsUsage_Revision(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getVersion <em>Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Version</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getVersion() + * @see #getTServiceNsUsage() + * @generated + */ + EAttribute getTServiceNsUsage_Version(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter <em>TService Parameter</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TService Parameter</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter + * @generated + */ + EClass getTServiceParameter(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getDefaultValue <em>Default Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Default Value</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getDefaultValue() + * @see #getTServiceParameter() + * @generated + */ + EAttribute getTServiceParameter_DefaultValue(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getMaxValue <em>Max Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Max Value</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getMaxValue() + * @see #getTServiceParameter() + * @generated + */ + EAttribute getTServiceParameter_MaxValue(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getMinValue <em>Min Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Min Value</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getMinValue() + * @see #getTServiceParameter() + * @generated + */ + EAttribute getTServiceParameter_MinValue(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getName() + * @see #getTServiceParameter() + * @generated + */ + EAttribute getTServiceParameter_Name(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getType <em>Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getType() + * @see #getTServiceParameter() + * @generated + */ + EAttribute getTServiceParameter_Type(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getTypeKind <em>Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getTypeKind() + * @see #getTServiceParameter() + * @generated + */ + EAttribute getTServiceParameter_TypeKind(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization <em>TService Type Realization</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TService Type Realization</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization + * @generated + */ + EClass getTServiceTypeRealization(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getFc <em>Fc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Fc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getFc() + * @see #getTServiceTypeRealization() + * @generated + */ + EAttribute getTServiceTypeRealization_Fc(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getName() + * @see #getTServiceTypeRealization() + * @generated + */ + EAttribute getTServiceTypeRealization_Name(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCond <em>Pres Cond</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCond() + * @see #getTServiceTypeRealization() + * @generated + */ + EAttribute getTServiceTypeRealization_PresCond(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCondArgs <em>Pres Cond Args</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCondArgs() + * @see #getTServiceTypeRealization() + * @generated + */ + EAttribute getTServiceTypeRealization_PresCondArgs(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCondArgsID <em>Pres Cond Args ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCondArgsID() + * @see #getTServiceTypeRealization() + * @generated + */ + EAttribute getTServiceTypeRealization_PresCondArgsID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getType <em>Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getType() + * @see #getTServiceTypeRealization() + * @generated + */ + EAttribute getTServiceTypeRealization_Type(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getTypeKind <em>Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getTypeKind() + * @see #getTServiceTypeRealization() + * @generated + */ + EAttribute getTServiceTypeRealization_TypeKind(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations <em>TService Type Realizations</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TService Type Realizations</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations + * @generated + */ + EClass getTServiceTypeRealizations(); + + /** + * Returns the meta object for the containment reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations#getServiceTypeRealization <em>Service Type Realization</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Service Type Realization</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations#getServiceTypeRealization() + * @see #getTServiceTypeRealizations() + * @generated + */ + EReference getTServiceTypeRealizations_ServiceTypeRealization(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute <em>TSub Data Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TSub Data Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute + * @generated + */ + EClass getTSubDataAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getDefaultValue <em>Default Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Default Value</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getDefaultValue() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_DefaultValue(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#isIsArray <em>Is Array</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Is Array</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#isIsArray() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_IsArray(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMaxIndexAttribute <em>Max Index Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Max Index Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMaxIndexAttribute() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_MaxIndexAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMaxValue <em>Max Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Max Value</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMaxValue() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_MaxValue(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMinIndex <em>Min Index</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Min Index</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMinIndex() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_MinIndex(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMinValue <em>Min Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Min Value</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMinValue() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_MinValue(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getName() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_Name(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCond <em>Pres Cond</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCond() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_PresCond(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCondArgs <em>Pres Cond Args</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCondArgs() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_PresCondArgs(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCondArgsID <em>Pres Cond Args ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCondArgsID() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_PresCondArgsID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getSizeAttribute <em>Size Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Size Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getSizeAttribute() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_SizeAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getType <em>Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getType() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_Type(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getTypeKind <em>Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getTypeKind() + * @see #getTSubDataAttribute() + * @generated + */ + EAttribute getTSubDataAttribute_TypeKind(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject <em>TSub Data Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TSub Data Object</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject + * @generated + */ + EClass getTSubDataObject(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#isIsArray <em>Is Array</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Is Array</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#isIsArray() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_IsArray(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getMaxIndexAttribute <em>Max Index Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Max Index Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getMaxIndexAttribute() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_MaxIndexAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getMinIndex <em>Min Index</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Min Index</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getMinIndex() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_MinIndex(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getName() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_Name(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCond <em>Pres Cond</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCond() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_PresCond(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCondArgs <em>Pres Cond Args</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCondArgs() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_PresCondArgs(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCondArgsID <em>Pres Cond Args ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pres Cond Args ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCondArgsID() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_PresCondArgsID(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getSizeAttribute <em>Size Attribute</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Size Attribute</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getSizeAttribute() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_SizeAttribute(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getType <em>Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getType() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_Type(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getUnderlyingType <em>Underlying Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Underlying Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getUnderlyingType() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_UnderlyingType(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getUnderlyingTypeKind <em>Underlying Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Underlying Type Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getUnderlyingTypeKind() + * @see #getTSubDataObject() + * @generated + */ + EAttribute getTSubDataObject_UnderlyingTypeKind(); + + /** + * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass <em>TTitled Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>TTitled Class</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass + * @generated + */ + EClass getTTitledClass(); + + /** + * Returns the meta object for the attribute '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass#getTitleID <em>Title ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Title ID</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass#getTitleID() + * @see #getTTitledClass() + * @generated + */ + EAttribute getTTitledClass_TitleID(); + + /** + * Returns the meta object for enum '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind <em>TACSI Services Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>TACSI Services Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind + * @generated + */ + EEnum getTACSIServicesKind(); + + /** + * Returns the meta object for enum '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind <em>TCB Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>TCB Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind + * @generated + */ + EEnum getTCBKind(); + + /** + * Returns the meta object for enum '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind <em>TDefined Attribute Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>TDefined Attribute Type Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @generated + */ + EEnum getTDefinedAttributeTypeKind(); + + /** + * Returns the meta object for enum '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind <em>TLicense Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>TLicense Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind + * @generated + */ + EEnum getTLicenseKind(); + + /** + * Returns the meta object for enum '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage <em>TPub Stage</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>TPub Stage</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @generated + */ + EEnum getTPubStage(); + + /** + * Returns the meta object for enum '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind <em>TUndefined Attribute Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>TUndefined Attribute Type Kind</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind + * @generated + */ + EEnum getTUndefinedAttributeTypeKind(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TAbbreviation Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of an abbreviation. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TAbbreviation Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tAbbreviationName' baseType='http://www.eclipse.org/emf/2003/XMLType#normalizedString'" + * @generated + */ + EDataType getTAbbreviationName(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TAbstract LN Class Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of an abstract logical node. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TAbstract LN Class Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tAbstractLNClassName' baseType='tIec61850Name'" + * @generated + */ + EDataType getTAbstractLNClassName(); + + /** + * Returns the meta object for data type '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind <em>TACSI Services Kind Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>TACSI Services Kind Object</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind + * @model instanceClass="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind" + * extendedMetaData="name='tACSIServicesKind:Object' baseType='tACSIServicesKind'" + * @generated + */ + EDataType getTACSIServicesKindObject(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TAttribute Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of a Data Attribute. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TAttribute Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tAttributeName' baseType='tIec61850Name'" + * @generated + */ + EDataType getTAttributeName(); + + /** + * Returns the meta object for data type '{@link org.eclipse.emf.common.util.Enumerator <em>TAttribute Type Kind</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Type kind of a data attribute, which may be "undefined". + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TAttribute Type Kind</em>'. + * @see org.eclipse.emf.common.util.Enumerator + * @model instanceClass="org.eclipse.emf.common.util.Enumerator" + * extendedMetaData="name='tAttributeTypeKind' memberTypes='tDefinedAttributeTypeKind tUndefinedAttributeTypeKind'" + * @generated + */ + EDataType getTAttributeTypeKind(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TBasic Type Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Type describing the name of a basic type of a data attribute. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TBasic Type Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tBasicTypeName' baseType='http://www.eclipse.org/emf/2003/XMLType#token' minLength='1'" + * @generated + */ + EDataType getTBasicTypeName(); + + /** + * Returns the meta object for data type '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind <em>TCB Kind Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>TCB Kind Object</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind + * @model instanceClass="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind" + * extendedMetaData="name='tCBKind:Object' baseType='tCBKind'" + * @generated + */ + EDataType getTCBKindObject(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TCDC Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of a Common Data Class (CDC). + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TCDC Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tCDCName' baseType='tIec61850Name' minLength='1'" + * @generated + */ + EDataType getTCDCName(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TData Object Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of a Data Object. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TData Object Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tDataObjectName' baseType='tIec61850Name' maxLength='12'" + * @generated + */ + EDataType getTDataObjectName(); + + /** + * Returns the meta object for data type '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind <em>TDefined Attribute Type Kind Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>TDefined Attribute Type Kind Object</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @model instanceClass="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind" + * extendedMetaData="name='tDefinedAttributeTypeKind:Object' baseType='tDefinedAttributeTypeKind'" + * @generated + */ + EDataType getTDefinedAttributeTypeKindObject(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TDoc ID</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identifier referring to a documentation string, available in a sibling file. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TDoc ID</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tDocID' baseType='http://www.eclipse.org/emf/2003/XMLType#normalizedString' minLength='1'" + * @generated + */ + EDataType getTDocID(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TEmpty String</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The empty string. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TEmpty String</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tEmptyString' baseType='http://www.eclipse.org/emf/2003/XMLType#normalizedString' maxLength='0'" + * @generated + */ + EDataType getTEmptyString(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TFC Abbreviation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Functional Constraint abbreviation. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TFC Abbreviation</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tFCAbbreviation' baseType='http://www.eclipse.org/emf/2003/XMLType#token' minLength='1' pattern='[\\p{IsBasicLatin}]+'" + * @generated + */ + EDataType getTFCAbbreviation(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TIec61850 Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>TIec61850 Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tIec61850Name' baseType='http://www.eclipse.org/emf/2003/XMLType#Name' minLength='1' pattern='[\\p{IsBasicLatin}\\p{IsLatin-1Supplement}]+'" + * @generated + */ + EDataType getTIec61850Name(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TIec61850 Name String</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>TIec61850 Name String</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tIec61850NameString' baseType='http://www.eclipse.org/emf/2003/XMLType#normalizedString' pattern='[\\p{IsBasicLatin}\\p{IsLatin-1Supplement}]+'" + * @generated + */ + EDataType getTIec61850NameString(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>Tissues Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>Tissues Type</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tissues_._type' baseType='http://www.eclipse.org/emf/2003/XMLType#normalizedString' minLength='1'" + * @generated + */ + EDataType getTissuesType(); + + /** + * Returns the meta object for data type '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind <em>TLicense Kind Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>TLicense Kind Object</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind + * @model instanceClass="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind" + * extendedMetaData="name='tLicenseKind:Object' baseType='tLicenseKind'" + * @generated + */ + EDataType getTLicenseKindObject(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TLiteral Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of an enumeration literal. Maybe the empty string. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TLiteral Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tLiteralName' baseType='http://www.eclipse.org/emf/2003/XMLType#normalizedString' maxLength='127' pattern='[\\p{IsBasicLatin}\\p{IsLatin-1Supplement}]*'" + * @generated + */ + EDataType getTLiteralName(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TLN Class Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of a (non-abstract) logical node class. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TLN Class Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tLNClassName' baseType='http://www.eclipse.org/emf/2003/XMLType#Name' pattern='LLN0 [A-Z]{4}'" + * @generated + */ + EDataType getTLNClassName(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TNS Identifier</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identifier of a namespace. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TNS Identifier</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tNSIdentifier' baseType='http://www.eclipse.org/emf/2003/XMLType#normalizedString' pattern='\\p{IsBasicLatin}+'" + * @generated + */ + EDataType getTNSIdentifier(); + + /** + * Returns the meta object for data type '<em>TNS Release</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Release of a namespace (number between 1 and 255), distinguishing between releases of a same namespace version and revision. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TNS Release</em>'. + * @model instanceClass="short" + * extendedMetaData="name='tNSRelease' baseType='http://www.eclipse.org/emf/2003/XMLType#unsignedByte' minExclusive='0'" + * @generated + */ + EDataType getTNSRelease(); + + /** + * Returns the meta object for data type '{@link java.lang.Short <em>TNS Release Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>TNS Release Object</em>'. + * @see java.lang.Short + * @model instanceClass="java.lang.Short" + * extendedMetaData="name='tNSRelease:Object' baseType='tNSRelease'" + * @generated + */ + EDataType getTNSReleaseObject(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TNS Revision</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Revision of a namespace (a basic latin upper-case letter), distinguishing between revisions of a same namespace version. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TNS Revision</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tNSRevision' baseType='http://www.eclipse.org/emf/2003/XMLType#token' pattern='[A-Z]'" + * @generated + */ + EDataType getTNSRevision(); + + /** + * Returns the meta object for data type '<em>TNS Version</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version of a namespace (a year between 2002 and 2099). + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TNS Version</em>'. + * @model instanceClass="int" + * extendedMetaData="name='tNSVersion' baseType='http://www.eclipse.org/emf/2003/XMLType#unsignedShort' minInclusive='2002' maxInclusive='2099'" + * @generated + */ + EDataType getTNSVersion(); + + /** + * Returns the meta object for data type '{@link java.lang.Integer <em>TNS Version Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>TNS Version Object</em>'. + * @see java.lang.Integer + * @model instanceClass="java.lang.Integer" + * extendedMetaData="name='tNSVersion:Object' baseType='tNSVersion'" + * @generated + */ + EDataType getTNSVersionObject(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TPresence Condition Argument</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Argument to (some) presence conditions. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TPresence Condition Argument</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tPresenceConditionArgument' baseType='http://www.eclipse.org/emf/2003/XMLType#normalizedString'" + * @generated + */ + EDataType getTPresenceConditionArgument(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TPresence Condition Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of a presence condition of a child. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TPresence Condition Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tPresenceConditionName' baseType='http://www.eclipse.org/emf/2003/XMLType#normalizedString'" + * @generated + */ + EDataType getTPresenceConditionName(); + + /** + * Returns the meta object for data type '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage <em>TPub Stage Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>TPub Stage Object</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @model instanceClass="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage" + * extendedMetaData="name='tPubStage:Object' baseType='tPubStage'" + * @generated + */ + EDataType getTPubStageObject(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TSub Data Object Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of a Sub-Data Object. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TSub Data Object Name</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tSubDataObjectName' baseType='tIec61850Name'" + * @generated + */ + EDataType getTSubDataObjectName(); + + /** + * Returns the meta object for data type '{@link java.lang.String <em>TUML Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version of the UML model used to generate this NSD. + * <!-- end-model-doc --> + * @return the meta object for data type '<em>TUML Version</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * extendedMetaData="name='tUMLVersion' baseType='http://www.eclipse.org/emf/2003/XMLType#Name' minLength='1'" + * @generated + */ + EDataType getTUMLVersion(); + + /** + * Returns the meta object for data type '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind <em>TUndefined Attribute Type Kind Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>TUndefined Attribute Type Kind Object</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind + * @model instanceClass="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind" + * extendedMetaData="name='tUndefinedAttributeTypeKind:Object' baseType='tUndefinedAttributeTypeKind'" + * @generated + */ + EDataType getTUndefinedAttributeTypeKindObject(); + + /** + * 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 + */ + NsdFactory getNsdFactory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AppliesToTypeImpl <em>Applies To Type</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AppliesToTypeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getAppliesToType() + * @generated + */ + EClass APPLIES_TO_TYPE = eINSTANCE.getAppliesToType(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute APPLIES_TO_TYPE__ID = eINSTANCE.getAppliesToType_Id(); + + /** + * The meta object literal for the '<em><b>Publication Stage</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute APPLIES_TO_TYPE__PUBLICATION_STAGE = eINSTANCE.getAppliesToType_PublicationStage(); + + /** + * The meta object literal for the '<em><b>Release</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute APPLIES_TO_TYPE__RELEASE = eINSTANCE.getAppliesToType_Release(); + + /** + * The meta object literal for the '<em><b>Revision</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute APPLIES_TO_TYPE__REVISION = eINSTANCE.getAppliesToType_Revision(); + + /** + * The meta object literal for the '<em><b>Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute APPLIES_TO_TYPE__VERSION = eINSTANCE.getAppliesToType_Version(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DependsOnTypeImpl <em>Depends On Type</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DependsOnTypeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getDependsOnType() + * @generated + */ + EClass DEPENDS_ON_TYPE = eINSTANCE.getDependsOnType(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DEPENDS_ON_TYPE__ID = eINSTANCE.getDependsOnType_Id(); + + /** + * The meta object literal for the '<em><b>Publication Stage</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DEPENDS_ON_TYPE__PUBLICATION_STAGE = eINSTANCE.getDependsOnType_PublicationStage(); + + /** + * The meta object literal for the '<em><b>Release</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DEPENDS_ON_TYPE__RELEASE = eINSTANCE.getDependsOnType_Release(); + + /** + * The meta object literal for the '<em><b>Revision</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DEPENDS_ON_TYPE__REVISION = eINSTANCE.getDependsOnType_Revision(); + + /** + * The meta object literal for the '<em><b>Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DEPENDS_ON_TYPE__VERSION = eINSTANCE.getDependsOnType_Version(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl <em>Document Root</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getDocumentRoot() + * @generated + */ + EClass DOCUMENT_ROOT = eINSTANCE.getDocumentRoot(); + + /** + * The meta object literal for the '<em><b>Mixed</b></em>' attribute list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DOCUMENT_ROOT__MIXED = eINSTANCE.getDocumentRoot_Mixed(); + + /** + * The meta object literal for the '<em><b>XMLNS Prefix Map</b></em>' map feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOCUMENT_ROOT__XMLNS_PREFIX_MAP = eINSTANCE.getDocumentRoot_XMLNSPrefixMap(); + + /** + * The meta object literal for the '<em><b>XSI Schema Location</b></em>' map feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOCUMENT_ROOT__XSI_SCHEMA_LOCATION = eINSTANCE.getDocumentRoot_XSISchemaLocation(); + + /** + * The meta object literal for the '<em><b>Applicable Service NS</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOCUMENT_ROOT__APPLICABLE_SERVICE_NS = eINSTANCE.getDocumentRoot_ApplicableServiceNS(); + + /** + * The meta object literal for the '<em><b>Copyright</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOCUMENT_ROOT__COPYRIGHT = eINSTANCE.getDocumentRoot_Copyright(); + + /** + * The meta object literal for the '<em><b>NS</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOCUMENT_ROOT__NS = eINSTANCE.getDocumentRoot_NS(); + + /** + * The meta object literal for the '<em><b>NS Doc</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOCUMENT_ROOT__NS_DOC = eINSTANCE.getDocumentRoot_NSDoc(); + + /** + * The meta object literal for the '<em><b>Service NS</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOCUMENT_ROOT__SERVICE_NS = eINSTANCE.getDocumentRoot_ServiceNS(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceTypeImpl <em>Service Type</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceTypeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getServiceType() + * @generated + */ + EClass SERVICE_TYPE = eINSTANCE.getServiceType(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute SERVICE_TYPE__NAME = eINSTANCE.getServiceType_Name(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationImpl <em>TAbbreviation</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAbbreviation() + * @generated + */ + EClass TABBREVIATION = eINSTANCE.getTAbbreviation(); + + /** + * The meta object literal for the '<em><b>Desc ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TABBREVIATION__DESC_ID = eINSTANCE.getTAbbreviation_DescID(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TABBREVIATION__NAME = eINSTANCE.getTAbbreviation_Name(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationsImpl <em>TAbbreviations</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAbbreviations() + * @generated + */ + EClass TABBREVIATIONS = eINSTANCE.getTAbbreviations(); + + /** + * The meta object literal for the '<em><b>Abbreviation</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TABBREVIATIONS__ABBREVIATION = eINSTANCE.getTAbbreviations_Abbreviation(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbstractLNClassImpl <em>TAbstract LN Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbstractLNClassImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAbstractLNClass() + * @generated + */ + EClass TABSTRACT_LN_CLASS = eINSTANCE.getTAbstractLNClass(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TABSTRACT_LN_CLASS__NAME = eINSTANCE.getTAbstractLNClass_Name(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAnyLNClassImpl <em>TAny LN Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAnyLNClassImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAnyLNClass() + * @generated + */ + EClass TANY_LN_CLASS = eINSTANCE.getTAnyLNClass(); + + /** + * The meta object literal for the '<em><b>Data Object</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TANY_LN_CLASS__DATA_OBJECT = eINSTANCE.getTAnyLNClass_DataObject(); + + /** + * The meta object literal for the '<em><b>Base</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TANY_LN_CLASS__BASE = eINSTANCE.getTAnyLNClass_Base(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServiceNSImpl <em>TApplicable Service NS</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServiceNSImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTApplicableServiceNS() + * @generated + */ + EClass TAPPLICABLE_SERVICE_NS = eINSTANCE.getTApplicableServiceNS(); + + /** + * The meta object literal for the '<em><b>Service Ns Usage</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE = eINSTANCE.getTApplicableServiceNS_ServiceNsUsage(); + + /** + * The meta object literal for the '<em><b>Date</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TAPPLICABLE_SERVICE_NS__DATE = eINSTANCE.getTApplicableServiceNS_Date(); + + /** + * The meta object literal for the '<em><b>Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TAPPLICABLE_SERVICE_NS__VERSION = eINSTANCE.getTApplicableServiceNS_Version(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServicesImpl <em>TApplicable Services</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServicesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTApplicableServices() + * @generated + */ + EClass TAPPLICABLE_SERVICES = eINSTANCE.getTApplicableServices(); + + /** + * The meta object literal for the '<em><b>Service</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TAPPLICABLE_SERVICES__SERVICE = eINSTANCE.getTApplicableServices_Service(); + + /** + * The meta object literal for the '<em><b>Data Set Member Of</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF = eINSTANCE.getTApplicableServices_DataSetMemberOf(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypeImpl <em>TBasic Type</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTBasicType() + * @generated + */ + EClass TBASIC_TYPE = eINSTANCE.getTBasicType(); + + /** + * The meta object literal for the '<em><b>Desc ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TBASIC_TYPE__DESC_ID = eINSTANCE.getTBasicType_DescID(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TBASIC_TYPE__NAME = eINSTANCE.getTBasicType_Name(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypesImpl <em>TBasic Types</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTBasicTypes() + * @generated + */ + EClass TBASIC_TYPES = eINSTANCE.getTBasicTypes(); + + /** + * The meta object literal for the '<em><b>Basic Type</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TBASIC_TYPES__BASIC_TYPE = eINSTANCE.getTBasicTypes_BasicType(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl <em>TCDC</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCDC() + * @generated + */ + EClass TCDC = eINSTANCE.getTCDC(); + + /** + * The meta object literal for the '<em><b>Sub Data Object</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TCDC__SUB_DATA_OBJECT = eINSTANCE.getTCDC_SubDataObject(); + + /** + * The meta object literal for the '<em><b>Data Attribute</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TCDC__DATA_ATTRIBUTE = eINSTANCE.getTCDC_DataAttribute(); + + /** + * The meta object literal for the '<em><b>Service Parameter</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TCDC__SERVICE_PARAMETER = eINSTANCE.getTCDC_ServiceParameter(); + + /** + * The meta object literal for the '<em><b>Enum Parameterized</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCDC__ENUM_PARAMETERIZED = eINSTANCE.getTCDC_EnumParameterized(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCDC__NAME = eINSTANCE.getTCDC_Name(); + + /** + * The meta object literal for the '<em><b>Statistics</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCDC__STATISTICS = eINSTANCE.getTCDC_Statistics(); + + /** + * The meta object literal for the '<em><b>Type Kind Parameterized</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCDC__TYPE_KIND_PARAMETERIZED = eINSTANCE.getTCDC_TypeKindParameterized(); + + /** + * The meta object literal for the '<em><b>Variant</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCDC__VARIANT = eINSTANCE.getTCDC_Variant(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCsImpl <em>TCD Cs</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCDCs() + * @generated + */ + EClass TCD_CS = eINSTANCE.getTCDCs(); + + /** + * The meta object literal for the '<em><b>CDC</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TCD_CS__CDC = eINSTANCE.getTCDCs_CDC(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TChangesImpl <em>TChanges</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TChangesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTChanges() + * @generated + */ + EClass TCHANGES = eINSTANCE.getTChanges(); + + /** + * The meta object literal for the '<em><b>Changes ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCHANGES__CHANGES_ID = eINSTANCE.getTChanges_ChangesID(); + + /** + * The meta object literal for the '<em><b>Date</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCHANGES__DATE = eINSTANCE.getTChanges_Date(); + + /** + * The meta object literal for the '<em><b>Release</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCHANGES__RELEASE = eINSTANCE.getTChanges_Release(); + + /** + * The meta object literal for the '<em><b>Revision</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCHANGES__REVISION = eINSTANCE.getTChanges_Revision(); + + /** + * The meta object literal for the '<em><b>Tissues</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCHANGES__TISSUES = eINSTANCE.getTChanges_Tissues(); + + /** + * The meta object literal for the '<em><b>Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCHANGES__VERSION = eINSTANCE.getTChanges_Version(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributeImpl <em>TConstructed Attribute</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTConstructedAttribute() + * @generated + */ + EClass TCONSTRUCTED_ATTRIBUTE = eINSTANCE.getTConstructedAttribute(); + + /** + * The meta object literal for the '<em><b>Sub Data Attribute</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE = eINSTANCE.getTConstructedAttribute_SubDataAttribute(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TCONSTRUCTED_ATTRIBUTE__NAME = eINSTANCE.getTConstructedAttribute_Name(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributesImpl <em>TConstructed Attributes</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTConstructedAttributes() + * @generated + */ + EClass TCONSTRUCTED_ATTRIBUTES = eINSTANCE.getTConstructedAttributes(); + + /** + * The meta object literal for the '<em><b>Constructed Attribute</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE = eINSTANCE + .getTConstructedAttributes_ConstructedAttribute(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightedImpl <em>TCopyrighted</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightedImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCopyrighted() + * @generated + */ + EClass TCOPYRIGHTED = eINSTANCE.getTCopyrighted(); + + /** + * The meta object literal for the '<em><b>Copyright</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TCOPYRIGHTED__COPYRIGHT = eINSTANCE.getTCopyrighted_Copyright(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightNoticeImpl <em>TCopyright Notice</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightNoticeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCopyrightNotice() + * @generated + */ + EClass TCOPYRIGHT_NOTICE = eINSTANCE.getTCopyrightNotice(); + + /** + * The meta object literal for the '<em><b>Notice</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TCOPYRIGHT_NOTICE__NOTICE = eINSTANCE.getTCopyrightNotice_Notice(); + + /** + * The meta object literal for the '<em><b>License</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TCOPYRIGHT_NOTICE__LICENSE = eINSTANCE.getTCopyrightNotice_License(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl <em>TData Attribute</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDataAttribute() + * @generated + */ + EClass TDATA_ATTRIBUTE = eINSTANCE.getTDataAttribute(); + + /** + * The meta object literal for the '<em><b>Dchg</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__DCHG = eINSTANCE.getTDataAttribute_Dchg(); + + /** + * The meta object literal for the '<em><b>Default Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__DEFAULT_VALUE = eINSTANCE.getTDataAttribute_DefaultValue(); + + /** + * The meta object literal for the '<em><b>Dupd</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__DUPD = eINSTANCE.getTDataAttribute_Dupd(); + + /** + * The meta object literal for the '<em><b>Fc</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__FC = eINSTANCE.getTDataAttribute_Fc(); + + /** + * The meta object literal for the '<em><b>Is Array</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__IS_ARRAY = eINSTANCE.getTDataAttribute_IsArray(); + + /** + * The meta object literal for the '<em><b>Max Index Attribute</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE = eINSTANCE.getTDataAttribute_MaxIndexAttribute(); + + /** + * The meta object literal for the '<em><b>Max Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__MAX_VALUE = eINSTANCE.getTDataAttribute_MaxValue(); + + /** + * The meta object literal for the '<em><b>Min Index</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__MIN_INDEX = eINSTANCE.getTDataAttribute_MinIndex(); + + /** + * The meta object literal for the '<em><b>Min Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__MIN_VALUE = eINSTANCE.getTDataAttribute_MinValue(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__NAME = eINSTANCE.getTDataAttribute_Name(); + + /** + * The meta object literal for the '<em><b>Pres Cond</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__PRES_COND = eINSTANCE.getTDataAttribute_PresCond(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__PRES_COND_ARGS = eINSTANCE.getTDataAttribute_PresCondArgs(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__PRES_COND_ARGS_ID = eINSTANCE.getTDataAttribute_PresCondArgsID(); + + /** + * The meta object literal for the '<em><b>Qchg</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__QCHG = eINSTANCE.getTDataAttribute_Qchg(); + + /** + * The meta object literal for the '<em><b>Size Attribute</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__SIZE_ATTRIBUTE = eINSTANCE.getTDataAttribute_SizeAttribute(); + + /** + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__TYPE = eINSTANCE.getTDataAttribute_Type(); + + /** + * The meta object literal for the '<em><b>Type Kind</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_ATTRIBUTE__TYPE_KIND = eINSTANCE.getTDataAttribute_TypeKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl <em>TData Object</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDataObject() + * @generated + */ + EClass TDATA_OBJECT = eINSTANCE.getTDataObject(); + + /** + * The meta object literal for the '<em><b>Ds Pres Cond</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__DS_PRES_COND = eINSTANCE.getTDataObject_DsPresCond(); + + /** + * The meta object literal for the '<em><b>Ds Pres Cond Args</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__DS_PRES_COND_ARGS = eINSTANCE.getTDataObject_DsPresCondArgs(); + + /** + * The meta object literal for the '<em><b>Ds Pres Cond Args ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__DS_PRES_COND_ARGS_ID = eINSTANCE.getTDataObject_DsPresCondArgsID(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__NAME = eINSTANCE.getTDataObject_Name(); + + /** + * The meta object literal for the '<em><b>Pres Cond</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__PRES_COND = eINSTANCE.getTDataObject_PresCond(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__PRES_COND_ARGS = eINSTANCE.getTDataObject_PresCondArgs(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__PRES_COND_ARGS_ID = eINSTANCE.getTDataObject_PresCondArgsID(); + + /** + * The meta object literal for the '<em><b>Transient</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__TRANSIENT = eINSTANCE.getTDataObject_Transient(); + + /** + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__TYPE = eINSTANCE.getTDataObject_Type(); + + /** + * The meta object literal for the '<em><b>Underlying Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__UNDERLYING_TYPE = eINSTANCE.getTDataObject_UnderlyingType(); + + /** + * The meta object literal for the '<em><b>Underlying Type Kind</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_OBJECT__UNDERLYING_TYPE_KIND = eINSTANCE.getTDataObject_UnderlyingTypeKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataSetMemberOfImpl <em>TData Set Member Of</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataSetMemberOfImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDataSetMemberOf() + * @generated + */ + EClass TDATA_SET_MEMBER_OF = eINSTANCE.getTDataSetMemberOf(); + + /** + * The meta object literal for the '<em><b>Cb</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDATA_SET_MEMBER_OF__CB = eINSTANCE.getTDataSetMemberOf_Cb(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocImpl <em>TDoc</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDoc() + * @generated + */ + EClass TDOC = eINSTANCE.getTDoc(); + + /** + * The meta object literal for the '<em><b>Mixed</b></em>' attribute list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDOC__MIXED = eINSTANCE.getTDoc_Mixed(); + + /** + * The meta object literal for the '<em><b>Group</b></em>' attribute list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDOC__GROUP = eINSTANCE.getTDoc_Group(); + + /** + * The meta object literal for the '<em><b>Any</b></em>' attribute list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDOC__ANY = eINSTANCE.getTDoc_Any(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDOC__ID = eINSTANCE.getTDoc_Id(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocumentedClassImpl <em>TDocumented Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocumentedClassImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDocumentedClass() + * @generated + */ + EClass TDOCUMENTED_CLASS = eINSTANCE.getTDocumentedClass(); + + /** + * The meta object literal for the '<em><b>Deprecated</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDOCUMENTED_CLASS__DEPRECATED = eINSTANCE.getTDocumentedClass_Deprecated(); + + /** + * The meta object literal for the '<em><b>Desc ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDOCUMENTED_CLASS__DESC_ID = eINSTANCE.getTDocumentedClass_DescID(); + + /** + * The meta object literal for the '<em><b>Informative</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TDOCUMENTED_CLASS__INFORMATIVE = eINSTANCE.getTDocumentedClass_Informative(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationImpl <em>TEnumeration</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTEnumeration() + * @generated + */ + EClass TENUMERATION = eINSTANCE.getTEnumeration(); + + /** + * The meta object literal for the '<em><b>Literal</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TENUMERATION__LITERAL = eINSTANCE.getTEnumeration_Literal(); + + /** + * The meta object literal for the '<em><b>Inherited From</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TENUMERATION__INHERITED_FROM = eINSTANCE.getTEnumeration_InheritedFrom(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TENUMERATION__NAME = eINSTANCE.getTEnumeration_Name(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationsImpl <em>TEnumerations</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTEnumerations() + * @generated + */ + EClass TENUMERATIONS = eINSTANCE.getTEnumerations(); + + /** + * The meta object literal for the '<em><b>Enumeration</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TENUMERATIONS__ENUMERATION = eINSTANCE.getTEnumerations_Enumeration(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintImpl <em>TFunctional Constraint</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTFunctionalConstraint() + * @generated + */ + EClass TFUNCTIONAL_CONSTRAINT = eINSTANCE.getTFunctionalConstraint(); + + /** + * The meta object literal for the '<em><b>Applicable Services</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES = eINSTANCE + .getTFunctionalConstraint_ApplicableServices(); + + /** + * The meta object literal for the '<em><b>Abbreviation</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TFUNCTIONAL_CONSTRAINT__ABBREVIATION = eINSTANCE.getTFunctionalConstraint_Abbreviation(); + + /** + * The meta object literal for the '<em><b>Desc ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TFUNCTIONAL_CONSTRAINT__DESC_ID = eINSTANCE.getTFunctionalConstraint_DescID(); + + /** + * The meta object literal for the '<em><b>Title ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TFUNCTIONAL_CONSTRAINT__TITLE_ID = eINSTANCE.getTFunctionalConstraint_TitleID(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintsImpl <em>TFunctional Constraints</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTFunctionalConstraints() + * @generated + */ + EClass TFUNCTIONAL_CONSTRAINTS = eINSTANCE.getTFunctionalConstraints(); + + /** + * The meta object literal for the '<em><b>Functional Constraint</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT = eINSTANCE + .getTFunctionalConstraints_FunctionalConstraint(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLicenseImpl <em>TLicense</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLicenseImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLicense() + * @generated + */ + EClass TLICENSE = eINSTANCE.getTLicense(); + + /** + * The meta object literal for the '<em><b>Mixed</b></em>' attribute list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TLICENSE__MIXED = eINSTANCE.getTLicense_Mixed(); + + /** + * The meta object literal for the '<em><b>Kind</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TLICENSE__KIND = eINSTANCE.getTLicense_Kind(); + + /** + * The meta object literal for the '<em><b>Uri</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TLICENSE__URI = eINSTANCE.getTLicense_Uri(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLiteralImpl <em>TLiteral</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLiteralImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLiteral() + * @generated + */ + EClass TLITERAL = eINSTANCE.getTLiteral(); + + /** + * The meta object literal for the '<em><b>Literal Val</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TLITERAL__LITERAL_VAL = eINSTANCE.getTLiteral_LiteralVal(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TLITERAL__NAME = eINSTANCE.getTLiteral_Name(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassImpl <em>TLN Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLNClass() + * @generated + */ + EClass TLN_CLASS = eINSTANCE.getTLNClass(); + + /** + * The meta object literal for the '<em><b>Can Have LOG</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TLN_CLASS__CAN_HAVE_LOG = eINSTANCE.getTLNClass_CanHaveLOG(); + + /** + * The meta object literal for the '<em><b>Is Extension</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TLN_CLASS__IS_EXTENSION = eINSTANCE.getTLNClass_IsExtension(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TLN_CLASS__NAME = eINSTANCE.getTLNClass_Name(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassesImpl <em>TLN Classes</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLNClasses() + * @generated + */ + EClass TLN_CLASSES = eINSTANCE.getTLNClasses(); + + /** + * The meta object literal for the '<em><b>Abstract LN Class</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TLN_CLASSES__ABSTRACT_LN_CLASS = eINSTANCE.getTLNClasses_AbstractLNClass(); + + /** + * The meta object literal for the '<em><b>LN Class</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TLN_CLASSES__LN_CLASS = eINSTANCE.getTLNClasses_LNClass(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNoticeImpl <em>TNotice</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNoticeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNotice() + * @generated + */ + EClass TNOTICE = eINSTANCE.getTNotice(); + + /** + * The meta object literal for the '<em><b>Mixed</b></em>' attribute list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNOTICE__MIXED = eINSTANCE.getTNotice_Mixed(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl <em>TNS</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNS() + * @generated + */ + EClass TNS = eINSTANCE.getTNS(); + + /** + * The meta object literal for the '<em><b>Changes</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS__CHANGES = eINSTANCE.getTNS_Changes(); + + /** + * The meta object literal for the '<em><b>Depends On</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS__DEPENDS_ON = eINSTANCE.getTNS_DependsOn(); + + /** + * The meta object literal for the '<em><b>Basic Types</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS__BASIC_TYPES = eINSTANCE.getTNS_BasicTypes(); + + /** + * The meta object literal for the '<em><b>Functional Constraints</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS__FUNCTIONAL_CONSTRAINTS = eINSTANCE.getTNS_FunctionalConstraints(); + + /** + * The meta object literal for the '<em><b>Presence Conditions</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS__PRESENCE_CONDITIONS = eINSTANCE.getTNS_PresenceConditions(); + + /** + * The meta object literal for the '<em><b>Abbreviations</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS__ABBREVIATIONS = eINSTANCE.getTNS_Abbreviations(); + + /** + * The meta object literal for the '<em><b>Enumerations</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS__ENUMERATIONS = eINSTANCE.getTNS_Enumerations(); + + /** + * The meta object literal for the '<em><b>Constructed Attributes</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS__CONSTRUCTED_ATTRIBUTES = eINSTANCE.getTNS_ConstructedAttributes(); + + /** + * The meta object literal for the '<em><b>CD Cs</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS__CD_CS = eINSTANCE.getTNS_CDCs(); + + /** + * The meta object literal for the '<em><b>LN Classes</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS__LN_CLASSES = eINSTANCE.getTNS_LNClasses(); + + /** + * The meta object literal for the '<em><b>Desc ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS__DESC_ID = eINSTANCE.getTNS_DescID(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS__ID = eINSTANCE.getTNS_Id(); + + /** + * The meta object literal for the '<em><b>Publication Stage</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS__PUBLICATION_STAGE = eINSTANCE.getTNS_PublicationStage(); + + /** + * The meta object literal for the '<em><b>Release</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS__RELEASE = eINSTANCE.getTNS_Release(); + + /** + * The meta object literal for the '<em><b>Revision</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS__REVISION = eINSTANCE.getTNS_Revision(); + + /** + * The meta object literal for the '<em><b>Uml Date</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS__UML_DATE = eINSTANCE.getTNS_UmlDate(); + + /** + * The meta object literal for the '<em><b>Uml Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS__UML_VERSION = eINSTANCE.getTNS_UmlVersion(); + + /** + * The meta object literal for the '<em><b>Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS__VERSION = eINSTANCE.getTNS_Version(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl <em>TNS Doc</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSDoc() + * @generated + */ + EClass TNS_DOC = eINSTANCE.getTNSDoc(); + + /** + * The meta object literal for the '<em><b>Doc</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TNS_DOC__DOC = eINSTANCE.getTNSDoc_Doc(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS_DOC__ID = eINSTANCE.getTNSDoc_Id(); + + /** + * The meta object literal for the '<em><b>Lang</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS_DOC__LANG = eINSTANCE.getTNSDoc_Lang(); + + /** + * The meta object literal for the '<em><b>Publication Stage</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS_DOC__PUBLICATION_STAGE = eINSTANCE.getTNSDoc_PublicationStage(); + + /** + * The meta object literal for the '<em><b>Release</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS_DOC__RELEASE = eINSTANCE.getTNSDoc_Release(); + + /** + * The meta object literal for the '<em><b>Revision</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS_DOC__REVISION = eINSTANCE.getTNSDoc_Revision(); + + /** + * The meta object literal for the '<em><b>Uml Date</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS_DOC__UML_DATE = eINSTANCE.getTNSDoc_UmlDate(); + + /** + * The meta object literal for the '<em><b>Uml Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS_DOC__UML_VERSION = eINSTANCE.getTNSDoc_UmlVersion(); + + /** + * The meta object literal for the '<em><b>Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TNS_DOC__VERSION = eINSTANCE.getTNSDoc_Version(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionImpl <em>TPresence Condition</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPresenceCondition() + * @generated + */ + EClass TPRESENCE_CONDITION = eINSTANCE.getTPresenceCondition(); + + /** + * The meta object literal for the '<em><b>Argument</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TPRESENCE_CONDITION__ARGUMENT = eINSTANCE.getTPresenceCondition_Argument(); + + /** + * The meta object literal for the '<em><b>Desc ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TPRESENCE_CONDITION__DESC_ID = eINSTANCE.getTPresenceCondition_DescID(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TPRESENCE_CONDITION__NAME = eINSTANCE.getTPresenceCondition_Name(); + + /** + * The meta object literal for the '<em><b>Title ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TPRESENCE_CONDITION__TITLE_ID = eINSTANCE.getTPresenceCondition_TitleID(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionsImpl <em>TPresence Conditions</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPresenceConditions() + * @generated + */ + EClass TPRESENCE_CONDITIONS = eINSTANCE.getTPresenceConditions(); + + /** + * The meta object literal for the '<em><b>Presence Condition</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TPRESENCE_CONDITIONS__PRESENCE_CONDITION = eINSTANCE.getTPresenceConditions_PresenceCondition(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCImpl <em>TService CDC</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceCDC() + * @generated + */ + EClass TSERVICE_CDC = eINSTANCE.getTServiceCDC(); + + /** + * The meta object literal for the '<em><b>Service Data Attribute</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE = eINSTANCE.getTServiceCDC_ServiceDataAttribute(); + + /** + * The meta object literal for the '<em><b>Cdc</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_CDC__CDC = eINSTANCE.getTServiceCDC_Cdc(); + + /** + * The meta object literal for the '<em><b>Variant</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_CDC__VARIANT = eINSTANCE.getTServiceCDC_Variant(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCsImpl <em>TService CD Cs</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceCDCs() + * @generated + */ + EClass TSERVICE_CD_CS = eINSTANCE.getTServiceCDCs(); + + /** + * The meta object literal for the '<em><b>Service CDC</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_CD_CS__SERVICE_CDC = eINSTANCE.getTServiceCDCs_ServiceCDC(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceConstructedAttributeImpl <em>TService Constructed Attribute</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceConstructedAttributeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceConstructedAttribute() + * @generated + */ + EClass TSERVICE_CONSTRUCTED_ATTRIBUTE = eINSTANCE.getTServiceConstructedAttribute(); + + /** + * The meta object literal for the '<em><b>Type Kind Parameterized</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED = eINSTANCE + .getTServiceConstructedAttribute_TypeKindParameterized(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceConstructedAttributesImpl <em>TService Constructed Attributes</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceConstructedAttributesImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceConstructedAttributes() + * @generated + */ + EClass TSERVICE_CONSTRUCTED_ATTRIBUTES = eINSTANCE.getTServiceConstructedAttributes(); + + /** + * The meta object literal for the '<em><b>Service Constructed Attribute</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE = eINSTANCE + .getTServiceConstructedAttributes_ServiceConstructedAttribute(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl <em>TService Data Attribute</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceDataAttribute() + * @generated + */ + EClass TSERVICE_DATA_ATTRIBUTE = eINSTANCE.getTServiceDataAttribute(); + + /** + * The meta object literal for the '<em><b>Fc</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_DATA_ATTRIBUTE__FC = eINSTANCE.getTServiceDataAttribute_Fc(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_DATA_ATTRIBUTE__NAME = eINSTANCE.getTServiceDataAttribute_Name(); + + /** + * The meta object literal for the '<em><b>Pres Cond</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_DATA_ATTRIBUTE__PRES_COND = eINSTANCE.getTServiceDataAttribute_PresCond(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS = eINSTANCE.getTServiceDataAttribute_PresCondArgs(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID = eINSTANCE.getTServiceDataAttribute_PresCondArgsID(); + + /** + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_DATA_ATTRIBUTE__TYPE = eINSTANCE.getTServiceDataAttribute_Type(); + + /** + * The meta object literal for the '<em><b>Type Kind</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_DATA_ATTRIBUTE__TYPE_KIND = eINSTANCE.getTServiceDataAttribute_TypeKind(); + + /** + * The meta object literal for the '<em><b>Underlying Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE = eINSTANCE.getTServiceDataAttribute_UnderlyingType(); + + /** + * The meta object literal for the '<em><b>Underlying Type Kind</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND = eINSTANCE + .getTServiceDataAttribute_UnderlyingTypeKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl <em>TService NS</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceNS() + * @generated + */ + EClass TSERVICE_NS = eINSTANCE.getTServiceNS(); + + /** + * The meta object literal for the '<em><b>Changes</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_NS__CHANGES = eINSTANCE.getTServiceNS_Changes(); + + /** + * The meta object literal for the '<em><b>Functional Constraints</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_NS__FUNCTIONAL_CONSTRAINTS = eINSTANCE.getTServiceNS_FunctionalConstraints(); + + /** + * The meta object literal for the '<em><b>Presence Conditions</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_NS__PRESENCE_CONDITIONS = eINSTANCE.getTServiceNS_PresenceConditions(); + + /** + * The meta object literal for the '<em><b>Abbreviations</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_NS__ABBREVIATIONS = eINSTANCE.getTServiceNS_Abbreviations(); + + /** + * The meta object literal for the '<em><b>Service Type Realizations</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_NS__SERVICE_TYPE_REALIZATIONS = eINSTANCE.getTServiceNS_ServiceTypeRealizations(); + + /** + * The meta object literal for the '<em><b>Service Constructed Attributes</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES = eINSTANCE.getTServiceNS_ServiceConstructedAttributes(); + + /** + * The meta object literal for the '<em><b>Service CD Cs</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_NS__SERVICE_CD_CS = eINSTANCE.getTServiceNS_ServiceCDCs(); + + /** + * The meta object literal for the '<em><b>Desc ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS__DESC_ID = eINSTANCE.getTServiceNS_DescID(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS__ID = eINSTANCE.getTServiceNS_Id(); + + /** + * The meta object literal for the '<em><b>Publication Stage</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS__PUBLICATION_STAGE = eINSTANCE.getTServiceNS_PublicationStage(); + + /** + * The meta object literal for the '<em><b>Release</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS__RELEASE = eINSTANCE.getTServiceNS_Release(); + + /** + * The meta object literal for the '<em><b>Revision</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS__REVISION = eINSTANCE.getTServiceNS_Revision(); + + /** + * The meta object literal for the '<em><b>Uml Date</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS__UML_DATE = eINSTANCE.getTServiceNS_UmlDate(); + + /** + * The meta object literal for the '<em><b>Uml Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS__UML_VERSION = eINSTANCE.getTServiceNS_UmlVersion(); + + /** + * The meta object literal for the '<em><b>Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS__VERSION = eINSTANCE.getTServiceNS_Version(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNsUsageImpl <em>TService Ns Usage</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNsUsageImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceNsUsage() + * @generated + */ + EClass TSERVICE_NS_USAGE = eINSTANCE.getTServiceNsUsage(); + + /** + * The meta object literal for the '<em><b>Applies To</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_NS_USAGE__APPLIES_TO = eINSTANCE.getTServiceNsUsage_AppliesTo(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS_USAGE__ID = eINSTANCE.getTServiceNsUsage_Id(); + + /** + * The meta object literal for the '<em><b>Publication Stage</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS_USAGE__PUBLICATION_STAGE = eINSTANCE.getTServiceNsUsage_PublicationStage(); + + /** + * The meta object literal for the '<em><b>Release</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS_USAGE__RELEASE = eINSTANCE.getTServiceNsUsage_Release(); + + /** + * The meta object literal for the '<em><b>Revision</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS_USAGE__REVISION = eINSTANCE.getTServiceNsUsage_Revision(); + + /** + * The meta object literal for the '<em><b>Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_NS_USAGE__VERSION = eINSTANCE.getTServiceNsUsage_Version(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceParameterImpl <em>TService Parameter</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceParameterImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceParameter() + * @generated + */ + EClass TSERVICE_PARAMETER = eINSTANCE.getTServiceParameter(); + + /** + * The meta object literal for the '<em><b>Default Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_PARAMETER__DEFAULT_VALUE = eINSTANCE.getTServiceParameter_DefaultValue(); + + /** + * The meta object literal for the '<em><b>Max Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_PARAMETER__MAX_VALUE = eINSTANCE.getTServiceParameter_MaxValue(); + + /** + * The meta object literal for the '<em><b>Min Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_PARAMETER__MIN_VALUE = eINSTANCE.getTServiceParameter_MinValue(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_PARAMETER__NAME = eINSTANCE.getTServiceParameter_Name(); + + /** + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_PARAMETER__TYPE = eINSTANCE.getTServiceParameter_Type(); + + /** + * The meta object literal for the '<em><b>Type Kind</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_PARAMETER__TYPE_KIND = eINSTANCE.getTServiceParameter_TypeKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl <em>TService Type Realization</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceTypeRealization() + * @generated + */ + EClass TSERVICE_TYPE_REALIZATION = eINSTANCE.getTServiceTypeRealization(); + + /** + * The meta object literal for the '<em><b>Fc</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_TYPE_REALIZATION__FC = eINSTANCE.getTServiceTypeRealization_Fc(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_TYPE_REALIZATION__NAME = eINSTANCE.getTServiceTypeRealization_Name(); + + /** + * The meta object literal for the '<em><b>Pres Cond</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_TYPE_REALIZATION__PRES_COND = eINSTANCE.getTServiceTypeRealization_PresCond(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS = eINSTANCE.getTServiceTypeRealization_PresCondArgs(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS_ID = eINSTANCE.getTServiceTypeRealization_PresCondArgsID(); + + /** + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_TYPE_REALIZATION__TYPE = eINSTANCE.getTServiceTypeRealization_Type(); + + /** + * The meta object literal for the '<em><b>Type Kind</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSERVICE_TYPE_REALIZATION__TYPE_KIND = eINSTANCE.getTServiceTypeRealization_TypeKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationsImpl <em>TService Type Realizations</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationsImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTServiceTypeRealizations() + * @generated + */ + EClass TSERVICE_TYPE_REALIZATIONS = eINSTANCE.getTServiceTypeRealizations(); + + /** + * The meta object literal for the '<em><b>Service Type Realization</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION = eINSTANCE + .getTServiceTypeRealizations_ServiceTypeRealization(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl <em>TSub Data Attribute</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTSubDataAttribute() + * @generated + */ + EClass TSUB_DATA_ATTRIBUTE = eINSTANCE.getTSubDataAttribute(); + + /** + * The meta object literal for the '<em><b>Default Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__DEFAULT_VALUE = eINSTANCE.getTSubDataAttribute_DefaultValue(); + + /** + * The meta object literal for the '<em><b>Is Array</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__IS_ARRAY = eINSTANCE.getTSubDataAttribute_IsArray(); + + /** + * The meta object literal for the '<em><b>Max Index Attribute</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE = eINSTANCE.getTSubDataAttribute_MaxIndexAttribute(); + + /** + * The meta object literal for the '<em><b>Max Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__MAX_VALUE = eINSTANCE.getTSubDataAttribute_MaxValue(); + + /** + * The meta object literal for the '<em><b>Min Index</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__MIN_INDEX = eINSTANCE.getTSubDataAttribute_MinIndex(); + + /** + * The meta object literal for the '<em><b>Min Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__MIN_VALUE = eINSTANCE.getTSubDataAttribute_MinValue(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__NAME = eINSTANCE.getTSubDataAttribute_Name(); + + /** + * The meta object literal for the '<em><b>Pres Cond</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__PRES_COND = eINSTANCE.getTSubDataAttribute_PresCond(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS = eINSTANCE.getTSubDataAttribute_PresCondArgs(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID = eINSTANCE.getTSubDataAttribute_PresCondArgsID(); + + /** + * The meta object literal for the '<em><b>Size Attribute</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE = eINSTANCE.getTSubDataAttribute_SizeAttribute(); + + /** + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__TYPE = eINSTANCE.getTSubDataAttribute_Type(); + + /** + * The meta object literal for the '<em><b>Type Kind</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_ATTRIBUTE__TYPE_KIND = eINSTANCE.getTSubDataAttribute_TypeKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl <em>TSub Data Object</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTSubDataObject() + * @generated + */ + EClass TSUB_DATA_OBJECT = eINSTANCE.getTSubDataObject(); + + /** + * The meta object literal for the '<em><b>Is Array</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__IS_ARRAY = eINSTANCE.getTSubDataObject_IsArray(); + + /** + * The meta object literal for the '<em><b>Max Index Attribute</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE = eINSTANCE.getTSubDataObject_MaxIndexAttribute(); + + /** + * The meta object literal for the '<em><b>Min Index</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__MIN_INDEX = eINSTANCE.getTSubDataObject_MinIndex(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__NAME = eINSTANCE.getTSubDataObject_Name(); + + /** + * The meta object literal for the '<em><b>Pres Cond</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__PRES_COND = eINSTANCE.getTSubDataObject_PresCond(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__PRES_COND_ARGS = eINSTANCE.getTSubDataObject_PresCondArgs(); + + /** + * The meta object literal for the '<em><b>Pres Cond Args ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__PRES_COND_ARGS_ID = eINSTANCE.getTSubDataObject_PresCondArgsID(); + + /** + * The meta object literal for the '<em><b>Size Attribute</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__SIZE_ATTRIBUTE = eINSTANCE.getTSubDataObject_SizeAttribute(); + + /** + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__TYPE = eINSTANCE.getTSubDataObject_Type(); + + /** + * The meta object literal for the '<em><b>Underlying Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__UNDERLYING_TYPE = eINSTANCE.getTSubDataObject_UnderlyingType(); + + /** + * The meta object literal for the '<em><b>Underlying Type Kind</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND = eINSTANCE.getTSubDataObject_UnderlyingTypeKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TTitledClassImpl <em>TTitled Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TTitledClassImpl + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTTitledClass() + * @generated + */ + EClass TTITLED_CLASS = eINSTANCE.getTTitledClass(); + + /** + * The meta object literal for the '<em><b>Title ID</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute TTITLED_CLASS__TITLE_ID = eINSTANCE.getTTitledClass_TitleID(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind <em>TACSI Services Kind</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTACSIServicesKind() + * @generated + */ + EEnum TACSI_SERVICES_KIND = eINSTANCE.getTACSIServicesKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind <em>TCB Kind</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCBKind() + * @generated + */ + EEnum TCB_KIND = eINSTANCE.getTCBKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind <em>TDefined Attribute Type Kind</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDefinedAttributeTypeKind() + * @generated + */ + EEnum TDEFINED_ATTRIBUTE_TYPE_KIND = eINSTANCE.getTDefinedAttributeTypeKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind <em>TLicense Kind</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLicenseKind() + * @generated + */ + EEnum TLICENSE_KIND = eINSTANCE.getTLicenseKind(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage <em>TPub Stage</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPubStage() + * @generated + */ + EEnum TPUB_STAGE = eINSTANCE.getTPubStage(); + + /** + * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind <em>TUndefined Attribute Type Kind</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTUndefinedAttributeTypeKind() + * @generated + */ + EEnum TUNDEFINED_ATTRIBUTE_TYPE_KIND = eINSTANCE.getTUndefinedAttributeTypeKind(); + + /** + * The meta object literal for the '<em>TAbbreviation Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAbbreviationName() + * @generated + */ + EDataType TABBREVIATION_NAME = eINSTANCE.getTAbbreviationName(); + + /** + * The meta object literal for the '<em>TAbstract LN Class Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAbstractLNClassName() + * @generated + */ + EDataType TABSTRACT_LN_CLASS_NAME = eINSTANCE.getTAbstractLNClassName(); + + /** + * The meta object literal for the '<em>TACSI Services Kind Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTACSIServicesKindObject() + * @generated + */ + EDataType TACSI_SERVICES_KIND_OBJECT = eINSTANCE.getTACSIServicesKindObject(); + + /** + * The meta object literal for the '<em>TAttribute Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAttributeName() + * @generated + */ + EDataType TATTRIBUTE_NAME = eINSTANCE.getTAttributeName(); + + /** + * The meta object literal for the '<em>TAttribute Type Kind</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.common.util.Enumerator + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTAttributeTypeKind() + * @generated + */ + EDataType TATTRIBUTE_TYPE_KIND = eINSTANCE.getTAttributeTypeKind(); + + /** + * The meta object literal for the '<em>TBasic Type Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTBasicTypeName() + * @generated + */ + EDataType TBASIC_TYPE_NAME = eINSTANCE.getTBasicTypeName(); + + /** + * The meta object literal for the '<em>TCB Kind Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCBKindObject() + * @generated + */ + EDataType TCB_KIND_OBJECT = eINSTANCE.getTCBKindObject(); + + /** + * The meta object literal for the '<em>TCDC Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTCDCName() + * @generated + */ + EDataType TCDC_NAME = eINSTANCE.getTCDCName(); + + /** + * The meta object literal for the '<em>TData Object Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDataObjectName() + * @generated + */ + EDataType TDATA_OBJECT_NAME = eINSTANCE.getTDataObjectName(); + + /** + * The meta object literal for the '<em>TDefined Attribute Type Kind Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDefinedAttributeTypeKindObject() + * @generated + */ + EDataType TDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT = eINSTANCE.getTDefinedAttributeTypeKindObject(); + + /** + * The meta object literal for the '<em>TDoc ID</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTDocID() + * @generated + */ + EDataType TDOC_ID = eINSTANCE.getTDocID(); + + /** + * The meta object literal for the '<em>TEmpty String</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTEmptyString() + * @generated + */ + EDataType TEMPTY_STRING = eINSTANCE.getTEmptyString(); + + /** + * The meta object literal for the '<em>TFC Abbreviation</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTFCAbbreviation() + * @generated + */ + EDataType TFC_ABBREVIATION = eINSTANCE.getTFCAbbreviation(); + + /** + * The meta object literal for the '<em>TIec61850 Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTIec61850Name() + * @generated + */ + EDataType TIEC61850_NAME = eINSTANCE.getTIec61850Name(); + + /** + * The meta object literal for the '<em>TIec61850 Name String</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTIec61850NameString() + * @generated + */ + EDataType TIEC61850_NAME_STRING = eINSTANCE.getTIec61850NameString(); + + /** + * The meta object literal for the '<em>Tissues Type</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTissuesType() + * @generated + */ + EDataType TISSUES_TYPE = eINSTANCE.getTissuesType(); + + /** + * The meta object literal for the '<em>TLicense Kind Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLicenseKindObject() + * @generated + */ + EDataType TLICENSE_KIND_OBJECT = eINSTANCE.getTLicenseKindObject(); + + /** + * The meta object literal for the '<em>TLiteral Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLiteralName() + * @generated + */ + EDataType TLITERAL_NAME = eINSTANCE.getTLiteralName(); + + /** + * The meta object literal for the '<em>TLN Class Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTLNClassName() + * @generated + */ + EDataType TLN_CLASS_NAME = eINSTANCE.getTLNClassName(); + + /** + * The meta object literal for the '<em>TNS Identifier</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSIdentifier() + * @generated + */ + EDataType TNS_IDENTIFIER = eINSTANCE.getTNSIdentifier(); + + /** + * The meta object literal for the '<em>TNS Release</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSRelease() + * @generated + */ + EDataType TNS_RELEASE = eINSTANCE.getTNSRelease(); + + /** + * The meta object literal for the '<em>TNS Release Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.Short + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSReleaseObject() + * @generated + */ + EDataType TNS_RELEASE_OBJECT = eINSTANCE.getTNSReleaseObject(); + + /** + * The meta object literal for the '<em>TNS Revision</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSRevision() + * @generated + */ + EDataType TNS_REVISION = eINSTANCE.getTNSRevision(); + + /** + * The meta object literal for the '<em>TNS Version</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSVersion() + * @generated + */ + EDataType TNS_VERSION = eINSTANCE.getTNSVersion(); + + /** + * The meta object literal for the '<em>TNS Version Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.Integer + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTNSVersionObject() + * @generated + */ + EDataType TNS_VERSION_OBJECT = eINSTANCE.getTNSVersionObject(); + + /** + * The meta object literal for the '<em>TPresence Condition Argument</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPresenceConditionArgument() + * @generated + */ + EDataType TPRESENCE_CONDITION_ARGUMENT = eINSTANCE.getTPresenceConditionArgument(); + + /** + * The meta object literal for the '<em>TPresence Condition Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPresenceConditionName() + * @generated + */ + EDataType TPRESENCE_CONDITION_NAME = eINSTANCE.getTPresenceConditionName(); + + /** + * The meta object literal for the '<em>TPub Stage Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTPubStageObject() + * @generated + */ + EDataType TPUB_STAGE_OBJECT = eINSTANCE.getTPubStageObject(); + + /** + * The meta object literal for the '<em>TSub Data Object Name</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTSubDataObjectName() + * @generated + */ + EDataType TSUB_DATA_OBJECT_NAME = eINSTANCE.getTSubDataObjectName(); + + /** + * The meta object literal for the '<em>TUML Version</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTUMLVersion() + * @generated + */ + EDataType TUML_VERSION = eINSTANCE.getTUMLVersion(); + + /** + * The meta object literal for the '<em>TUndefined Attribute Type Kind Object</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NsdPackageImpl#getTUndefinedAttributeTypeKindObject() + * @generated + */ + EDataType TUNDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT = eINSTANCE.getTUndefinedAttributeTypeKindObject(); + + } + +} //NsdPackage diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/ServiceType.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/ServiceType.java new file mode 100644 index 0000000000000000000000000000000000000000..8c2f1db661a04c0441c5b62953a53d15474196ea --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/ServiceType.java @@ -0,0 +1,98 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Service Type</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType#getName <em>Name</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getServiceType() + * @model extendedMetaData="name='Service_._type' kind='empty'" + * @generated + */ +public interface ServiceType extends EObject { + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>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>Name</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind + * @see #isSetName() + * @see #unsetName() + * @see #setName(TACSIServicesKind) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getServiceType_Name() + * @model unsettable="true" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + TACSIServicesKind getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind + * @see #isSetName() + * @see #unsetName() + * @see #getName() + * @generated + */ + void setName( TACSIServicesKind value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetName() + * @see #getName() + * @see #setName(TACSIServicesKind) + * @generated + */ + void unsetName(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType#getName <em>Name</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Name</em>' attribute is set. + * @see #unsetName() + * @see #getName() + * @see #setName(TACSIServicesKind) + * @generated + */ + boolean isSetName(); + +} // ServiceType diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TACSIServicesKind.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TACSIServicesKind.java new file mode 100644 index 0000000000000000000000000000000000000000..b99f65d95e7f40265de2e80b4d458da6c1632895 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TACSIServicesKind.java @@ -0,0 +1,1786 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +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>TACSI Services Kind</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Enumeration holding the names of all ACSI services, as defined in Part 7-2. Is conceptually identical to the 7-2 ServiceNameKind enumeration (except the Unknown). + * <!-- end-model-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTACSIServicesKind() + * @model extendedMetaData="name='tACSIServicesKind'" + * @generated + */ +public enum TACSIServicesKind implements Enumerator { + /** + * The '<em><b>Associate</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #ASSOCIATE_VALUE + * @generated + * @ordered + */ + ASSOCIATE( 0, "Associate", "Associate" ), + + /** + * The '<em><b>Abort</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #ABORT_VALUE + * @generated + * @ordered + */ + ABORT( 1, "Abort", "Abort" ), + + /** + * The '<em><b>Release</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #RELEASE_VALUE + * @generated + * @ordered + */ + RELEASE( 2, "Release", "Release" ), + + /** + * The '<em><b>Get Server Directory</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_SERVER_DIRECTORY_VALUE + * @generated + * @ordered + */ + GET_SERVER_DIRECTORY( 3, "GetServerDirectory", "GetServerDirectory" ), + + /** + * The '<em><b>Get Logical Device Directory</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_LOGICAL_DEVICE_DIRECTORY_VALUE + * @generated + * @ordered + */ + GET_LOGICAL_DEVICE_DIRECTORY( 4, "GetLogicalDeviceDirectory", "GetLogicalDeviceDirectory" ), + + /** + * The '<em><b>Get All Data Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_ALL_DATA_VALUES_VALUE + * @generated + * @ordered + */ + GET_ALL_DATA_VALUES( 5, "GetAllDataValues", "GetAllDataValues" ), + + /** + * The '<em><b>Get Data Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_DATA_VALUES_VALUE + * @generated + * @ordered + */ + GET_DATA_VALUES( 6, "GetDataValues", "GetDataValues" ), + + /** + * The '<em><b>Set Data Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SET_DATA_VALUES_VALUE + * @generated + * @ordered + */ + SET_DATA_VALUES( 7, "SetDataValues", "SetDataValues" ), + + /** + * The '<em><b>Get Data Directory</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_DATA_DIRECTORY_VALUE + * @generated + * @ordered + */ + GET_DATA_DIRECTORY( 8, "GetDataDirectory", "GetDataDirectory" ), + + /** + * The '<em><b>Get Data Definition</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_DATA_DEFINITION_VALUE + * @generated + * @ordered + */ + GET_DATA_DEFINITION( 9, "GetDataDefinition", "GetDataDefinition" ), + + /** + * The '<em><b>Get Data Set Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_DATA_SET_VALUES_VALUE + * @generated + * @ordered + */ + GET_DATA_SET_VALUES( 10, "GetDataSetValues", "GetDataSetValues" ), + + /** + * The '<em><b>Set Data Set Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SET_DATA_SET_VALUES_VALUE + * @generated + * @ordered + */ + SET_DATA_SET_VALUES( 11, "SetDataSetValues", "SetDataSetValues" ), + + /** + * The '<em><b>Create Data Set</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #CREATE_DATA_SET_VALUE + * @generated + * @ordered + */ + CREATE_DATA_SET( 12, "CreateDataSet", "CreateDataSet" ), + + /** + * The '<em><b>Delete Data Set</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #DELETE_DATA_SET_VALUE + * @generated + * @ordered + */ + DELETE_DATA_SET( 13, "DeleteDataSet", "DeleteDataSet" ), + + /** + * The '<em><b>Get Data Set Directory</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_DATA_SET_DIRECTORY_VALUE + * @generated + * @ordered + */ + GET_DATA_SET_DIRECTORY( 14, "GetDataSetDirectory", "GetDataSetDirectory" ), + + /** + * The '<em><b>Select Active SG</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SELECT_ACTIVE_SG_VALUE + * @generated + * @ordered + */ + SELECT_ACTIVE_SG( 15, "SelectActiveSG", "SelectActiveSG" ), + + /** + * The '<em><b>Select Edit SG</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SELECT_EDIT_SG_VALUE + * @generated + * @ordered + */ + SELECT_EDIT_SG( 16, "SelectEditSG", "SelectEditSG" ), + + /** + * The '<em><b>Set Edit SG Value</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SET_EDIT_SG_VALUE_VALUE + * @generated + * @ordered + */ + SET_EDIT_SG_VALUE( 17, "SetEditSGValue", "SetEditSGValue" ), + + /** + * The '<em><b>Confirm Edit SG Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #CONFIRM_EDIT_SG_VALUES_VALUE + * @generated + * @ordered + */ + CONFIRM_EDIT_SG_VALUES( 18, "ConfirmEditSGValues", "ConfirmEditSGValues" ), + + /** + * The '<em><b>Get Edit SG Value</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_EDIT_SG_VALUE_VALUE + * @generated + * @ordered + */ + GET_EDIT_SG_VALUE( 19, "GetEditSGValue", "GetEditSGValue" ), + + /** + * The '<em><b>Get SGCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_SGCB_VALUES_VALUE + * @generated + * @ordered + */ + GET_SGCB_VALUES( 20, "GetSGCBValues", "GetSGCBValues" ), + + /** + * The '<em><b>Report</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #REPORT_VALUE + * @generated + * @ordered + */ + REPORT( 21, "Report", "Report" ), + + /** + * The '<em><b>Get BRCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_BRCB_VALUES_VALUE + * @generated + * @ordered + */ + GET_BRCB_VALUES( 22, "GetBRCBValues", "GetBRCBValues" ), + + /** + * The '<em><b>Set BRCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SET_BRCB_VALUES_VALUE + * @generated + * @ordered + */ + SET_BRCB_VALUES( 23, "SetBRCBValues", "SetBRCBValues" ), + + /** + * The '<em><b>Get URCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_URCB_VALUES_VALUE + * @generated + * @ordered + */ + GET_URCB_VALUES( 24, "GetURCBValues", "GetURCBValues" ), + + /** + * The '<em><b>Set URCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SET_URCB_VALUES_VALUE + * @generated + * @ordered + */ + SET_URCB_VALUES( 25, "SetURCBValues", "SetURCBValues" ), + + /** + * The '<em><b>Get LCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_LCB_VALUES_VALUE + * @generated + * @ordered + */ + GET_LCB_VALUES( 26, "GetLCBValues", "GetLCBValues" ), + + /** + * The '<em><b>Set LCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SET_LCB_VALUES_VALUE + * @generated + * @ordered + */ + SET_LCB_VALUES( 27, "SetLCBValues", "SetLCBValues" ), + + /** + * The '<em><b>Query Log By Time</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #QUERY_LOG_BY_TIME_VALUE + * @generated + * @ordered + */ + QUERY_LOG_BY_TIME( 28, "QueryLogByTime", "QueryLogByTime" ), + + /** + * The '<em><b>Query Log After</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #QUERY_LOG_AFTER_VALUE + * @generated + * @ordered + */ + QUERY_LOG_AFTER( 29, "QueryLogAfter", "QueryLogAfter" ), + + /** + * The '<em><b>Get Log Status Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_LOG_STATUS_VALUES_VALUE + * @generated + * @ordered + */ + GET_LOG_STATUS_VALUES( 30, "GetLogStatusValues", "GetLogStatusValues" ), + + /** + * The '<em><b>Send GOOSE Message</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SEND_GOOSE_MESSAGE_VALUE + * @generated + * @ordered + */ + SEND_GOOSE_MESSAGE( 31, "SendGOOSEMessage", "SendGOOSEMessage" ), + + /** + * The '<em><b>Get Go CB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_GO_CB_VALUES_VALUE + * @generated + * @ordered + */ + GET_GO_CB_VALUES( 32, "GetGoCBValues", "GetGoCBValues" ), + + /** + * The '<em><b>Set Go CB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SET_GO_CB_VALUES_VALUE + * @generated + * @ordered + */ + SET_GO_CB_VALUES( 33, "SetGoCBValues", "SetGoCBValues" ), + + /** + * The '<em><b>Get Go Reference</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_GO_REFERENCE_VALUE + * @generated + * @ordered + */ + GET_GO_REFERENCE( 34, "GetGoReference", "GetGoReference" ), + + /** + * The '<em><b>Get GOOSE Element Number</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_GOOSE_ELEMENT_NUMBER_VALUE + * @generated + * @ordered + */ + GET_GOOSE_ELEMENT_NUMBER( 35, "GetGOOSEElementNumber", "GetGOOSEElementNumber" ), + + /** + * The '<em><b>Send MSV Message</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SEND_MSV_MESSAGE_VALUE + * @generated + * @ordered + */ + SEND_MSV_MESSAGE( 36, "SendMSVMessage", "SendMSVMessage" ), + + /** + * The '<em><b>Get MSVCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_MSVCB_VALUES_VALUE + * @generated + * @ordered + */ + GET_MSVCB_VALUES( 37, "GetMSVCBValues", "GetMSVCBValues" ), + + /** + * The '<em><b>Set MSVCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SET_MSVCB_VALUES_VALUE + * @generated + * @ordered + */ + SET_MSVCB_VALUES( 38, "SetMSVCBValues", "SetMSVCBValues" ), + + /** + * The '<em><b>Send USV Message</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SEND_USV_MESSAGE_VALUE + * @generated + * @ordered + */ + SEND_USV_MESSAGE( 39, "SendUSVMessage", "SendUSVMessage" ), + + /** + * The '<em><b>Get USVCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_USVCB_VALUES_VALUE + * @generated + * @ordered + */ + GET_USVCB_VALUES( 40, "GetUSVCBValues", "GetUSVCBValues" ), + + /** + * The '<em><b>Set USVCB Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SET_USVCB_VALUES_VALUE + * @generated + * @ordered + */ + SET_USVCB_VALUES( 41, "SetUSVCBValues", "SetUSVCBValues" ), + + /** + * The '<em><b>Select</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SELECT_VALUE + * @generated + * @ordered + */ + SELECT( 42, "Select", "Select" ), + + /** + * The '<em><b>Select With Value</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SELECT_WITH_VALUE_VALUE + * @generated + * @ordered + */ + SELECT_WITH_VALUE( 43, "SelectWithValue", "SelectWithValue" ), + + /** + * The '<em><b>Cancel</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #CANCEL_VALUE + * @generated + * @ordered + */ + CANCEL( 44, "Cancel", "Cancel" ), + + /** + * The '<em><b>Operate</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #OPERATE_VALUE + * @generated + * @ordered + */ + OPERATE( 45, "Operate", "Operate" ), + + /** + * The '<em><b>Command Termination</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #COMMAND_TERMINATION_VALUE + * @generated + * @ordered + */ + COMMAND_TERMINATION( 46, "CommandTermination", "CommandTermination" ), + + /** + * The '<em><b>Time Activated Operate</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #TIME_ACTIVATED_OPERATE_VALUE + * @generated + * @ordered + */ + TIME_ACTIVATED_OPERATE( 47, "TimeActivatedOperate", "TimeActivatedOperate" ), + + /** + * The '<em><b>Get File</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_FILE_VALUE + * @generated + * @ordered + */ + GET_FILE( 48, "GetFile", "GetFile" ), + + /** + * The '<em><b>Set File</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SET_FILE_VALUE + * @generated + * @ordered + */ + SET_FILE( 49, "SetFile", "SetFile" ), + + /** + * The '<em><b>Delete File</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #DELETE_FILE_VALUE + * @generated + * @ordered + */ + DELETE_FILE( 50, "DeleteFile", "DeleteFile" ), + + /** + * The '<em><b>Get File Attribute Values</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_FILE_ATTRIBUTE_VALUES_VALUE + * @generated + * @ordered + */ + GET_FILE_ATTRIBUTE_VALUES( 51, "GetFileAttributeValues", "GetFileAttributeValues" ), + + /** + * The '<em><b>Time Synchronization</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #TIME_SYNCHRONIZATION_VALUE + * @generated + * @ordered + */ + TIME_SYNCHRONIZATION( 52, "TimeSynchronization", "TimeSynchronization" ), + + /** + * The '<em><b>Internal Change</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #INTERNAL_CHANGE_VALUE + * @generated + * @ordered + */ + INTERNAL_CHANGE( 53, "InternalChange", "InternalChange" ), + + /** + * The '<em><b>Get Logical Node Directory</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_LOGICAL_NODE_DIRECTORY_VALUE + * @generated + * @ordered + */ + GET_LOGICAL_NODE_DIRECTORY( 54, "GetLogicalNodeDirectory", "GetLogicalNodeDirectory" ), + + /** + * The '<em><b>Get Msv Reference</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_MSV_REFERENCE_VALUE + * @generated + * @ordered + */ + GET_MSV_REFERENCE( 55, "GetMsvReference", "GetMsvReference" ), + + /** + * The '<em><b>Get MSV Element Number</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_MSV_ELEMENT_NUMBER_VALUE + * @generated + * @ordered + */ + GET_MSV_ELEMENT_NUMBER( 56, "GetMSVElementNumber", "GetMSVElementNumber" ), + + /** + * The '<em><b>Get Usv Reference</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_USV_REFERENCE_VALUE + * @generated + * @ordered + */ + GET_USV_REFERENCE( 57, "GetUsvReference", "GetUsvReference" ), + + /** + * The '<em><b>Get USV Element Number</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GET_USV_ELEMENT_NUMBER_VALUE + * @generated + * @ordered + */ + GET_USV_ELEMENT_NUMBER( 58, "GetUSVElementNumber", "GetUSVElementNumber" ); + + /** + * The '<em><b>Associate</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Associate</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #ASSOCIATE + * @model name="Associate" + * @generated + * @ordered + */ + public static final int ASSOCIATE_VALUE = 0; + + /** + * The '<em><b>Abort</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Abort</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #ABORT + * @model name="Abort" + * @generated + * @ordered + */ + public static final int ABORT_VALUE = 1; + + /** + * The '<em><b>Release</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Release</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #RELEASE + * @model name="Release" + * @generated + * @ordered + */ + public static final int RELEASE_VALUE = 2; + + /** + * The '<em><b>Get Server Directory</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Server Directory</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_SERVER_DIRECTORY + * @model name="GetServerDirectory" + * @generated + * @ordered + */ + public static final int GET_SERVER_DIRECTORY_VALUE = 3; + + /** + * The '<em><b>Get Logical Device Directory</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Logical Device Directory</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_LOGICAL_DEVICE_DIRECTORY + * @model name="GetLogicalDeviceDirectory" + * @generated + * @ordered + */ + public static final int GET_LOGICAL_DEVICE_DIRECTORY_VALUE = 4; + + /** + * The '<em><b>Get All Data Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get All Data Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_ALL_DATA_VALUES + * @model name="GetAllDataValues" + * @generated + * @ordered + */ + public static final int GET_ALL_DATA_VALUES_VALUE = 5; + + /** + * The '<em><b>Get Data Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Data Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_DATA_VALUES + * @model name="GetDataValues" + * @generated + * @ordered + */ + public static final int GET_DATA_VALUES_VALUE = 6; + + /** + * The '<em><b>Set Data Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Set Data Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SET_DATA_VALUES + * @model name="SetDataValues" + * @generated + * @ordered + */ + public static final int SET_DATA_VALUES_VALUE = 7; + + /** + * The '<em><b>Get Data Directory</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Data Directory</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_DATA_DIRECTORY + * @model name="GetDataDirectory" + * @generated + * @ordered + */ + public static final int GET_DATA_DIRECTORY_VALUE = 8; + + /** + * The '<em><b>Get Data Definition</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Data Definition</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_DATA_DEFINITION + * @model name="GetDataDefinition" + * @generated + * @ordered + */ + public static final int GET_DATA_DEFINITION_VALUE = 9; + + /** + * The '<em><b>Get Data Set Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Data Set Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_DATA_SET_VALUES + * @model name="GetDataSetValues" + * @generated + * @ordered + */ + public static final int GET_DATA_SET_VALUES_VALUE = 10; + + /** + * The '<em><b>Set Data Set Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Set Data Set Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SET_DATA_SET_VALUES + * @model name="SetDataSetValues" + * @generated + * @ordered + */ + public static final int SET_DATA_SET_VALUES_VALUE = 11; + + /** + * The '<em><b>Create Data Set</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Create Data Set</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #CREATE_DATA_SET + * @model name="CreateDataSet" + * @generated + * @ordered + */ + public static final int CREATE_DATA_SET_VALUE = 12; + + /** + * The '<em><b>Delete Data Set</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Delete Data Set</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #DELETE_DATA_SET + * @model name="DeleteDataSet" + * @generated + * @ordered + */ + public static final int DELETE_DATA_SET_VALUE = 13; + + /** + * The '<em><b>Get Data Set Directory</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Data Set Directory</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_DATA_SET_DIRECTORY + * @model name="GetDataSetDirectory" + * @generated + * @ordered + */ + public static final int GET_DATA_SET_DIRECTORY_VALUE = 14; + + /** + * The '<em><b>Select Active SG</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Select Active SG</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SELECT_ACTIVE_SG + * @model name="SelectActiveSG" + * @generated + * @ordered + */ + public static final int SELECT_ACTIVE_SG_VALUE = 15; + + /** + * The '<em><b>Select Edit SG</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Select Edit SG</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SELECT_EDIT_SG + * @model name="SelectEditSG" + * @generated + * @ordered + */ + public static final int SELECT_EDIT_SG_VALUE = 16; + + /** + * The '<em><b>Set Edit SG Value</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Set Edit SG Value</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SET_EDIT_SG_VALUE + * @model name="SetEditSGValue" + * @generated + * @ordered + */ + public static final int SET_EDIT_SG_VALUE_VALUE = 17; + + /** + * The '<em><b>Confirm Edit SG Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Confirm Edit SG Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #CONFIRM_EDIT_SG_VALUES + * @model name="ConfirmEditSGValues" + * @generated + * @ordered + */ + public static final int CONFIRM_EDIT_SG_VALUES_VALUE = 18; + + /** + * The '<em><b>Get Edit SG Value</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Edit SG Value</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_EDIT_SG_VALUE + * @model name="GetEditSGValue" + * @generated + * @ordered + */ + public static final int GET_EDIT_SG_VALUE_VALUE = 19; + + /** + * The '<em><b>Get SGCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get SGCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_SGCB_VALUES + * @model name="GetSGCBValues" + * @generated + * @ordered + */ + public static final int GET_SGCB_VALUES_VALUE = 20; + + /** + * The '<em><b>Report</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Report</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #REPORT + * @model name="Report" + * @generated + * @ordered + */ + public static final int REPORT_VALUE = 21; + + /** + * The '<em><b>Get BRCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get BRCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_BRCB_VALUES + * @model name="GetBRCBValues" + * @generated + * @ordered + */ + public static final int GET_BRCB_VALUES_VALUE = 22; + + /** + * The '<em><b>Set BRCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Set BRCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SET_BRCB_VALUES + * @model name="SetBRCBValues" + * @generated + * @ordered + */ + public static final int SET_BRCB_VALUES_VALUE = 23; + + /** + * The '<em><b>Get URCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get URCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_URCB_VALUES + * @model name="GetURCBValues" + * @generated + * @ordered + */ + public static final int GET_URCB_VALUES_VALUE = 24; + + /** + * The '<em><b>Set URCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Set URCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SET_URCB_VALUES + * @model name="SetURCBValues" + * @generated + * @ordered + */ + public static final int SET_URCB_VALUES_VALUE = 25; + + /** + * The '<em><b>Get LCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get LCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_LCB_VALUES + * @model name="GetLCBValues" + * @generated + * @ordered + */ + public static final int GET_LCB_VALUES_VALUE = 26; + + /** + * The '<em><b>Set LCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Set LCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SET_LCB_VALUES + * @model name="SetLCBValues" + * @generated + * @ordered + */ + public static final int SET_LCB_VALUES_VALUE = 27; + + /** + * The '<em><b>Query Log By Time</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Query Log By Time</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #QUERY_LOG_BY_TIME + * @model name="QueryLogByTime" + * @generated + * @ordered + */ + public static final int QUERY_LOG_BY_TIME_VALUE = 28; + + /** + * The '<em><b>Query Log After</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Query Log After</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #QUERY_LOG_AFTER + * @model name="QueryLogAfter" + * @generated + * @ordered + */ + public static final int QUERY_LOG_AFTER_VALUE = 29; + + /** + * The '<em><b>Get Log Status Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Log Status Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_LOG_STATUS_VALUES + * @model name="GetLogStatusValues" + * @generated + * @ordered + */ + public static final int GET_LOG_STATUS_VALUES_VALUE = 30; + + /** + * The '<em><b>Send GOOSE Message</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Send GOOSE Message</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SEND_GOOSE_MESSAGE + * @model name="SendGOOSEMessage" + * @generated + * @ordered + */ + public static final int SEND_GOOSE_MESSAGE_VALUE = 31; + + /** + * The '<em><b>Get Go CB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Go CB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_GO_CB_VALUES + * @model name="GetGoCBValues" + * @generated + * @ordered + */ + public static final int GET_GO_CB_VALUES_VALUE = 32; + + /** + * The '<em><b>Set Go CB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Set Go CB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SET_GO_CB_VALUES + * @model name="SetGoCBValues" + * @generated + * @ordered + */ + public static final int SET_GO_CB_VALUES_VALUE = 33; + + /** + * The '<em><b>Get Go Reference</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Go Reference</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_GO_REFERENCE + * @model name="GetGoReference" + * @generated + * @ordered + */ + public static final int GET_GO_REFERENCE_VALUE = 34; + + /** + * The '<em><b>Get GOOSE Element Number</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get GOOSE Element Number</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_GOOSE_ELEMENT_NUMBER + * @model name="GetGOOSEElementNumber" + * @generated + * @ordered + */ + public static final int GET_GOOSE_ELEMENT_NUMBER_VALUE = 35; + + /** + * The '<em><b>Send MSV Message</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Send MSV Message</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SEND_MSV_MESSAGE + * @model name="SendMSVMessage" + * @generated + * @ordered + */ + public static final int SEND_MSV_MESSAGE_VALUE = 36; + + /** + * The '<em><b>Get MSVCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get MSVCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_MSVCB_VALUES + * @model name="GetMSVCBValues" + * @generated + * @ordered + */ + public static final int GET_MSVCB_VALUES_VALUE = 37; + + /** + * The '<em><b>Set MSVCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Set MSVCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SET_MSVCB_VALUES + * @model name="SetMSVCBValues" + * @generated + * @ordered + */ + public static final int SET_MSVCB_VALUES_VALUE = 38; + + /** + * The '<em><b>Send USV Message</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Send USV Message</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SEND_USV_MESSAGE + * @model name="SendUSVMessage" + * @generated + * @ordered + */ + public static final int SEND_USV_MESSAGE_VALUE = 39; + + /** + * The '<em><b>Get USVCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get USVCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_USVCB_VALUES + * @model name="GetUSVCBValues" + * @generated + * @ordered + */ + public static final int GET_USVCB_VALUES_VALUE = 40; + + /** + * The '<em><b>Set USVCB Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Set USVCB Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SET_USVCB_VALUES + * @model name="SetUSVCBValues" + * @generated + * @ordered + */ + public static final int SET_USVCB_VALUES_VALUE = 41; + + /** + * The '<em><b>Select</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Select</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SELECT + * @model name="Select" + * @generated + * @ordered + */ + public static final int SELECT_VALUE = 42; + + /** + * The '<em><b>Select With Value</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Select With Value</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SELECT_WITH_VALUE + * @model name="SelectWithValue" + * @generated + * @ordered + */ + public static final int SELECT_WITH_VALUE_VALUE = 43; + + /** + * The '<em><b>Cancel</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Cancel</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #CANCEL + * @model name="Cancel" + * @generated + * @ordered + */ + public static final int CANCEL_VALUE = 44; + + /** + * The '<em><b>Operate</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Operate</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #OPERATE + * @model name="Operate" + * @generated + * @ordered + */ + public static final int OPERATE_VALUE = 45; + + /** + * The '<em><b>Command Termination</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Command Termination</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #COMMAND_TERMINATION + * @model name="CommandTermination" + * @generated + * @ordered + */ + public static final int COMMAND_TERMINATION_VALUE = 46; + + /** + * The '<em><b>Time Activated Operate</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Time Activated Operate</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #TIME_ACTIVATED_OPERATE + * @model name="TimeActivatedOperate" + * @generated + * @ordered + */ + public static final int TIME_ACTIVATED_OPERATE_VALUE = 47; + + /** + * The '<em><b>Get File</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get File</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_FILE + * @model name="GetFile" + * @generated + * @ordered + */ + public static final int GET_FILE_VALUE = 48; + + /** + * The '<em><b>Set File</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Set File</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SET_FILE + * @model name="SetFile" + * @generated + * @ordered + */ + public static final int SET_FILE_VALUE = 49; + + /** + * The '<em><b>Delete File</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Delete File</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #DELETE_FILE + * @model name="DeleteFile" + * @generated + * @ordered + */ + public static final int DELETE_FILE_VALUE = 50; + + /** + * The '<em><b>Get File Attribute Values</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get File Attribute Values</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_FILE_ATTRIBUTE_VALUES + * @model name="GetFileAttributeValues" + * @generated + * @ordered + */ + public static final int GET_FILE_ATTRIBUTE_VALUES_VALUE = 51; + + /** + * The '<em><b>Time Synchronization</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Time Synchronization</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #TIME_SYNCHRONIZATION + * @model name="TimeSynchronization" + * @generated + * @ordered + */ + public static final int TIME_SYNCHRONIZATION_VALUE = 52; + + /** + * The '<em><b>Internal Change</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Internal Change</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #INTERNAL_CHANGE + * @model name="InternalChange" + * @generated + * @ordered + */ + public static final int INTERNAL_CHANGE_VALUE = 53; + + /** + * The '<em><b>Get Logical Node Directory</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Logical Node Directory</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_LOGICAL_NODE_DIRECTORY + * @model name="GetLogicalNodeDirectory" + * @generated + * @ordered + */ + public static final int GET_LOGICAL_NODE_DIRECTORY_VALUE = 54; + + /** + * The '<em><b>Get Msv Reference</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Msv Reference</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_MSV_REFERENCE + * @model name="GetMsvReference" + * @generated + * @ordered + */ + public static final int GET_MSV_REFERENCE_VALUE = 55; + + /** + * The '<em><b>Get MSV Element Number</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get MSV Element Number</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_MSV_ELEMENT_NUMBER + * @model name="GetMSVElementNumber" + * @generated + * @ordered + */ + public static final int GET_MSV_ELEMENT_NUMBER_VALUE = 56; + + /** + * The '<em><b>Get Usv Reference</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get Usv Reference</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_USV_REFERENCE + * @model name="GetUsvReference" + * @generated + * @ordered + */ + public static final int GET_USV_REFERENCE_VALUE = 57; + + /** + * The '<em><b>Get USV Element Number</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Get USV Element Number</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GET_USV_ELEMENT_NUMBER + * @model name="GetUSVElementNumber" + * @generated + * @ordered + */ + public static final int GET_USV_ELEMENT_NUMBER_VALUE = 58; + + /** + * An array of all the '<em><b>TACSI Services Kind</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final TACSIServicesKind[] VALUES_ARRAY = new TACSIServicesKind[] { ASSOCIATE, ABORT, RELEASE, + GET_SERVER_DIRECTORY, GET_LOGICAL_DEVICE_DIRECTORY, GET_ALL_DATA_VALUES, GET_DATA_VALUES, SET_DATA_VALUES, + GET_DATA_DIRECTORY, GET_DATA_DEFINITION, GET_DATA_SET_VALUES, SET_DATA_SET_VALUES, CREATE_DATA_SET, + DELETE_DATA_SET, GET_DATA_SET_DIRECTORY, SELECT_ACTIVE_SG, SELECT_EDIT_SG, SET_EDIT_SG_VALUE, + CONFIRM_EDIT_SG_VALUES, GET_EDIT_SG_VALUE, GET_SGCB_VALUES, REPORT, GET_BRCB_VALUES, SET_BRCB_VALUES, + GET_URCB_VALUES, SET_URCB_VALUES, GET_LCB_VALUES, SET_LCB_VALUES, QUERY_LOG_BY_TIME, QUERY_LOG_AFTER, + GET_LOG_STATUS_VALUES, SEND_GOOSE_MESSAGE, GET_GO_CB_VALUES, SET_GO_CB_VALUES, GET_GO_REFERENCE, + GET_GOOSE_ELEMENT_NUMBER, SEND_MSV_MESSAGE, GET_MSVCB_VALUES, SET_MSVCB_VALUES, SEND_USV_MESSAGE, + GET_USVCB_VALUES, SET_USVCB_VALUES, SELECT, SELECT_WITH_VALUE, CANCEL, OPERATE, COMMAND_TERMINATION, + TIME_ACTIVATED_OPERATE, GET_FILE, SET_FILE, DELETE_FILE, GET_FILE_ATTRIBUTE_VALUES, TIME_SYNCHRONIZATION, + INTERNAL_CHANGE, GET_LOGICAL_NODE_DIRECTORY, GET_MSV_REFERENCE, GET_MSV_ELEMENT_NUMBER, GET_USV_REFERENCE, + GET_USV_ELEMENT_NUMBER, }; + + /** + * A public read-only list of all the '<em><b>TACSI Services Kind</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List< TACSIServicesKind > VALUES = Collections + .unmodifiableList( Arrays.asList( VALUES_ARRAY ) ); + + /** + * Returns the '<em><b>TACSI Services Kind</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 TACSIServicesKind get( String literal ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TACSIServicesKind result = VALUES_ARRAY[i]; + if( result.toString().equals( literal ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TACSI Services Kind</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 TACSIServicesKind getByName( String name ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TACSIServicesKind result = VALUES_ARRAY[i]; + if( result.getName().equals( name ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TACSI Services Kind</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 TACSIServicesKind get( int value ) { + switch( value ) { + case ASSOCIATE_VALUE: + return ASSOCIATE; + case ABORT_VALUE: + return ABORT; + case RELEASE_VALUE: + return RELEASE; + case GET_SERVER_DIRECTORY_VALUE: + return GET_SERVER_DIRECTORY; + case GET_LOGICAL_DEVICE_DIRECTORY_VALUE: + return GET_LOGICAL_DEVICE_DIRECTORY; + case GET_ALL_DATA_VALUES_VALUE: + return GET_ALL_DATA_VALUES; + case GET_DATA_VALUES_VALUE: + return GET_DATA_VALUES; + case SET_DATA_VALUES_VALUE: + return SET_DATA_VALUES; + case GET_DATA_DIRECTORY_VALUE: + return GET_DATA_DIRECTORY; + case GET_DATA_DEFINITION_VALUE: + return GET_DATA_DEFINITION; + case GET_DATA_SET_VALUES_VALUE: + return GET_DATA_SET_VALUES; + case SET_DATA_SET_VALUES_VALUE: + return SET_DATA_SET_VALUES; + case CREATE_DATA_SET_VALUE: + return CREATE_DATA_SET; + case DELETE_DATA_SET_VALUE: + return DELETE_DATA_SET; + case GET_DATA_SET_DIRECTORY_VALUE: + return GET_DATA_SET_DIRECTORY; + case SELECT_ACTIVE_SG_VALUE: + return SELECT_ACTIVE_SG; + case SELECT_EDIT_SG_VALUE: + return SELECT_EDIT_SG; + case SET_EDIT_SG_VALUE_VALUE: + return SET_EDIT_SG_VALUE; + case CONFIRM_EDIT_SG_VALUES_VALUE: + return CONFIRM_EDIT_SG_VALUES; + case GET_EDIT_SG_VALUE_VALUE: + return GET_EDIT_SG_VALUE; + case GET_SGCB_VALUES_VALUE: + return GET_SGCB_VALUES; + case REPORT_VALUE: + return REPORT; + case GET_BRCB_VALUES_VALUE: + return GET_BRCB_VALUES; + case SET_BRCB_VALUES_VALUE: + return SET_BRCB_VALUES; + case GET_URCB_VALUES_VALUE: + return GET_URCB_VALUES; + case SET_URCB_VALUES_VALUE: + return SET_URCB_VALUES; + case GET_LCB_VALUES_VALUE: + return GET_LCB_VALUES; + case SET_LCB_VALUES_VALUE: + return SET_LCB_VALUES; + case QUERY_LOG_BY_TIME_VALUE: + return QUERY_LOG_BY_TIME; + case QUERY_LOG_AFTER_VALUE: + return QUERY_LOG_AFTER; + case GET_LOG_STATUS_VALUES_VALUE: + return GET_LOG_STATUS_VALUES; + case SEND_GOOSE_MESSAGE_VALUE: + return SEND_GOOSE_MESSAGE; + case GET_GO_CB_VALUES_VALUE: + return GET_GO_CB_VALUES; + case SET_GO_CB_VALUES_VALUE: + return SET_GO_CB_VALUES; + case GET_GO_REFERENCE_VALUE: + return GET_GO_REFERENCE; + case GET_GOOSE_ELEMENT_NUMBER_VALUE: + return GET_GOOSE_ELEMENT_NUMBER; + case SEND_MSV_MESSAGE_VALUE: + return SEND_MSV_MESSAGE; + case GET_MSVCB_VALUES_VALUE: + return GET_MSVCB_VALUES; + case SET_MSVCB_VALUES_VALUE: + return SET_MSVCB_VALUES; + case SEND_USV_MESSAGE_VALUE: + return SEND_USV_MESSAGE; + case GET_USVCB_VALUES_VALUE: + return GET_USVCB_VALUES; + case SET_USVCB_VALUES_VALUE: + return SET_USVCB_VALUES; + case SELECT_VALUE: + return SELECT; + case SELECT_WITH_VALUE_VALUE: + return SELECT_WITH_VALUE; + case CANCEL_VALUE: + return CANCEL; + case OPERATE_VALUE: + return OPERATE; + case COMMAND_TERMINATION_VALUE: + return COMMAND_TERMINATION; + case TIME_ACTIVATED_OPERATE_VALUE: + return TIME_ACTIVATED_OPERATE; + case GET_FILE_VALUE: + return GET_FILE; + case SET_FILE_VALUE: + return SET_FILE; + case DELETE_FILE_VALUE: + return DELETE_FILE; + case GET_FILE_ATTRIBUTE_VALUES_VALUE: + return GET_FILE_ATTRIBUTE_VALUES; + case TIME_SYNCHRONIZATION_VALUE: + return TIME_SYNCHRONIZATION; + case INTERNAL_CHANGE_VALUE: + return INTERNAL_CHANGE; + case GET_LOGICAL_NODE_DIRECTORY_VALUE: + return GET_LOGICAL_NODE_DIRECTORY; + case GET_MSV_REFERENCE_VALUE: + return GET_MSV_REFERENCE; + case GET_MSV_ELEMENT_NUMBER_VALUE: + return GET_MSV_ELEMENT_NUMBER; + case GET_USV_REFERENCE_VALUE: + return GET_USV_REFERENCE; + case GET_USV_ELEMENT_NUMBER_VALUE: + return GET_USV_ELEMENT_NUMBER; + } + 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 TACSIServicesKind( int value, String name, String literal ) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + 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; + } + +} //TACSIServicesKind diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAbbreviation.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAbbreviation.java new file mode 100644 index 0000000000000000000000000000000000000000..6a4be1e24b78d096beb6043d89202aec3deaefac --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAbbreviation.java @@ -0,0 +1,98 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TAbbreviation</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of an abbreviation. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation#getName <em>Name</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTAbbreviation() + * @model extendedMetaData="name='tAbbreviation' kind='empty'" + * @generated + */ +public interface TAbbreviation extends EObject { + /** + * Returns the value of the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to a full description of this abbreviation. + * <!-- end-model-doc --> + * @return the value of the '<em>Desc ID</em>' attribute. + * @see #setDescID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTAbbreviation_DescID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='descID'" + * @generated + */ + String getDescID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation#getDescID <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Desc ID</em>' attribute. + * @see #getDescID() + * @generated + */ + void setDescID( String value ); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the abbreviation, as used in IEC 61850 data models. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTAbbreviation_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviationName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + +} // TAbbreviation diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAbbreviations.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAbbreviations.java new file mode 100644 index 0000000000000000000000000000000000000000..0a9681b201abeddb2081de25122ed57c3edc0ea9 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAbbreviations.java @@ -0,0 +1,63 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TAbbreviations</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of abbreviationss which are introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations#getAbbreviation <em>Abbreviation</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTAbbreviations() + * @model extendedMetaData="name='tAbbreviations' kind='elementOnly'" + * @generated + */ +public interface TAbbreviations extends EObject { + /** + * Returns the value of the '<em><b>Abbreviation</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Definition of an abbreviation. + * <!-- end-model-doc --> + * @return the value of the '<em>Abbreviation</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTAbbreviations_Abbreviation() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='Abbreviation' namespace='##targetNamespace'" + * @generated + */ + EList< TAbbreviation > getAbbreviation(); + +} // TAbbreviations diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAbstractLNClass.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAbstractLNClass.java new file mode 100644 index 0000000000000000000000000000000000000000..732b5c5b3ba464a6598385e7577c5a90dc1d0441 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAbstractLNClass.java @@ -0,0 +1,69 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TAbstract LN Class</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of an abstract logical node and its contents. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass#getName <em>Name</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTAbstractLNClass() + * @model extendedMetaData="name='tAbstractLNClass' kind='elementOnly'" + * @generated + */ +public interface TAbstractLNClass extends TAnyLNClass { + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The name of the abstract logical node. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTAbstractLNClass_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClassName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + +} // TAbstractLNClass diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAnyLNClass.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAnyLNClass.java new file mode 100644 index 0000000000000000000000000000000000000000..ae3ca5999c39f006d8c61ea3f6210c2876db2f06 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TAnyLNClass.java @@ -0,0 +1,89 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TAny LN Class</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a logical node (abstract or not) and its contents. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass#getDataObject <em>Data Object</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass#getBase <em>Base</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTAnyLNClass() + * @model abstract="true" + * extendedMetaData="name='tAnyLNClass' kind='elementOnly'" + * @generated + */ +public interface TAnyLNClass extends TTitledClass { + /** + * Returns the value of the '<em><b>Data Object</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Child Data Object of the logical node. + * <!-- end-model-doc --> + * @return the value of the '<em>Data Object</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTAnyLNClass_DataObject() + * @model containment="true" + * extendedMetaData="kind='element' name='DataObject' namespace='##targetNamespace'" + * @generated + */ + EList< TDataObject > getDataObject(); + + /** + * Returns the value of the '<em><b>Base</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the abstract LN class this one extends (directly). + * <!-- end-model-doc --> + * @return the value of the '<em>Base</em>' attribute. + * @see #setBase(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTAnyLNClass_Base() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClassName" + * extendedMetaData="kind='attribute' name='base'" + * @generated + */ + String getBase(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass#getBase <em>Base</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Base</em>' attribute. + * @see #getBase() + * @generated + */ + void setBase( String value ); + +} // TAnyLNClass diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TApplicableServiceNS.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TApplicableServiceNS.java new file mode 100644 index 0000000000000000000000000000000000000000..f0ea44160a98777266176a8a91c85706043644cf --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TApplicableServiceNS.java @@ -0,0 +1,144 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import javax.xml.datatype.XMLGregorianCalendar; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TApplicable Service NS</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Describes the allowed usages of ServiceNS-es. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getServiceNsUsage <em>Service Ns Usage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getDate <em>Date</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getVersion <em>Version</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTApplicableServiceNS() + * @model extendedMetaData="name='tApplicableServiceNS' kind='elementOnly'" + * @generated + */ +public interface TApplicableServiceNS extends TCopyrighted { + /** + * Returns the value of the '<em><b>Service Ns Usage</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Specification of a ServiceNS and all NS it can be used for. + * <!-- end-model-doc --> + * @return the value of the '<em>Service Ns Usage</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTApplicableServiceNS_ServiceNsUsage() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='ServiceNsUsage' namespace='##targetNamespace'" + * @generated + */ + EList< TServiceNsUsage > getServiceNsUsage(); + + /** + * Returns the value of the '<em><b>Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Date of definition of the file. + * <!-- end-model-doc --> + * @return the value of the '<em>Date</em>' attribute. + * @see #setDate(XMLGregorianCalendar) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTApplicableServiceNS_Date() + * @model dataType="org.eclipse.emf.ecore.xml.type.DateTime" required="true" + * extendedMetaData="kind='attribute' name='date'" + * @generated + */ + XMLGregorianCalendar getDate(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getDate <em>Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Date</em>' attribute. + * @see #getDate() + * @generated + */ + void setDate( XMLGregorianCalendar value ); + + /** + * Returns the value of the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version of the file. + * <!-- end-model-doc --> + * @return the value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #setVersion(long) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTApplicableServiceNS_Version() + * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.UnsignedInt" required="true" + * extendedMetaData="kind='attribute' name='version'" + * @generated + */ + long getVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #getVersion() + * @generated + */ + void setVersion( long value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetVersion() + * @see #getVersion() + * @see #setVersion(long) + * @generated + */ + void unsetVersion(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS#getVersion <em>Version</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Version</em>' attribute is set. + * @see #unsetVersion() + * @see #getVersion() + * @see #setVersion(long) + * @generated + */ + boolean isSetVersion(); + +} // TApplicableServiceNS diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TApplicableServices.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TApplicableServices.java new file mode 100644 index 0000000000000000000000000000000000000000..6a15e5382880ba26309779c7d60a0f092eca774c --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TApplicableServices.java @@ -0,0 +1,80 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TApplicable Services</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Applicable services for a given functional constraint. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices#getService <em>Service</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices#getDataSetMemberOf <em>Data Set Member Of</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTApplicableServices() + * @model extendedMetaData="name='tApplicableServices' kind='elementOnly'" + * @generated + */ +public interface TApplicableServices extends EObject { + /** + * Returns the value of the '<em><b>Service</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * If present, indicates that the service with given name applies to attributes with the specified FC (otherwise it may not be used). + * <!-- end-model-doc --> + * @return the value of the '<em>Service</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTApplicableServices_Service() + * @model containment="true" + * extendedMetaData="kind='element' name='Service' namespace='##targetNamespace'" + * @generated + */ + EList< ServiceType > getService(); + + /** + * Returns the value of the '<em><b>Data Set Member Of</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * An attribute of this FC can be member of a dataset for a control block type indicated by attribute cb if and only if this element is present. + * <!-- end-model-doc --> + * @return the value of the '<em>Data Set Member Of</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTApplicableServices_DataSetMemberOf() + * @model containment="true" + * extendedMetaData="kind='element' name='DataSetMemberOf' namespace='##targetNamespace'" + * @generated + */ + EList< TDataSetMemberOf > getDataSetMemberOf(); + +} // TApplicableServices diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TBasicType.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TBasicType.java new file mode 100644 index 0000000000000000000000000000000000000000..86e05738ef634367a1e45c960e002cf418c24f94 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TBasicType.java @@ -0,0 +1,98 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TBasic Type</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a basic type for a data attribute. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType#getName <em>Name</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTBasicType() + * @model extendedMetaData="name='tBasicType' kind='empty'" + * @generated + */ +public interface TBasicType extends EObject { + /** + * Returns the value of the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to a full description of this object. + * <!-- end-model-doc --> + * @return the value of the '<em>Desc ID</em>' attribute. + * @see #setDescID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTBasicType_DescID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='descID'" + * @generated + */ + String getDescID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType#getDescID <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Desc ID</em>' attribute. + * @see #getDescID() + * @generated + */ + void setDescID( String value ); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the basic type (e.g., INT32), as used in SCL. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTBasicType_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypeName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + +} // TBasicType diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TBasicTypes.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TBasicTypes.java new file mode 100644 index 0000000000000000000000000000000000000000..2e9178b5b870f309c1cc0e98c0ddfb3d8f9fd94f --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TBasicTypes.java @@ -0,0 +1,64 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TBasic Types</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of basic types for data attributes introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes#getBasicType <em>Basic Type</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTBasicTypes() + * @model extendedMetaData="name='tBasicTypes' kind='elementOnly'" + * @generated + */ +public interface TBasicTypes extends EObject { + /** + * Returns the value of the '<em><b>Basic Type</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Basic Type</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Basic Type</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTBasicTypes_BasicType() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='BasicType' namespace='##targetNamespace'" + * @generated + */ + EList< TBasicType > getBasicType(); + +} // TBasicTypes diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCBKind.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCBKind.java new file mode 100644 index 0000000000000000000000000000000000000000..8853acf55dae52a426d0f6cb4bb2ba7814c2b35f --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCBKind.java @@ -0,0 +1,289 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +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>TCB Kind</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Enumeration of control block kinds. + * <!-- end-model-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCBKind() + * @model extendedMetaData="name='tCBKind'" + * @generated + */ +public enum TCBKind implements Enumerator { + /** + * The '<em><b>RCB</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #RCB_VALUE + * @generated + * @ordered + */ + RCB( 0, "RCB", "RCB" ), + + /** + * The '<em><b>LCB</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #LCB_VALUE + * @generated + * @ordered + */ + LCB( 1, "LCB", "LCB" ), + + /** + * The '<em><b>Go CB</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #GO_CB_VALUE + * @generated + * @ordered + */ + GO_CB( 2, "GoCB", "GoCB" ), + + /** + * The '<em><b>SVCB</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SVCB_VALUE + * @generated + * @ordered + */ + SVCB( 3, "SVCB", "SVCB" ); + + /** + * The '<em><b>RCB</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>RCB</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #RCB + * @model + * @generated + * @ordered + */ + public static final int RCB_VALUE = 0; + + /** + * The '<em><b>LCB</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>LCB</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #LCB + * @model + * @generated + * @ordered + */ + public static final int LCB_VALUE = 1; + + /** + * The '<em><b>Go CB</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Go CB</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #GO_CB + * @model name="GoCB" + * @generated + * @ordered + */ + public static final int GO_CB_VALUE = 2; + + /** + * The '<em><b>SVCB</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>SVCB</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SVCB + * @model + * @generated + * @ordered + */ + public static final int SVCB_VALUE = 3; + + /** + * An array of all the '<em><b>TCB Kind</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final TCBKind[] VALUES_ARRAY = new TCBKind[] { RCB, LCB, GO_CB, SVCB, }; + + /** + * A public read-only list of all the '<em><b>TCB Kind</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List< TCBKind > VALUES = Collections.unmodifiableList( Arrays.asList( VALUES_ARRAY ) ); + + /** + * Returns the '<em><b>TCB Kind</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 TCBKind get( String literal ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TCBKind result = VALUES_ARRAY[i]; + if( result.toString().equals( literal ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TCB Kind</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 TCBKind getByName( String name ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TCBKind result = VALUES_ARRAY[i]; + if( result.getName().equals( name ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TCB Kind</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 TCBKind get( int value ) { + switch( value ) { + case RCB_VALUE: + return RCB; + case LCB_VALUE: + return LCB; + case GO_CB_VALUE: + return GO_CB; + case SVCB_VALUE: + return SVCB; + } + 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 TCBKind( int value, String name, String literal ) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + 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; + } + +} //TCBKind diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCDC.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCDC.java new file mode 100644 index 0000000000000000000000000000000000000000..288db8abf77c78ef344452ca963832ba58e0c273 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCDC.java @@ -0,0 +1,328 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TCDC</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a Common Data Class (CDC). It is always non-abstract. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getSubDataObject <em>Sub Data Object</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getDataAttribute <em>Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getServiceParameter <em>Service Parameter</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isEnumParameterized <em>Enum Parameterized</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isStatistics <em>Statistics</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isTypeKindParameterized <em>Type Kind Parameterized</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getVariant <em>Variant</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDC() + * @model extendedMetaData="name='tCDC' kind='elementOnly'" + * @generated + */ +public interface TCDC extends TTitledClass { + /** + * Returns the value of the '<em><b>Sub Data Object</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Sub Data Object</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Sub Data Object</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDC_SubDataObject() + * @model containment="true" + * extendedMetaData="kind='element' name='SubDataObject' namespace='##targetNamespace'" + * @generated + */ + EList< TSubDataObject > getSubDataObject(); + + /** + * Returns the value of the '<em><b>Data Attribute</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Data Attribute</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Data Attribute</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDC_DataAttribute() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='DataAttribute' namespace='##targetNamespace'" + * @generated + */ + EList< TDataAttribute > getDataAttribute(); + + /** + * Returns the value of the '<em><b>Service Parameter</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Service Parameter</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Service Parameter</em>' containment reference. + * @see #setServiceParameter(TServiceParameter) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDC_ServiceParameter() + * @model containment="true" + * extendedMetaData="kind='element' name='ServiceParameter' namespace='##targetNamespace'" + * @generated + */ + TServiceParameter getServiceParameter(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getServiceParameter <em>Service Parameter</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Service Parameter</em>' containment reference. + * @see #getServiceParameter() + * @generated + */ + void setServiceParameter( TServiceParameter value ); + + /** + * Returns the value of the '<em><b>Enum Parameterized</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether this CDC has at least one child data attribute of typeKind ENUMERATION but its exact enumeration type is left open. + * <!-- end-model-doc --> + * @return the value of the '<em>Enum Parameterized</em>' attribute. + * @see #isSetEnumParameterized() + * @see #unsetEnumParameterized() + * @see #setEnumParameterized(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDC_EnumParameterized() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='enumParameterized'" + * @generated + */ + boolean isEnumParameterized(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isEnumParameterized <em>Enum Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Enum Parameterized</em>' attribute. + * @see #isSetEnumParameterized() + * @see #unsetEnumParameterized() + * @see #isEnumParameterized() + * @generated + */ + void setEnumParameterized( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isEnumParameterized <em>Enum Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetEnumParameterized() + * @see #isEnumParameterized() + * @see #setEnumParameterized(boolean) + * @generated + */ + void unsetEnumParameterized(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isEnumParameterized <em>Enum Parameterized</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Enum Parameterized</em>' attribute is set. + * @see #unsetEnumParameterized() + * @see #isEnumParameterized() + * @see #setEnumParameterized(boolean) + * @generated + */ + boolean isSetEnumParameterized(); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the common data class. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDC_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + + /** + * Returns the value of the '<em><b>Statistics</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether DataObject of this CDC can be used for statistics. + * <!-- end-model-doc --> + * @return the value of the '<em>Statistics</em>' attribute. + * @see #isSetStatistics() + * @see #unsetStatistics() + * @see #setStatistics(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDC_Statistics() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='statistics'" + * @generated + */ + boolean isStatistics(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isStatistics <em>Statistics</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Statistics</em>' attribute. + * @see #isSetStatistics() + * @see #unsetStatistics() + * @see #isStatistics() + * @generated + */ + void setStatistics( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isStatistics <em>Statistics</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetStatistics() + * @see #isStatistics() + * @see #setStatistics(boolean) + * @generated + */ + void unsetStatistics(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isStatistics <em>Statistics</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Statistics</em>' attribute is set. + * @see #unsetStatistics() + * @see #isStatistics() + * @see #setStatistics(boolean) + * @generated + */ + boolean isSetStatistics(); + + /** + * Returns the value of the '<em><b>Type Kind Parameterized</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether this CDC has at least one child data attribute with typeKind "undefined". + * Cannot be set to true at the same time as sibling attribute enumParameterized. + * <!-- end-model-doc --> + * @return the value of the '<em>Type Kind Parameterized</em>' attribute. + * @see #isSetTypeKindParameterized() + * @see #unsetTypeKindParameterized() + * @see #setTypeKindParameterized(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDC_TypeKindParameterized() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='typeKindParameterized'" + * @generated + */ + boolean isTypeKindParameterized(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isTypeKindParameterized <em>Type Kind Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type Kind Parameterized</em>' attribute. + * @see #isSetTypeKindParameterized() + * @see #unsetTypeKindParameterized() + * @see #isTypeKindParameterized() + * @generated + */ + void setTypeKindParameterized( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isTypeKindParameterized <em>Type Kind Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetTypeKindParameterized() + * @see #isTypeKindParameterized() + * @see #setTypeKindParameterized(boolean) + * @generated + */ + void unsetTypeKindParameterized(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#isTypeKindParameterized <em>Type Kind Parameterized</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Type Kind Parameterized</em>' attribute is set. + * @see #unsetTypeKindParameterized() + * @see #isTypeKindParameterized() + * @see #setTypeKindParameterized(boolean) + * @generated + */ + boolean isSetTypeKindParameterized(); + + /** + * Returns the value of the '<em><b>Variant</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identification of the variant of the CDC (e.g., SPG_SP). + * <!-- end-model-doc --> + * @return the value of the '<em>Variant</em>' attribute. + * @see #setVariant(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDC_Variant() + * @model dataType="org.eclipse.emf.ecore.xml.type.Token" + * extendedMetaData="kind='attribute' name='variant'" + * @generated + */ + String getVariant(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC#getVariant <em>Variant</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Variant</em>' attribute. + * @see #getVariant() + * @generated + */ + void setVariant( String value ); + +} // TCDC diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCDCs.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCDCs.java new file mode 100644 index 0000000000000000000000000000000000000000..24f14c1cb8a43fa425a3a6d1013df07bbb101768 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCDCs.java @@ -0,0 +1,63 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TCD Cs</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of CDCs introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs#getCDC <em>CDC</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDCs() + * @model extendedMetaData="name='tCDCs' kind='elementOnly'" + * @generated + */ +public interface TCDCs extends EObject { + /** + * Returns the value of the '<em><b>CDC</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Definition of a common data class. + * <!-- end-model-doc --> + * @return the value of the '<em>CDC</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCDCs_CDC() + * @model containment="true" + * extendedMetaData="kind='element' name='CDC' namespace='##targetNamespace'" + * @generated + */ + EList< TCDC > getCDC(); + +} // TCDCs diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TChanges.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TChanges.java new file mode 100644 index 0000000000000000000000000000000000000000..aec9bc7ff3faec7183aa383d5ea8463494362a40 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TChanges.java @@ -0,0 +1,291 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import javax.xml.datatype.XMLGregorianCalendar; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TChanges</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Namespace history, e.g., which version it is based on and which TISSUES it includes since then. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getChangesID <em>Changes ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getDate <em>Date</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getTissues <em>Tissues</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getVersion <em>Version</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTChanges() + * @model extendedMetaData="name='tChanges' kind='empty'" + * @generated + */ +public interface TChanges extends EObject { + /** + * Returns the value of the '<em><b>Changes ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to a textual description of changes (not TISSUE list). Shall only be used for private namespaces. + * <!-- end-model-doc --> + * @return the value of the '<em>Changes ID</em>' attribute. + * @see #setChangesID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTChanges_ChangesID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='changesID'" + * @generated + */ + String getChangesID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getChangesID <em>Changes ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Changes ID</em>' attribute. + * @see #getChangesID() + * @generated + */ + void setChangesID( String value ); + + /** + * Returns the value of the '<em><b>Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The date since the Tissues have been logged. + * <!-- end-model-doc --> + * @return the value of the '<em>Date</em>' attribute. + * @see #setDate(XMLGregorianCalendar) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTChanges_Date() + * @model dataType="org.eclipse.emf.ecore.xml.type.Date" + * extendedMetaData="kind='attribute' name='date'" + * @generated + */ + XMLGregorianCalendar getDate(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getDate <em>Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Date</em>' attribute. + * @see #getDate() + * @generated + */ + void setDate( XMLGregorianCalendar value ); + + /** + * Returns the value of the '<em><b>Release</b></em>' attribute. + * The default value is <code>"1"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Release of the namespace this NSD file is based on, per default 1. + * <!-- end-model-doc --> + * @return the value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #setRelease(short) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTChanges_Release() + * @model default="1" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRelease" + * extendedMetaData="kind='attribute' name='release'" + * @generated + */ + short getRelease(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #getRelease() + * @generated + */ + void setRelease( short value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + void unsetRelease(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRelease <em>Release</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Release</em>' attribute is set. + * @see #unsetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + boolean isSetRelease(); + + /** + * Returns the value of the '<em><b>Revision</b></em>' attribute. + * The default value is <code>"A"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Revision of the namespace this NSD file is based on, per default 'A'. + * <!-- end-model-doc --> + * @return the value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #setRevision(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTChanges_Revision() + * @model default="A" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRevision" + * extendedMetaData="kind='attribute' name='revision'" + * @generated + */ + String getRevision(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #getRevision() + * @generated + */ + void setRevision( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + void unsetRevision(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getRevision <em>Revision</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Revision</em>' attribute is set. + * @see #unsetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + boolean isSetRevision(); + + /** + * Returns the value of the '<em><b>Tissues</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Comma-separated list of TISSUE numbers that were implemented since the previous namespace version/revision/release. + * <!-- end-model-doc --> + * @return the value of the '<em>Tissues</em>' attribute. + * @see #setTissues(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTChanges_Tissues() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TissuesType" + * extendedMetaData="kind='attribute' name='tissues'" + * @generated + */ + String getTissues(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getTissues <em>Tissues</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Tissues</em>' attribute. + * @see #getTissues() + * @generated + */ + void setTissues( String value ); + + /** + * Returns the value of the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version of the namespace this NSD file is based on. + * <!-- end-model-doc --> + * @return the value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #setVersion(int) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTChanges_Version() + * @model unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSVersion" required="true" + * extendedMetaData="kind='attribute' name='version'" + * @generated + */ + int getVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #getVersion() + * @generated + */ + void setVersion( int value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + void unsetVersion(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges#getVersion <em>Version</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Version</em>' attribute is set. + * @see #unsetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + boolean isSetVersion(); + +} // TChanges diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TConstructedAttribute.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TConstructedAttribute.java new file mode 100644 index 0000000000000000000000000000000000000000..b10065927fe7f12a1669b6434a42cba0f18323f5 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TConstructedAttribute.java @@ -0,0 +1,89 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TConstructed Attribute</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a constructed (structured) data attribute. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute#getSubDataAttribute <em>Sub Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute#getName <em>Name</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTConstructedAttribute() + * @model extendedMetaData="name='tConstructedAttribute' kind='elementOnly'" + * @generated + */ +public interface TConstructedAttribute extends TTitledClass { + /** + * Returns the value of the '<em><b>Sub Data Attribute</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Sub Data Attribute</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Sub Data Attribute</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTConstructedAttribute_SubDataAttribute() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='SubDataAttribute' namespace='##targetNamespace'" + * @generated + */ + EList< TSubDataAttribute > getSubDataAttribute(); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the constructed (structured) data attribute. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTConstructedAttribute_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + +} // TConstructedAttribute diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TConstructedAttributes.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TConstructedAttributes.java new file mode 100644 index 0000000000000000000000000000000000000000..47e501167d8455117b71faa6e0eda5b7bd372aab --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TConstructedAttributes.java @@ -0,0 +1,63 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TConstructed Attributes</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of Constructed Attributes introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes#getConstructedAttribute <em>Constructed Attribute</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTConstructedAttributes() + * @model extendedMetaData="name='tConstructedAttributes' kind='elementOnly'" + * @generated + */ +public interface TConstructedAttributes extends EObject { + /** + * Returns the value of the '<em><b>Constructed Attribute</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Definition of a constructed (structured) data attribute. + * <!-- end-model-doc --> + * @return the value of the '<em>Constructed Attribute</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTConstructedAttributes_ConstructedAttribute() + * @model containment="true" + * extendedMetaData="kind='element' name='ConstructedAttribute' namespace='##targetNamespace'" + * @generated + */ + EList< TConstructedAttribute > getConstructedAttribute(); + +} // TConstructedAttributes diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCopyrightNotice.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCopyrightNotice.java new file mode 100644 index 0000000000000000000000000000000000000000..389beb7eeeb5597083bcfad4672360c229eabc54 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCopyrightNotice.java @@ -0,0 +1,98 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TCopyright Notice</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Copyright notice definition. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice#getNotice <em>Notice</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice#getLicense <em>License</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCopyrightNotice() + * @model extendedMetaData="name='tCopyrightNotice' kind='elementOnly'" + * @generated + */ +public interface TCopyrightNotice extends EObject { + /** + * Returns the value of the '<em><b>Notice</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The textual copyright notice. + * <!-- end-model-doc --> + * @return the value of the '<em>Notice</em>' containment reference. + * @see #setNotice(TNotice) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCopyrightNotice_Notice() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='Notice' namespace='##targetNamespace'" + * @generated + */ + TNotice getNotice(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice#getNotice <em>Notice</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Notice</em>' containment reference. + * @see #getNotice() + * @generated + */ + void setNotice( TNotice value ); + + /** + * Returns the value of the '<em><b>License</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The license definition. + * <!-- end-model-doc --> + * @return the value of the '<em>License</em>' containment reference. + * @see #setLicense(TLicense) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCopyrightNotice_License() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='License' namespace='##targetNamespace'" + * @generated + */ + TLicense getLicense(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice#getLicense <em>License</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>License</em>' containment reference. + * @see #getLicense() + * @generated + */ + void setLicense( TLicense value ); + +} // TCopyrightNotice diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCopyrighted.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCopyrighted.java new file mode 100644 index 0000000000000000000000000000000000000000..a092b8f3ed6c7bcb0c11e1fb15abba22f7beb98f --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TCopyrighted.java @@ -0,0 +1,71 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TCopyrighted</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Add description for a copyrighted XML. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted#getCopyright <em>Copyright</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCopyrighted() + * @model extendedMetaData="name='tCopyrighted' kind='elementOnly'" + * @generated + */ +public interface TCopyrighted extends EObject { + /** + * Returns the value of the '<em><b>Copyright</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The copyright notice attached to the XML + * <!-- end-model-doc --> + * @return the value of the '<em>Copyright</em>' containment reference. + * @see #setCopyright(TCopyrightNotice) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTCopyrighted_Copyright() + * @model containment="true" + * extendedMetaData="kind='element' name='Copyright' namespace='##targetNamespace'" + * @generated + */ + TCopyrightNotice getCopyright(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted#getCopyright <em>Copyright</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Copyright</em>' containment reference. + * @see #getCopyright() + * @generated + */ + void setCopyright( TCopyrightNotice value ); + +} // TCopyrighted diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDataAttribute.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDataAttribute.java new file mode 100644 index 0000000000000000000000000000000000000000..8d611ba9957684cae722a2cacc5bba6f40d47085 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDataAttribute.java @@ -0,0 +1,708 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import java.math.BigDecimal; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TData Attribute</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a Data Attribute. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDchg <em>Dchg</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getDefaultValue <em>Default Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDupd <em>Dupd</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getFc <em>Fc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isIsArray <em>Is Array</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMaxIndexAttribute <em>Max Index Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMaxValue <em>Max Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMinIndex <em>Min Index</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMinValue <em>Min Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isQchg <em>Qchg</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getSizeAttribute <em>Size Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getTypeKind <em>Type Kind</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute() + * @model extendedMetaData="name='tDataAttribute' kind='empty'" + * @generated + */ +public interface TDataAttribute extends TDocumentedClass { + /** + * Returns the value of the '<em><b>Dchg</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Dchg</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Dchg</em>' attribute. + * @see #isSetDchg() + * @see #unsetDchg() + * @see #setDchg(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_Dchg() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='dchg'" + * @generated + */ + boolean isDchg(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDchg <em>Dchg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Dchg</em>' attribute. + * @see #isSetDchg() + * @see #unsetDchg() + * @see #isDchg() + * @generated + */ + void setDchg( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDchg <em>Dchg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetDchg() + * @see #isDchg() + * @see #setDchg(boolean) + * @generated + */ + void unsetDchg(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDchg <em>Dchg</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Dchg</em>' attribute is set. + * @see #unsetDchg() + * @see #isDchg() + * @see #setDchg(boolean) + * @generated + */ + boolean isSetDchg(); + + /** + * Returns the value of the '<em><b>Default Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Default value for the data attribute. May only be defined for data attributes with typeKind="BASIC" or "ENUMERATED". + * <!-- end-model-doc --> + * @return the value of the '<em>Default Value</em>' attribute. + * @see #setDefaultValue(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_DefaultValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.NormalizedString" + * extendedMetaData="kind='attribute' name='defaultValue'" + * @generated + */ + String getDefaultValue(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getDefaultValue <em>Default Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Default Value</em>' attribute. + * @see #getDefaultValue() + * @generated + */ + void setDefaultValue( String value ); + + /** + * Returns the value of the '<em><b>Dupd</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Dupd</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Dupd</em>' attribute. + * @see #isSetDupd() + * @see #unsetDupd() + * @see #setDupd(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_Dupd() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='dupd'" + * @generated + */ + boolean isDupd(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDupd <em>Dupd</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Dupd</em>' attribute. + * @see #isSetDupd() + * @see #unsetDupd() + * @see #isDupd() + * @generated + */ + void setDupd( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDupd <em>Dupd</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetDupd() + * @see #isDupd() + * @see #setDupd(boolean) + * @generated + */ + void unsetDupd(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isDupd <em>Dupd</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Dupd</em>' attribute is set. + * @see #unsetDupd() + * @see #isDupd() + * @see #setDupd(boolean) + * @generated + */ + boolean isSetDupd(); + + /** + * Returns the value of the '<em><b>Fc</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Functional constraint of the data attribute. + * <!-- end-model-doc --> + * @return the value of the '<em>Fc</em>' attribute. + * @see #setFc(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_Fc() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFCAbbreviation" required="true" + * extendedMetaData="kind='attribute' name='fc'" + * @generated + */ + String getFc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getFc <em>Fc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fc</em>' attribute. + * @see #getFc() + * @generated + */ + void setFc( String value ); + + /** + * Returns the value of the '<em><b>Is Array</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether the element is an array. By default, not an array. + * <!-- end-model-doc --> + * @return the value of the '<em>Is Array</em>' attribute. + * @see #isSetIsArray() + * @see #unsetIsArray() + * @see #setIsArray(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_IsArray() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='isArray'" + * @generated + */ + boolean isIsArray(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isIsArray <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Is Array</em>' attribute. + * @see #isSetIsArray() + * @see #unsetIsArray() + * @see #isIsArray() + * @generated + */ + void setIsArray( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isIsArray <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetIsArray() + * @see #isIsArray() + * @see #setIsArray(boolean) + * @generated + */ + void unsetIsArray(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isIsArray <em>Is Array</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Is Array</em>' attribute is set. + * @see #unsetIsArray() + * @see #isIsArray() + * @see #setIsArray(boolean) + * @generated + */ + boolean isSetIsArray(); + + /** + * Returns the value of the '<em><b>Max Index Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the Attribute holding the maximal index of the array. + * Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used. + * <!-- end-model-doc --> + * @return the value of the '<em>Max Index Attribute</em>' attribute. + * @see #setMaxIndexAttribute(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_MaxIndexAttribute() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" + * extendedMetaData="kind='attribute' name='maxIndexAttribute'" + * @generated + */ + String getMaxIndexAttribute(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMaxIndexAttribute <em>Max Index Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Max Index Attribute</em>' attribute. + * @see #getMaxIndexAttribute() + * @generated + */ + void setMaxIndexAttribute( String value ); + + /** + * Returns the value of the '<em><b>Max Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Allowed maximal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number. + * <!-- end-model-doc --> + * @return the value of the '<em>Max Value</em>' attribute. + * @see #setMaxValue(BigDecimal) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_MaxValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.Decimal" + * extendedMetaData="kind='attribute' name='maxValue'" + * @generated + */ + BigDecimal getMaxValue(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMaxValue <em>Max Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Max Value</em>' attribute. + * @see #getMaxValue() + * @generated + */ + void setMaxValue( BigDecimal value ); + + /** + * Returns the value of the '<em><b>Min Index</b></em>' attribute. + * The default value is <code>"0"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Lowest index of the array. + * Is relevant information if and only if isArray=true. + * By default 0. + * <!-- end-model-doc --> + * @return the value of the '<em>Min Index</em>' attribute. + * @see #isSetMinIndex() + * @see #unsetMinIndex() + * @see #setMinIndex(long) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_MinIndex() + * @model default="0" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.UnsignedInt" + * extendedMetaData="kind='attribute' name='minIndex'" + * @generated + */ + long getMinIndex(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMinIndex <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Min Index</em>' attribute. + * @see #isSetMinIndex() + * @see #unsetMinIndex() + * @see #getMinIndex() + * @generated + */ + void setMinIndex( long value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMinIndex <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetMinIndex() + * @see #getMinIndex() + * @see #setMinIndex(long) + * @generated + */ + void unsetMinIndex(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMinIndex <em>Min Index</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Min Index</em>' attribute is set. + * @see #unsetMinIndex() + * @see #getMinIndex() + * @see #setMinIndex(long) + * @generated + */ + boolean isSetMinIndex(); + + /** + * Returns the value of the '<em><b>Min Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Allowed minimal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number. + * <!-- end-model-doc --> + * @return the value of the '<em>Min Value</em>' attribute. + * @see #setMinValue(BigDecimal) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_MinValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.Decimal" + * extendedMetaData="kind='attribute' name='minValue'" + * @generated + */ + BigDecimal getMinValue(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getMinValue <em>Min Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Min Value</em>' attribute. + * @see #getMinValue() + * @generated + */ + void setMinValue( BigDecimal value ); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the data attribute. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond</b></em>' attribute. + * The default value is <code>"M"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Presence condition of the element. By default 'M' (mandatory). + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #setPresCond(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_PresCond() + * @model default="M" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionName" + * extendedMetaData="kind='attribute' name='presCond'" + * @generated + */ + String getPresCond(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #getPresCond() + * @generated + */ + void setPresCond( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + void unsetPresCond(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCond <em>Pres Cond</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Pres Cond</em>' attribute is set. + * @see #unsetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + boolean isSetPresCond(); + + /** + * Returns the value of the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition. Can be a sibling element or a group number. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args</em>' attribute. + * @see #setPresCondArgs(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_PresCondArgs() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionArgument" + * extendedMetaData="kind='attribute' name='presCondArgs'" + * @generated + */ + String getPresCondArgs(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCondArgs <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args</em>' attribute. + * @see #getPresCondArgs() + * @generated + */ + void setPresCondArgs( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition: a documentation identifier referring to some free text. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #setPresCondArgsID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_PresCondArgsID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='presCondArgsID'" + * @generated + */ + String getPresCondArgsID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getPresCondArgsID <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #getPresCondArgsID() + * @generated + */ + void setPresCondArgsID( String value ); + + /** + * Returns the value of the '<em><b>Qchg</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Qchg</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Qchg</em>' attribute. + * @see #isSetQchg() + * @see #unsetQchg() + * @see #setQchg(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_Qchg() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='qchg'" + * @generated + */ + boolean isQchg(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isQchg <em>Qchg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Qchg</em>' attribute. + * @see #isSetQchg() + * @see #unsetQchg() + * @see #isQchg() + * @generated + */ + void setQchg( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isQchg <em>Qchg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetQchg() + * @see #isQchg() + * @see #setQchg(boolean) + * @generated + */ + void unsetQchg(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#isQchg <em>Qchg</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Qchg</em>' attribute is set. + * @see #unsetQchg() + * @see #isQchg() + * @see #setQchg(boolean) + * @generated + */ + boolean isSetQchg(); + + /** + * Returns the value of the '<em><b>Size Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Sibling data attribute name holding the size of the array. + * Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used. + * <!-- end-model-doc --> + * @return the value of the '<em>Size Attribute</em>' attribute. + * @see #setSizeAttribute(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_SizeAttribute() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" + * extendedMetaData="kind='attribute' name='sizeAttribute'" + * @generated + */ + String getSizeAttribute(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getSizeAttribute <em>Size Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Size Attribute</em>' attribute. + * @see #getSizeAttribute() + * @generated + */ + void setSizeAttribute( String value ); + + /** + * Returns the value of the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute, e.g., the name of a basic type like INT32, the name of an enumeration of a constructed data attribute - depending on the sibling typeKind. If not provided, shall be defined by the "parent" element. + * <!-- end-model-doc --> + * @return the value of the '<em>Type</em>' attribute. + * @see #setType(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_Type() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" + * extendedMetaData="kind='attribute' name='type'" + * @generated + */ + String getType(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getType <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type</em>' attribute. + * @see #getType() + * @generated + */ + void setType( String value ); + + /** + * Returns the value of the '<em><b>Type Kind</b></em>' attribute. + * The default value is <code>"BASIC"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The kind of the data attribute's type. By default, "BASIC". + * <!-- end-model-doc --> + * @return the value of the '<em>Type Kind</em>' attribute. + * @see #isSetTypeKind() + * @see #unsetTypeKind() + * @see #setTypeKind(Enumerator) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataAttribute_TypeKind() + * @model default="BASIC" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeTypeKind" + * extendedMetaData="kind='attribute' name='typeKind'" + * @generated + */ + Enumerator getTypeKind(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getTypeKind <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type Kind</em>' attribute. + * @see #isSetTypeKind() + * @see #unsetTypeKind() + * @see #getTypeKind() + * @generated + */ + void setTypeKind( Enumerator value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getTypeKind <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetTypeKind() + * @see #getTypeKind() + * @see #setTypeKind(Enumerator) + * @generated + */ + void unsetTypeKind(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute#getTypeKind <em>Type Kind</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Type Kind</em>' attribute is set. + * @see #unsetTypeKind() + * @see #getTypeKind() + * @see #setTypeKind(Enumerator) + * @generated + */ + boolean isSetTypeKind(); + +} // TDataAttribute diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDataObject.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDataObject.java new file mode 100644 index 0000000000000000000000000000000000000000..94ee06351424de68d815fc2db98f5c76af098554 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDataObject.java @@ -0,0 +1,453 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TData Object</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a Data Object of a logical node. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCond <em>Ds Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCondArgs <em>Ds Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCondArgsID <em>Ds Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#isTransient <em>Transient</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getUnderlyingType <em>Underlying Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getUnderlyingTypeKind <em>Underlying Type Kind</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject() + * @model extendedMetaData="name='tDataObject' kind='empty'" + * @generated + */ +public interface TDataObject extends TDocumentedClass { + /** + * Returns the value of the '<em><b>Ds Pres Cond</b></em>' attribute. + * The default value is <code>"M"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Presence condition of the element. By default 'M' (mandatory). + * <!-- end-model-doc --> + * @return the value of the '<em>Ds Pres Cond</em>' attribute. + * @see #isSetDsPresCond() + * @see #unsetDsPresCond() + * @see #setDsPresCond(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_DsPresCond() + * @model default="M" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionName" + * extendedMetaData="kind='attribute' name='dsPresCond'" + * @generated + */ + String getDsPresCond(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCond <em>Ds Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Ds Pres Cond</em>' attribute. + * @see #isSetDsPresCond() + * @see #unsetDsPresCond() + * @see #getDsPresCond() + * @generated + */ + void setDsPresCond( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCond <em>Ds Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetDsPresCond() + * @see #getDsPresCond() + * @see #setDsPresCond(String) + * @generated + */ + void unsetDsPresCond(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCond <em>Ds Pres Cond</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Ds Pres Cond</em>' attribute is set. + * @see #unsetDsPresCond() + * @see #getDsPresCond() + * @see #setDsPresCond(String) + * @generated + */ + boolean isSetDsPresCond(); + + /** + * Returns the value of the '<em><b>Ds Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition. Can be a sibling element or a group number. + * <!-- end-model-doc --> + * @return the value of the '<em>Ds Pres Cond Args</em>' attribute. + * @see #setDsPresCondArgs(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_DsPresCondArgs() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionArgument" + * extendedMetaData="kind='attribute' name='dsPresCondArgs'" + * @generated + */ + String getDsPresCondArgs(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCondArgs <em>Ds Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Ds Pres Cond Args</em>' attribute. + * @see #getDsPresCondArgs() + * @generated + */ + void setDsPresCondArgs( String value ); + + /** + * Returns the value of the '<em><b>Ds Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition: a documentation identifier referring to some free text. + * <!-- end-model-doc --> + * @return the value of the '<em>Ds Pres Cond Args ID</em>' attribute. + * @see #setDsPresCondArgsID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_DsPresCondArgsID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='dsPresCondArgsID'" + * @generated + */ + String getDsPresCondArgsID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getDsPresCondArgsID <em>Ds Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Ds Pres Cond Args ID</em>' attribute. + * @see #getDsPresCondArgsID() + * @generated + */ + void setDsPresCondArgsID( String value ); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the data object. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObjectName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond</b></em>' attribute. + * The default value is <code>"M"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Presence condition of the element. By default 'M' (mandatory). + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #setPresCond(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_PresCond() + * @model default="M" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionName" + * extendedMetaData="kind='attribute' name='presCond'" + * @generated + */ + String getPresCond(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #getPresCond() + * @generated + */ + void setPresCond( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + void unsetPresCond(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCond <em>Pres Cond</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Pres Cond</em>' attribute is set. + * @see #unsetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + boolean isSetPresCond(); + + /** + * Returns the value of the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition. Can be a sibling element or a group number. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args</em>' attribute. + * @see #setPresCondArgs(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_PresCondArgs() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionArgument" + * extendedMetaData="kind='attribute' name='presCondArgs'" + * @generated + */ + String getPresCondArgs(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCondArgs <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args</em>' attribute. + * @see #getPresCondArgs() + * @generated + */ + void setPresCondArgs( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition: a documentation identifier referring to some free text. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #setPresCondArgsID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_PresCondArgsID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='presCondArgsID'" + * @generated + */ + String getPresCondArgsID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getPresCondArgsID <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #getPresCondArgsID() + * @generated + */ + void setPresCondArgsID( String value ); + + /** + * Returns the value of the '<em><b>Transient</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether this data object is transient. By default, it is not. + * <!-- end-model-doc --> + * @return the value of the '<em>Transient</em>' attribute. + * @see #isSetTransient() + * @see #unsetTransient() + * @see #setTransient(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_Transient() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='transient'" + * @generated + */ + boolean isTransient(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#isTransient <em>Transient</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Transient</em>' attribute. + * @see #isSetTransient() + * @see #unsetTransient() + * @see #isTransient() + * @generated + */ + void setTransient( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#isTransient <em>Transient</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetTransient() + * @see #isTransient() + * @see #setTransient(boolean) + * @generated + */ + void unsetTransient(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#isTransient <em>Transient</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Transient</em>' attribute is set. + * @see #unsetTransient() + * @see #isTransient() + * @see #setTransient(boolean) + * @generated + */ + boolean isSetTransient(); + + /** + * Returns the value of the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Type of the data object, i.e., the name of the CDC. + * <!-- end-model-doc --> + * @return the value of the '<em>Type</em>' attribute. + * @see #setType(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_Type() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCName" required="true" + * extendedMetaData="kind='attribute' name='type'" + * @generated + */ + String getType(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getType <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type</em>' attribute. + * @see #getType() + * @generated + */ + void setType( String value ); + + /** + * Returns the value of the '<em><b>Underlying Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Type to be used for type-open CDCs, e.g., enumeration to be used for enumeration-based CDCs (e.g., ENS, ENC, ENG). + * <!-- end-model-doc --> + * @return the value of the '<em>Underlying Type</em>' attribute. + * @see #setUnderlyingType(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_UnderlyingType() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" + * extendedMetaData="kind='attribute' name='underlyingType'" + * @generated + */ + String getUnderlyingType(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getUnderlyingType <em>Underlying Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Underlying Type</em>' attribute. + * @see #getUnderlyingType() + * @generated + */ + void setUnderlyingType( String value ); + + /** + * Returns the value of the '<em><b>Underlying Type Kind</b></em>' attribute. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The typeKind to be used for all "undefined" attributes of the CDC of this DataObject. + * <!-- end-model-doc --> + * @return the value of the '<em>Underlying Type Kind</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @see #isSetUnderlyingTypeKind() + * @see #unsetUnderlyingTypeKind() + * @see #setUnderlyingTypeKind(TDefinedAttributeTypeKind) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataObject_UnderlyingTypeKind() + * @model unsettable="true" + * extendedMetaData="kind='attribute' name='underlyingTypeKind'" + * @generated + */ + TDefinedAttributeTypeKind getUnderlyingTypeKind(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getUnderlyingTypeKind <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Underlying Type Kind</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @see #isSetUnderlyingTypeKind() + * @see #unsetUnderlyingTypeKind() + * @see #getUnderlyingTypeKind() + * @generated + */ + void setUnderlyingTypeKind( TDefinedAttributeTypeKind value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getUnderlyingTypeKind <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetUnderlyingTypeKind() + * @see #getUnderlyingTypeKind() + * @see #setUnderlyingTypeKind(TDefinedAttributeTypeKind) + * @generated + */ + void unsetUnderlyingTypeKind(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject#getUnderlyingTypeKind <em>Underlying Type Kind</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Underlying Type Kind</em>' attribute is set. + * @see #unsetUnderlyingTypeKind() + * @see #getUnderlyingTypeKind() + * @see #setUnderlyingTypeKind(TDefinedAttributeTypeKind) + * @generated + */ + boolean isSetUnderlyingTypeKind(); + +} // TDataObject diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDataSetMemberOf.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDataSetMemberOf.java new file mode 100644 index 0000000000000000000000000000000000000000..2c40f0b9f8fd0c391a9d72c683d708024f92539f --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDataSetMemberOf.java @@ -0,0 +1,101 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TData Set Member Of</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Indication of a given object can be a data set member of a given control block. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf#getCb <em>Cb</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataSetMemberOf() + * @model extendedMetaData="name='tDataSetMemberOf' kind='empty'" + * @generated + */ +public interface TDataSetMemberOf extends EObject { + /** + * Returns the value of the '<em><b>Cb</b></em>' attribute. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Control block kind. + * <!-- end-model-doc --> + * @return the value of the '<em>Cb</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind + * @see #isSetCb() + * @see #unsetCb() + * @see #setCb(TCBKind) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDataSetMemberOf_Cb() + * @model unsettable="true" required="true" + * extendedMetaData="kind='attribute' name='cb'" + * @generated + */ + TCBKind getCb(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf#getCb <em>Cb</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cb</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind + * @see #isSetCb() + * @see #unsetCb() + * @see #getCb() + * @generated + */ + void setCb( TCBKind value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf#getCb <em>Cb</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetCb() + * @see #getCb() + * @see #setCb(TCBKind) + * @generated + */ + void unsetCb(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf#getCb <em>Cb</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Cb</em>' attribute is set. + * @see #unsetCb() + * @see #getCb() + * @see #setCb(TCBKind) + * @generated + */ + boolean isSetCb(); + +} // TDataSetMemberOf diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDefinedAttributeTypeKind.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDefinedAttributeTypeKind.java new file mode 100644 index 0000000000000000000000000000000000000000..cb01d64de143348a2c42bdc5a0fa9d5d1c4c95d7 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDefinedAttributeTypeKind.java @@ -0,0 +1,270 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +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>TDefined Attribute Type Kind</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Type kind of a data attribute. + * <!-- end-model-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDefinedAttributeTypeKind() + * @model extendedMetaData="name='tDefinedAttributeTypeKind'" + * @generated + */ +public enum TDefinedAttributeTypeKind implements Enumerator { + /** + * The '<em><b>BASIC</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute is a basic one (e.g., BOOLEAN, INT32), including CODED ENUMs (e.g., Dbpos, Tcmd) and PACKED LISTs (Timestamp, Quality, OptFlds). + * <!-- end-model-doc --> + * @see #BASIC_VALUE + * @generated + * @ordered + */ + BASIC( 0, "BASIC", "BASIC" ), + + /** + * The '<em><b>ENUMERATED</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute is an enumeration. + * <!-- end-model-doc --> + * @see #ENUMERATED_VALUE + * @generated + * @ordered + */ + ENUMERATED( 1, "ENUMERATED", "ENUMERATED" ), + + /** + * The '<em><b>CONSTRUCTED</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute is a constructed (composed) one. + * <!-- end-model-doc --> + * @see #CONSTRUCTED_VALUE + * @generated + * @ordered + */ + CONSTRUCTED( 2, "CONSTRUCTED", "CONSTRUCTED" ); + + /** + * The '<em><b>BASIC</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute is a basic one (e.g., BOOLEAN, INT32), including CODED ENUMs (e.g., Dbpos, Tcmd) and PACKED LISTs (Timestamp, Quality, OptFlds). + * <!-- end-model-doc --> + * @see #BASIC + * @model + * @generated + * @ordered + */ + public static final int BASIC_VALUE = 0; + + /** + * The '<em><b>ENUMERATED</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute is an enumeration. + * <!-- end-model-doc --> + * @see #ENUMERATED + * @model + * @generated + * @ordered + */ + public static final int ENUMERATED_VALUE = 1; + + /** + * The '<em><b>CONSTRUCTED</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute is a constructed (composed) one. + * <!-- end-model-doc --> + * @see #CONSTRUCTED + * @model + * @generated + * @ordered + */ + public static final int CONSTRUCTED_VALUE = 2; + + /** + * An array of all the '<em><b>TDefined Attribute Type Kind</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final TDefinedAttributeTypeKind[] VALUES_ARRAY = new TDefinedAttributeTypeKind[] { BASIC, ENUMERATED, + CONSTRUCTED, }; + + /** + * A public read-only list of all the '<em><b>TDefined Attribute Type Kind</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List< TDefinedAttributeTypeKind > VALUES = Collections + .unmodifiableList( Arrays.asList( VALUES_ARRAY ) ); + + /** + * Returns the '<em><b>TDefined Attribute Type Kind</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 TDefinedAttributeTypeKind get( String literal ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TDefinedAttributeTypeKind result = VALUES_ARRAY[i]; + if( result.toString().equals( literal ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TDefined Attribute Type Kind</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 TDefinedAttributeTypeKind getByName( String name ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TDefinedAttributeTypeKind result = VALUES_ARRAY[i]; + if( result.getName().equals( name ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TDefined Attribute Type Kind</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 TDefinedAttributeTypeKind get( int value ) { + switch( value ) { + case BASIC_VALUE: + return BASIC; + case ENUMERATED_VALUE: + return ENUMERATED; + case CONSTRUCTED_VALUE: + return CONSTRUCTED; + } + 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 TDefinedAttributeTypeKind( int value, String name, String literal ) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + 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; + } + +} //TDefinedAttributeTypeKind diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDoc.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDoc.java new file mode 100644 index 0000000000000000000000000000000000000000..1ec6b0ffaacaa3fa03cf029cb625a5f2c7a3d88a --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDoc.java @@ -0,0 +1,127 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.emf.ecore.util.FeatureMap; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TDoc</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * A key-value pair for documentation. Attribute "id" is the key (the documentation string identifier) and the value of the element is the documentation string itself. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getMixed <em>Mixed</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getGroup <em>Group</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getAny <em>Any</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getId <em>Id</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDoc() + * @model extendedMetaData="name='tDoc' kind='mixed'" + * @generated + */ +public interface TDoc extends EObject { + /** + * Returns the value of the '<em><b>Mixed</b></em>' attribute list. + * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mixed</em>' attribute list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Mixed</em>' attribute list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDoc_Mixed() + * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true" + * extendedMetaData="kind='elementWildcard' name=':mixed'" + * @generated + */ + FeatureMap getMixed(); + + /** + * Returns the value of the '<em><b>Group</b></em>' attribute list. + * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Group</em>' attribute list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Group</em>' attribute list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDoc_Group() + * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true" transient="true" volatile="true" derived="true" + * extendedMetaData="kind='group' name='group:1'" + * @generated + */ + FeatureMap getGroup(); + + /** + * Returns the value of the '<em><b>Any</b></em>' attribute list. + * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Any</em>' attribute list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Any</em>' attribute list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDoc_Any() + * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true" transient="true" volatile="true" derived="true" + * extendedMetaData="kind='elementWildcard' wildcards='##any' name=':2' processing='lax' group='#group:1'" + * @generated + */ + FeatureMap getAny(); + + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identifier of the documentation string. + * <!-- end-model-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDoc_Id() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" required="true" + * extendedMetaData="kind='attribute' name='id'" + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId( String value ); + +} // TDoc diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDocumentedClass.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDocumentedClass.java new file mode 100644 index 0000000000000000000000000000000000000000..950f48f39bae289f3d1f4070174f7b26be16d471 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TDocumentedClass.java @@ -0,0 +1,181 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TDocumented Class</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * A class with description. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isDeprecated <em>Deprecated</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isInformative <em>Informative</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDocumentedClass() + * @model extendedMetaData="name='tDocumentedClass' kind='empty'" + * @generated + */ +public interface TDocumentedClass extends EObject { + /** + * Returns the value of the '<em><b>Deprecated</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether this object is classified as deprecated or not. By default not deprecated. + * <!-- end-model-doc --> + * @return the value of the '<em>Deprecated</em>' attribute. + * @see #isSetDeprecated() + * @see #unsetDeprecated() + * @see #setDeprecated(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDocumentedClass_Deprecated() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='deprecated'" + * @generated + */ + boolean isDeprecated(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isDeprecated <em>Deprecated</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Deprecated</em>' attribute. + * @see #isSetDeprecated() + * @see #unsetDeprecated() + * @see #isDeprecated() + * @generated + */ + void setDeprecated( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isDeprecated <em>Deprecated</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetDeprecated() + * @see #isDeprecated() + * @see #setDeprecated(boolean) + * @generated + */ + void unsetDeprecated(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isDeprecated <em>Deprecated</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Deprecated</em>' attribute is set. + * @see #unsetDeprecated() + * @see #isDeprecated() + * @see #setDeprecated(boolean) + * @generated + */ + boolean isSetDeprecated(); + + /** + * Returns the value of the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to a full description of this object. + * <!-- end-model-doc --> + * @return the value of the '<em>Desc ID</em>' attribute. + * @see #setDescID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDocumentedClass_DescID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='descID'" + * @generated + */ + String getDescID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#getDescID <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Desc ID</em>' attribute. + * @see #getDescID() + * @generated + */ + void setDescID( String value ); + + /** + * Returns the value of the '<em><b>Informative</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether this object is classified as informative or not. By default not informative. + * <!-- end-model-doc --> + * @return the value of the '<em>Informative</em>' attribute. + * @see #isSetInformative() + * @see #unsetInformative() + * @see #setInformative(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTDocumentedClass_Informative() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='informative'" + * @generated + */ + boolean isInformative(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isInformative <em>Informative</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Informative</em>' attribute. + * @see #isSetInformative() + * @see #unsetInformative() + * @see #isInformative() + * @generated + */ + void setInformative( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isInformative <em>Informative</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetInformative() + * @see #isInformative() + * @see #setInformative(boolean) + * @generated + */ + void unsetInformative(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass#isInformative <em>Informative</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Informative</em>' attribute is set. + * @see #unsetInformative() + * @see #isInformative() + * @see #setInformative(boolean) + * @generated + */ + boolean isSetInformative(); + +} // TDocumentedClass diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TEnumeration.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TEnumeration.java new file mode 100644 index 0000000000000000000000000000000000000000..579883fc0dcad351f0d17819c003674fcadee356 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TEnumeration.java @@ -0,0 +1,116 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TEnumeration</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of an enumeration. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getLiteral <em>Literal</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getInheritedFrom <em>Inherited From</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getName <em>Name</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTEnumeration() + * @model extendedMetaData="name='tEnumeration' kind='elementOnly'" + * @generated + */ +public interface TEnumeration extends TTitledClass { + /** + * Returns the value of the '<em><b>Literal</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Literal</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Literal</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTEnumeration_Literal() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='Literal' namespace='##targetNamespace'" + * @generated + */ + EList< TLiteral > getLiteral(); + + /** + * Returns the value of the '<em><b>Inherited From</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the enumeration which is extended by the current enumeration. + * <!-- end-model-doc --> + * @return the value of the '<em>Inherited From</em>' attribute. + * @see #setInheritedFrom(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTEnumeration_InheritedFrom() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" + * extendedMetaData="kind='attribute' name='inheritedFrom'" + * @generated + */ + String getInheritedFrom(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getInheritedFrom <em>Inherited From</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Inherited From</em>' attribute. + * @see #getInheritedFrom() + * @generated + */ + void setInheritedFrom( String value ); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the enumeration. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTEnumeration_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + +} // TEnumeration diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TEnumerations.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TEnumerations.java new file mode 100644 index 0000000000000000000000000000000000000000..7dbcd19f9d5c2c2873b5278dde422a222e029faa --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TEnumerations.java @@ -0,0 +1,63 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TEnumerations</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of Enumerations introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations#getEnumeration <em>Enumeration</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTEnumerations() + * @model extendedMetaData="name='tEnumerations' kind='elementOnly'" + * @generated + */ +public interface TEnumerations extends EObject { + /** + * Returns the value of the '<em><b>Enumeration</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Definition of an enumeration. + * <!-- end-model-doc --> + * @return the value of the '<em>Enumeration</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTEnumerations_Enumeration() + * @model containment="true" + * extendedMetaData="kind='element' name='Enumeration' namespace='##targetNamespace'" + * @generated + */ + EList< TEnumeration > getEnumeration(); + +} // TEnumerations diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TFunctionalConstraint.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TFunctionalConstraint.java new file mode 100644 index 0000000000000000000000000000000000000000..ac9dd23fcd599e05560b181eb7ecaae9cb18027f --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TFunctionalConstraint.java @@ -0,0 +1,153 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TFunctional Constraint</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a Functional Constraint. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getApplicableServices <em>Applicable Services</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getAbbreviation <em>Abbreviation</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getTitleID <em>Title ID</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTFunctionalConstraint() + * @model extendedMetaData="name='tFunctionalConstraint' kind='elementOnly'" + * @generated + */ +public interface TFunctionalConstraint extends EObject { + /** + * Returns the value of the '<em><b>Applicable Services</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Applicable Services</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Applicable Services</em>' containment reference. + * @see #setApplicableServices(TApplicableServices) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTFunctionalConstraint_ApplicableServices() + * @model containment="true" + * extendedMetaData="kind='element' name='ApplicableServices' namespace='##targetNamespace'" + * @generated + */ + TApplicableServices getApplicableServices(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getApplicableServices <em>Applicable Services</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Applicable Services</em>' containment reference. + * @see #getApplicableServices() + * @generated + */ + void setApplicableServices( TApplicableServices value ); + + /** + * Returns the value of the '<em><b>Abbreviation</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Abbreviated name of the FC (e.g., ST, MX, etc.). + * <!-- end-model-doc --> + * @return the value of the '<em>Abbreviation</em>' attribute. + * @see #setAbbreviation(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTFunctionalConstraint_Abbreviation() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFCAbbreviation" required="true" + * extendedMetaData="kind='attribute' name='abbreviation'" + * @generated + */ + String getAbbreviation(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getAbbreviation <em>Abbreviation</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Abbreviation</em>' attribute. + * @see #getAbbreviation() + * @generated + */ + void setAbbreviation( String value ); + + /** + * Returns the value of the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to a full description of this object. + * <!-- end-model-doc --> + * @return the value of the '<em>Desc ID</em>' attribute. + * @see #setDescID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTFunctionalConstraint_DescID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='descID'" + * @generated + */ + String getDescID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getDescID <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Desc ID</em>' attribute. + * @see #getDescID() + * @generated + */ + void setDescID( String value ); + + /** + * Returns the value of the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to the title (alias) of this object. + * <!-- end-model-doc --> + * @return the value of the '<em>Title ID</em>' attribute. + * @see #setTitleID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTFunctionalConstraint_TitleID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='titleID'" + * @generated + */ + String getTitleID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint#getTitleID <em>Title ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Title ID</em>' attribute. + * @see #getTitleID() + * @generated + */ + void setTitleID( String value ); + +} // TFunctionalConstraint diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TFunctionalConstraints.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TFunctionalConstraints.java new file mode 100644 index 0000000000000000000000000000000000000000..c96e60fc23714238067639d08b4b0de6deceaec9 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TFunctionalConstraints.java @@ -0,0 +1,63 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TFunctional Constraints</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of Functional Constraints introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints#getFunctionalConstraint <em>Functional Constraint</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTFunctionalConstraints() + * @model extendedMetaData="name='tFunctionalConstraints' kind='elementOnly'" + * @generated + */ +public interface TFunctionalConstraints extends EObject { + /** + * Returns the value of the '<em><b>Functional Constraint</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Definition of a Functional Constraint. + * <!-- end-model-doc --> + * @return the value of the '<em>Functional Constraint</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTFunctionalConstraints_FunctionalConstraint() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='FunctionalConstraint' namespace='##targetNamespace'" + * @generated + */ + EList< TFunctionalConstraint > getFunctionalConstraint(); + +} // TFunctionalConstraints diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLNClass.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLNClass.java new file mode 100644 index 0000000000000000000000000000000000000000..e20a50a2b29f49305ef9d0bb98e9173c954e24b9 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLNClass.java @@ -0,0 +1,179 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TLN Class</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a concrete (i.e., not abstract) logical node and its contents. At most one of "base" and "isExtension" shall be defined. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isCanHaveLOG <em>Can Have LOG</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isIsExtension <em>Is Extension</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#getName <em>Name</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLNClass() + * @model extendedMetaData="name='tLNClass' kind='elementOnly'" + * @generated + */ +public interface TLNClass extends TAnyLNClass { + /** + * Returns the value of the '<em><b>Can Have LOG</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether a LOG can be allocated to this logical node. By default, false. + * <!-- end-model-doc --> + * @return the value of the '<em>Can Have LOG</em>' attribute. + * @see #isSetCanHaveLOG() + * @see #unsetCanHaveLOG() + * @see #setCanHaveLOG(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLNClass_CanHaveLOG() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='canHaveLOG'" + * @generated + */ + boolean isCanHaveLOG(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isCanHaveLOG <em>Can Have LOG</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Can Have LOG</em>' attribute. + * @see #isSetCanHaveLOG() + * @see #unsetCanHaveLOG() + * @see #isCanHaveLOG() + * @generated + */ + void setCanHaveLOG( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isCanHaveLOG <em>Can Have LOG</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetCanHaveLOG() + * @see #isCanHaveLOG() + * @see #setCanHaveLOG(boolean) + * @generated + */ + void unsetCanHaveLOG(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isCanHaveLOG <em>Can Have LOG</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Can Have LOG</em>' attribute is set. + * @see #unsetCanHaveLOG() + * @see #isCanHaveLOG() + * @see #setCanHaveLOG(boolean) + * @generated + */ + boolean isSetCanHaveLOG(); + + /** + * Returns the value of the '<em><b>Is Extension</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether this logical node is an extension of another non-abstract logical node (with the same LN class name) defined in a namespace this one imports. + * <!-- end-model-doc --> + * @return the value of the '<em>Is Extension</em>' attribute. + * @see #isSetIsExtension() + * @see #unsetIsExtension() + * @see #setIsExtension(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLNClass_IsExtension() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='isExtension'" + * @generated + */ + boolean isIsExtension(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isIsExtension <em>Is Extension</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Is Extension</em>' attribute. + * @see #isSetIsExtension() + * @see #unsetIsExtension() + * @see #isIsExtension() + * @generated + */ + void setIsExtension( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isIsExtension <em>Is Extension</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetIsExtension() + * @see #isIsExtension() + * @see #setIsExtension(boolean) + * @generated + */ + void unsetIsExtension(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#isIsExtension <em>Is Extension</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Is Extension</em>' attribute is set. + * @see #unsetIsExtension() + * @see #isIsExtension() + * @see #setIsExtension(boolean) + * @generated + */ + boolean isSetIsExtension(); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The logical node class name. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLNClass_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClassName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + +} // TLNClass diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLNClasses.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLNClasses.java new file mode 100644 index 0000000000000000000000000000000000000000..4179afdb076b79a602ac1957695ec18b2b8d021a --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLNClasses.java @@ -0,0 +1,80 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TLN Classes</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of LNClasses introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses#getAbstractLNClass <em>Abstract LN Class</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses#getLNClass <em>LN Class</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLNClasses() + * @model extendedMetaData="name='tLNClasses' kind='elementOnly'" + * @generated + */ +public interface TLNClasses extends EObject { + /** + * Returns the value of the '<em><b>Abstract LN Class</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Definition of an abstract logical node. + * <!-- end-model-doc --> + * @return the value of the '<em>Abstract LN Class</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLNClasses_AbstractLNClass() + * @model containment="true" + * extendedMetaData="kind='element' name='AbstractLNClass' namespace='##targetNamespace'" + * @generated + */ + EList< TAbstractLNClass > getAbstractLNClass(); + + /** + * Returns the value of the '<em><b>LN Class</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Definition of a (non-abstract) logical node. + * <!-- end-model-doc --> + * @return the value of the '<em>LN Class</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLNClasses_LNClass() + * @model containment="true" + * extendedMetaData="kind='element' name='LNClass' namespace='##targetNamespace'" + * @generated + */ + EList< TLNClass > getLNClass(); + +} // TLNClasses diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLicense.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLicense.java new file mode 100644 index 0000000000000000000000000000000000000000..0ac82c71f9a121918ae3354d569c6b730c12cd46 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLicense.java @@ -0,0 +1,148 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.emf.ecore.util.FeatureMap; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TLicense</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Describe the license definition. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getMixed <em>Mixed</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getKind <em>Kind</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getUri <em>Uri</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLicense() + * @model extendedMetaData="name='tLicense' kind='mixed'" + * @generated + */ +public interface TLicense extends EObject { + /** + * Returns the value of the '<em><b>Mixed</b></em>' attribute list. + * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mixed</em>' attribute list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Mixed</em>' attribute list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLicense_Mixed() + * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true" + * extendedMetaData="kind='elementWildcard' name=':mixed'" + * @generated + */ + FeatureMap getMixed(); + + /** + * Returns the value of the '<em><b>Kind</b></em>' attribute. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * kind of license + * <!-- end-model-doc --> + * @return the value of the '<em>Kind</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind + * @see #isSetKind() + * @see #unsetKind() + * @see #setKind(TLicenseKind) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLicense_Kind() + * @model unsettable="true" + * extendedMetaData="kind='attribute' name='kind'" + * @generated + */ + TLicenseKind getKind(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getKind <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Kind</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind + * @see #isSetKind() + * @see #unsetKind() + * @see #getKind() + * @generated + */ + void setKind( TLicenseKind value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getKind <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetKind() + * @see #getKind() + * @see #setKind(TLicenseKind) + * @generated + */ + void unsetKind(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getKind <em>Kind</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Kind</em>' attribute is set. + * @see #unsetKind() + * @see #getKind() + * @see #setKind(TLicenseKind) + * @generated + */ + boolean isSetKind(); + + /** + * Returns the value of the '<em><b>Uri</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * path to the license file + * <!-- end-model-doc --> + * @return the value of the '<em>Uri</em>' attribute. + * @see #setUri(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLicense_Uri() + * @model dataType="org.eclipse.emf.ecore.xml.type.NormalizedString" + * extendedMetaData="kind='attribute' name='uri'" + * @generated + */ + String getUri(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense#getUri <em>Uri</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Uri</em>' attribute. + * @see #getUri() + * @generated + */ + void setUri( String value ); + +} // TLicense diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLicenseKind.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLicenseKind.java new file mode 100644 index 0000000000000000000000000000000000000000..47075fb4e7d45cdba10406b4e9cd2ad2b6d893a3 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLicenseKind.java @@ -0,0 +1,262 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +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>TLicense Kind</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Kind of license + * <!-- end-model-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLicenseKind() + * @model extendedMetaData="name='tLicenseKind'" + * @generated + */ +public enum TLicenseKind implements Enumerator { + /** + * The '<em><b>Standard</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #STANDARD_VALUE + * @generated + * @ordered + */ + STANDARD( 0, "Standard", "Standard" ), + + /** + * The '<em><b>Private</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #PRIVATE_VALUE + * @generated + * @ordered + */ + PRIVATE( 1, "Private", "Private" ), + + /** + * The '<em><b>None</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #NONE_VALUE + * @generated + * @ordered + */ + NONE( 2, "None", "None" ); + + /** + * The '<em><b>Standard</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Standard</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #STANDARD + * @model name="Standard" + * @generated + * @ordered + */ + public static final int STANDARD_VALUE = 0; + + /** + * The '<em><b>Private</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>Private</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #PRIVATE + * @model name="Private" + * @generated + * @ordered + */ + public static final int PRIVATE_VALUE = 1; + + /** + * The '<em><b>None</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>None</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #NONE + * @model name="None" + * @generated + * @ordered + */ + public static final int NONE_VALUE = 2; + + /** + * An array of all the '<em><b>TLicense Kind</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final TLicenseKind[] VALUES_ARRAY = new TLicenseKind[] { STANDARD, PRIVATE, NONE, }; + + /** + * A public read-only list of all the '<em><b>TLicense Kind</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List< TLicenseKind > VALUES = Collections.unmodifiableList( Arrays.asList( VALUES_ARRAY ) ); + + /** + * Returns the '<em><b>TLicense Kind</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 TLicenseKind get( String literal ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TLicenseKind result = VALUES_ARRAY[i]; + if( result.toString().equals( literal ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TLicense Kind</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 TLicenseKind getByName( String name ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TLicenseKind result = VALUES_ARRAY[i]; + if( result.getName().equals( name ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TLicense Kind</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 TLicenseKind get( int value ) { + switch( value ) { + case STANDARD_VALUE: + return STANDARD; + case PRIVATE_VALUE: + return PRIVATE; + case NONE_VALUE: + return NONE; + } + 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 TLicenseKind( int value, String name, String literal ) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + 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; + } + +} //TLicenseKind diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLiteral.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLiteral.java new file mode 100644 index 0000000000000000000000000000000000000000..a04c05e278bc328a4040d880cafe9f69ebf60621 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TLiteral.java @@ -0,0 +1,123 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TLiteral</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a literal of an enumeration. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral#getLiteralVal <em>Literal Val</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral#getName <em>Name</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLiteral() + * @model extendedMetaData="name='tLiteral' kind='empty'" + * @generated + */ +public interface TLiteral extends TDocumentedClass { + /** + * Returns the value of the '<em><b>Literal Val</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Enumeration literal integer value. + * <!-- end-model-doc --> + * @return the value of the '<em>Literal Val</em>' attribute. + * @see #isSetLiteralVal() + * @see #unsetLiteralVal() + * @see #setLiteralVal(int) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLiteral_LiteralVal() + * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Int" required="true" + * extendedMetaData="kind='attribute' name='literalVal'" + * @generated + */ + int getLiteralVal(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral#getLiteralVal <em>Literal Val</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Literal Val</em>' attribute. + * @see #isSetLiteralVal() + * @see #unsetLiteralVal() + * @see #getLiteralVal() + * @generated + */ + void setLiteralVal( int value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral#getLiteralVal <em>Literal Val</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetLiteralVal() + * @see #getLiteralVal() + * @see #setLiteralVal(int) + * @generated + */ + void unsetLiteralVal(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral#getLiteralVal <em>Literal Val</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Literal Val</em>' attribute is set. + * @see #unsetLiteralVal() + * @see #getLiteralVal() + * @see #setLiteralVal(int) + * @generated + */ + boolean isSetLiteralVal(); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the enumeration's literal. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTLiteral_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteralName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + +} // TLiteral diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TNS.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TNS.java new file mode 100644 index 0000000000000000000000000000000000000000..1d208650371712822e8fd9844b167e8f8cf361f3 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TNS.java @@ -0,0 +1,645 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import javax.xml.datatype.XMLGregorianCalendar; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TNS</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getChanges <em>Changes</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getDependsOn <em>Depends On</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getBasicTypes <em>Basic Types</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getFunctionalConstraints <em>Functional Constraints</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getPresenceConditions <em>Presence Conditions</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getAbbreviations <em>Abbreviations</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getEnumerations <em>Enumerations</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getConstructedAttributes <em>Constructed Attributes</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getCDCs <em>CD Cs</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getLNClasses <em>LN Classes</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getUmlDate <em>Uml Date</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getUmlVersion <em>Uml Version</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getVersion <em>Version</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS() + * @model extendedMetaData="name='tNS' kind='elementOnly'" + * @generated + */ +public interface TNS extends TCopyrighted { + /** + * Returns the value of the '<em><b>Changes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The version/revision/release this namespace is based on, including the TISSUEs implemented in this release. + * <!-- end-model-doc --> + * @return the value of the '<em>Changes</em>' containment reference. + * @see #setChanges(TChanges) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_Changes() + * @model containment="true" + * extendedMetaData="kind='element' name='Changes' namespace='##targetNamespace'" + * @generated + */ + TChanges getChanges(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getChanges <em>Changes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Changes</em>' containment reference. + * @see #getChanges() + * @generated + */ + void setChanges( TChanges value ); + + /** + * Returns the value of the '<em><b>Depends On</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The namespace identification this namespace depends on (and whose definitions are imported into this one). + * <!-- end-model-doc --> + * @return the value of the '<em>Depends On</em>' containment reference. + * @see #setDependsOn(DependsOnType) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_DependsOn() + * @model containment="true" + * extendedMetaData="kind='element' name='DependsOn' namespace='##targetNamespace'" + * @generated + */ + DependsOnType getDependsOn(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getDependsOn <em>Depends On</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Depends On</em>' containment reference. + * @see #getDependsOn() + * @generated + */ + void setDependsOn( DependsOnType value ); + + /** + * Returns the value of the '<em><b>Basic Types</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of basic types added by this namespace. Is cumulative to those defined in namespaces this one DependsOn (may not redefine "included" ones). Note: shall only be used in practice by the 7-2 namespace. + * <!-- end-model-doc --> + * @return the value of the '<em>Basic Types</em>' containment reference. + * @see #setBasicTypes(TBasicTypes) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_BasicTypes() + * @model containment="true" + * extendedMetaData="kind='element' name='BasicTypes' namespace='##targetNamespace'" + * @generated + */ + TBasicTypes getBasicTypes(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getBasicTypes <em>Basic Types</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Basic Types</em>' containment reference. + * @see #getBasicTypes() + * @generated + */ + void setBasicTypes( TBasicTypes value ); + + /** + * Returns the value of the '<em><b>Functional Constraints</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of Functional Constraints added by this namespace. Is cumulative to those defined in namespaces this one DependsOn (may not redefine "included" ones). + * <!-- end-model-doc --> + * @return the value of the '<em>Functional Constraints</em>' containment reference. + * @see #setFunctionalConstraints(TFunctionalConstraints) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_FunctionalConstraints() + * @model containment="true" + * extendedMetaData="kind='element' name='FunctionalConstraints' namespace='##targetNamespace'" + * @generated + */ + TFunctionalConstraints getFunctionalConstraints(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getFunctionalConstraints <em>Functional Constraints</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Functional Constraints</em>' containment reference. + * @see #getFunctionalConstraints() + * @generated + */ + void setFunctionalConstraints( TFunctionalConstraints value ); + + /** + * Returns the value of the '<em><b>Presence Conditions</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of presence conditions added by this namespace. Is cumulative to those defined in namespaces this one DependsOn (may not redefine "included" ones.). + * <!-- end-model-doc --> + * @return the value of the '<em>Presence Conditions</em>' containment reference. + * @see #setPresenceConditions(TPresenceConditions) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_PresenceConditions() + * @model containment="true" + * extendedMetaData="kind='element' name='PresenceConditions' namespace='##targetNamespace'" + * @generated + */ + TPresenceConditions getPresenceConditions(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getPresenceConditions <em>Presence Conditions</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Presence Conditions</em>' containment reference. + * @see #getPresenceConditions() + * @generated + */ + void setPresenceConditions( TPresenceConditions value ); + + /** + * Returns the value of the '<em><b>Abbreviations</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of abbreviations added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.). + * <!-- end-model-doc --> + * @return the value of the '<em>Abbreviations</em>' containment reference. + * @see #setAbbreviations(TAbbreviations) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_Abbreviations() + * @model containment="true" + * extendedMetaData="kind='element' name='Abbreviations' namespace='##targetNamespace'" + * @generated + */ + TAbbreviations getAbbreviations(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getAbbreviations <em>Abbreviations</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Abbreviations</em>' containment reference. + * @see #getAbbreviations() + * @generated + */ + void setAbbreviations( TAbbreviations value ); + + /** + * Returns the value of the '<em><b>Enumerations</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of Enumerations added by this namespace. Is cumulative to those defined in namespaces this one DependsOn (may not redefine "included" ones). + * <!-- end-model-doc --> + * @return the value of the '<em>Enumerations</em>' containment reference. + * @see #setEnumerations(TEnumerations) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_Enumerations() + * @model containment="true" + * extendedMetaData="kind='element' name='Enumerations' namespace='##targetNamespace'" + * @generated + */ + TEnumerations getEnumerations(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getEnumerations <em>Enumerations</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Enumerations</em>' containment reference. + * @see #getEnumerations() + * @generated + */ + void setEnumerations( TEnumerations value ); + + /** + * Returns the value of the '<em><b>Constructed Attributes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of Constructed Attributes added by this namespace. Constructed Attributes are not allowed to be extended by another namespace. Note: shall only be used in practice by the 7-3 + * <!-- end-model-doc --> + * @return the value of the '<em>Constructed Attributes</em>' containment reference. + * @see #setConstructedAttributes(TConstructedAttributes) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_ConstructedAttributes() + * @model containment="true" + * extendedMetaData="kind='element' name='ConstructedAttributes' namespace='##targetNamespace'" + * @generated + */ + TConstructedAttributes getConstructedAttributes(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getConstructedAttributes <em>Constructed Attributes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Constructed Attributes</em>' containment reference. + * @see #getConstructedAttributes() + * @generated + */ + void setConstructedAttributes( TConstructedAttributes value ); + + /** + * Returns the value of the '<em><b>CD Cs</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of CDCs added by this namespace. CDCs are not allowed to be extended by another namespace. Note: shall only be used in practice by the 7-3 + * <!-- end-model-doc --> + * @return the value of the '<em>CD Cs</em>' containment reference. + * @see #setCDCs(TCDCs) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_CDCs() + * @model containment="true" + * extendedMetaData="kind='element' name='CDCs' namespace='##targetNamespace'" + * @generated + */ + TCDCs getCDCs(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getCDCs <em>CD Cs</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>CD Cs</em>' containment reference. + * @see #getCDCs() + * @generated + */ + void setCDCs( TCDCs value ); + + /** + * Returns the value of the '<em><b>LN Classes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of LNClasses added by this namespace. Is cumulative to those defined in namespaces this one DependsOn (may not redefine "included" ones). + * <!-- end-model-doc --> + * @return the value of the '<em>LN Classes</em>' containment reference. + * @see #setLNClasses(TLNClasses) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_LNClasses() + * @model containment="true" + * extendedMetaData="kind='element' name='LNClasses' namespace='##targetNamespace'" + * @generated + */ + TLNClasses getLNClasses(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getLNClasses <em>LN Classes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>LN Classes</em>' containment reference. + * @see #getLNClasses() + * @generated + */ + void setLNClasses( TLNClasses value ); + + /** + * Returns the value of the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to a full description of this NS. + * <!-- end-model-doc --> + * @return the value of the '<em>Desc ID</em>' attribute. + * @see #setDescID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_DescID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='descID'" + * @generated + */ + String getDescID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getDescID <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Desc ID</em>' attribute. + * @see #getDescID() + * @generated + */ + void setDescID( String value ); + + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4". + * <!-- end-model-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_Id() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSIdentifier" required="true" + * extendedMetaData="kind='attribute' name='id'" + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId( String value ); + + /** + * Returns the value of the '<em><b>Publication Stage</b></em>' attribute. + * The default value is <code>"IS"</code>. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The publication stage of the namespace, by default IS. + * <!-- end-model-doc --> + * @return the value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #setPublicationStage(TPubStage) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_PublicationStage() + * @model default="IS" unsettable="true" + * extendedMetaData="kind='attribute' name='publicationStage'" + * @generated + */ + TPubStage getPublicationStage(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @generated + */ + void setPublicationStage( TPubStage value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + void unsetPublicationStage(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getPublicationStage <em>Publication Stage</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Publication Stage</em>' attribute is set. + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + boolean isSetPublicationStage(); + + /** + * Returns the value of the '<em><b>Release</b></em>' attribute. + * The default value is <code>"1"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Release of the namespace version and revision, by default 1. + * <!-- end-model-doc --> + * @return the value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #setRelease(short) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_Release() + * @model default="1" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRelease" + * extendedMetaData="kind='attribute' name='release'" + * @generated + */ + short getRelease(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #getRelease() + * @generated + */ + void setRelease( short value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + void unsetRelease(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRelease <em>Release</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Release</em>' attribute is set. + * @see #unsetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + boolean isSetRelease(); + + /** + * Returns the value of the '<em><b>Revision</b></em>' attribute. + * The default value is <code>"A"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Revision of the namespace version, by default 'A'. + * <!-- end-model-doc --> + * @return the value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #setRevision(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_Revision() + * @model default="A" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRevision" + * extendedMetaData="kind='attribute' name='revision'" + * @generated + */ + String getRevision(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #getRevision() + * @generated + */ + void setRevision( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + void unsetRevision(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getRevision <em>Revision</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Revision</em>' attribute is set. + * @see #unsetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + boolean isSetRevision(); + + /** + * Returns the value of the '<em><b>Uml Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * UTC Date and time of the UML version from which this namespace definition file was generated. Shall be provided if umlVersion is present. Format: YYYY-MM-DDThh:mm:ssZ, where: YYYY indicates the year, MM indicates the month, DD indicates the day, T indicates the start of the required time section, hh indicates the hour, mm indicates the minute, ss indicates the second, and Z the UTC time stamp indication. + * + * <!-- end-model-doc --> + * @return the value of the '<em>Uml Date</em>' attribute. + * @see #setUmlDate(XMLGregorianCalendar) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_UmlDate() + * @model dataType="org.eclipse.emf.ecore.xml.type.DateTime" + * extendedMetaData="kind='attribute' name='umlDate'" + * @generated + */ + XMLGregorianCalendar getUmlDate(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getUmlDate <em>Uml Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Uml Date</em>' attribute. + * @see #getUmlDate() + * @generated + */ + void setUmlDate( XMLGregorianCalendar value ); + + /** + * Returns the value of the '<em><b>Uml Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version of UML from which this namespace definition file was generated from. + * <!-- end-model-doc --> + * @return the value of the '<em>Uml Version</em>' attribute. + * @see #setUmlVersion(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_UmlVersion() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUMLVersion" + * extendedMetaData="kind='attribute' name='umlVersion'" + * @generated + */ + String getUmlVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getUmlVersion <em>Uml Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Uml Version</em>' attribute. + * @see #getUmlVersion() + * @generated + */ + void setUmlVersion( String value ); + + /** + * Returns the value of the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version (year) of the namespace. + * <!-- end-model-doc --> + * @return the value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #setVersion(int) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNS_Version() + * @model unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSVersion" required="true" + * extendedMetaData="kind='attribute' name='version'" + * @generated + */ + int getVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #getVersion() + * @generated + */ + void setVersion( int value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + void unsetVersion(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS#getVersion <em>Version</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Version</em>' attribute is set. + * @see #unsetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + boolean isSetVersion(); + +} // TNS diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TNSDoc.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TNSDoc.java new file mode 100644 index 0000000000000000000000000000000000000000..1a794f5cf4402278a8e8f762e738ff6098f165e7 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TNSDoc.java @@ -0,0 +1,394 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import javax.xml.datatype.XMLGregorianCalendar; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TNS Doc</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * A non-empty list of tDoc elements. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getDoc <em>Doc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getLang <em>Lang</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getUmlDate <em>Uml Date</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getUmlVersion <em>Uml Version</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getVersion <em>Version</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNSDoc() + * @model extendedMetaData="name='tNSDoc' kind='elementOnly'" + * @generated + */ +public interface TNSDoc extends TCopyrighted { + /** + * Returns the value of the '<em><b>Doc</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of documentation identifiers and corresponding documentation strings in the corresponding language. + * <!-- end-model-doc --> + * @return the value of the '<em>Doc</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNSDoc_Doc() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='Doc' namespace='##targetNamespace'" + * @generated + */ + EList< TDoc > getDoc(); + + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4". + * <!-- end-model-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNSDoc_Id() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSIdentifier" required="true" + * extendedMetaData="kind='attribute' name='id'" + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId( String value ); + + /** + * Returns the value of the '<em><b>Lang</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Language of the documentation strings in the file. + * <!-- end-model-doc --> + * @return the value of the '<em>Lang</em>' attribute. + * @see #setLang(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNSDoc_Lang() + * @model dataType="org.eclipse.emf.ecore.xml.type.Language" required="true" + * extendedMetaData="kind='attribute' name='lang'" + * @generated + */ + String getLang(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getLang <em>Lang</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Lang</em>' attribute. + * @see #getLang() + * @generated + */ + void setLang( String value ); + + /** + * Returns the value of the '<em><b>Publication Stage</b></em>' attribute. + * The default value is <code>"IS"</code>. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The publication stage of the namespace, by default IS. + * <!-- end-model-doc --> + * @return the value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #setPublicationStage(TPubStage) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNSDoc_PublicationStage() + * @model default="IS" unsettable="true" + * extendedMetaData="kind='attribute' name='publicationStage'" + * @generated + */ + TPubStage getPublicationStage(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @generated + */ + void setPublicationStage( TPubStage value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + void unsetPublicationStage(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getPublicationStage <em>Publication Stage</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Publication Stage</em>' attribute is set. + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + boolean isSetPublicationStage(); + + /** + * Returns the value of the '<em><b>Release</b></em>' attribute. + * The default value is <code>"1"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Release of the namespace version and revision, by default 1. + * <!-- end-model-doc --> + * @return the value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #setRelease(short) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNSDoc_Release() + * @model default="1" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRelease" + * extendedMetaData="kind='attribute' name='release'" + * @generated + */ + short getRelease(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #getRelease() + * @generated + */ + void setRelease( short value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + void unsetRelease(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRelease <em>Release</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Release</em>' attribute is set. + * @see #unsetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + boolean isSetRelease(); + + /** + * Returns the value of the '<em><b>Revision</b></em>' attribute. + * The default value is <code>"A"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Revision of the namespace version, by default 'A'. + * <!-- end-model-doc --> + * @return the value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #setRevision(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNSDoc_Revision() + * @model default="A" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRevision" + * extendedMetaData="kind='attribute' name='revision'" + * @generated + */ + String getRevision(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #getRevision() + * @generated + */ + void setRevision( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + void unsetRevision(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getRevision <em>Revision</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Revision</em>' attribute is set. + * @see #unsetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + boolean isSetRevision(); + + /** + * Returns the value of the '<em><b>Uml Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * UTC Date and time of the UML version from which this namespace definition file was generated. Shall be provided if umlVersion is present. Format: YYYY-MM-DDThh:mm:ssZ, where: YYYY indicates the year, MM indicates the month, DD indicates the day, T indicates the start of the required time section, hh indicates the hour, mm indicates the minute, ss indicates the second, and Z the UTC time stamp indication. + * + * <!-- end-model-doc --> + * @return the value of the '<em>Uml Date</em>' attribute. + * @see #setUmlDate(XMLGregorianCalendar) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNSDoc_UmlDate() + * @model dataType="org.eclipse.emf.ecore.xml.type.DateTime" + * extendedMetaData="kind='attribute' name='umlDate'" + * @generated + */ + XMLGregorianCalendar getUmlDate(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getUmlDate <em>Uml Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Uml Date</em>' attribute. + * @see #getUmlDate() + * @generated + */ + void setUmlDate( XMLGregorianCalendar value ); + + /** + * Returns the value of the '<em><b>Uml Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version of UML from which this namespace definition file was generated from. + * <!-- end-model-doc --> + * @return the value of the '<em>Uml Version</em>' attribute. + * @see #setUmlVersion(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNSDoc_UmlVersion() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUMLVersion" + * extendedMetaData="kind='attribute' name='umlVersion'" + * @generated + */ + String getUmlVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getUmlVersion <em>Uml Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Uml Version</em>' attribute. + * @see #getUmlVersion() + * @generated + */ + void setUmlVersion( String value ); + + /** + * Returns the value of the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version (year) of the namespace. + * <!-- end-model-doc --> + * @return the value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #setVersion(int) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNSDoc_Version() + * @model unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSVersion" required="true" + * extendedMetaData="kind='attribute' name='version'" + * @generated + */ + int getVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #getVersion() + * @generated + */ + void setVersion( int value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + void unsetVersion(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc#getVersion <em>Version</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Version</em>' attribute is set. + * @see #unsetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + boolean isSetVersion(); + +} // TNSDoc diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TNotice.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TNotice.java new file mode 100644 index 0000000000000000000000000000000000000000..ce6f8178b0dd54d7faec159f7b342b38e21fe70e --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TNotice.java @@ -0,0 +1,64 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.emf.ecore.util.FeatureMap; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TNotice</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Textual notice + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice#getMixed <em>Mixed</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNotice() + * @model extendedMetaData="name='tNotice' kind='mixed'" + * @generated + */ +public interface TNotice extends EObject { + /** + * Returns the value of the '<em><b>Mixed</b></em>' attribute list. + * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mixed</em>' attribute list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Mixed</em>' attribute list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTNotice_Mixed() + * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true" + * extendedMetaData="kind='elementWildcard' name=':mixed'" + * @generated + */ + FeatureMap getMixed(); + +} // TNotice diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TPresenceCondition.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TPresenceCondition.java new file mode 100644 index 0000000000000000000000000000000000000000..0e0ee590cf8653b0b009864a34eae8b1aeca315c --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TPresenceCondition.java @@ -0,0 +1,152 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TPresence Condition</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a presence condition. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getArgument <em>Argument</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getTitleID <em>Title ID</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTPresenceCondition() + * @model extendedMetaData="name='tPresenceCondition' kind='empty'" + * @generated + */ +public interface TPresenceCondition extends EObject { + /** + * Returns the value of the '<em><b>Argument</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The presence condition argument, if any. + * <!-- end-model-doc --> + * @return the value of the '<em>Argument</em>' attribute. + * @see #setArgument(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTPresenceCondition_Argument() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionArgument" + * extendedMetaData="kind='attribute' name='argument'" + * @generated + */ + String getArgument(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getArgument <em>Argument</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Argument</em>' attribute. + * @see #getArgument() + * @generated + */ + void setArgument( String value ); + + /** + * Returns the value of the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to a full description of this object. + * <!-- end-model-doc --> + * @return the value of the '<em>Desc ID</em>' attribute. + * @see #setDescID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTPresenceCondition_DescID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='descID'" + * @generated + */ + String getDescID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getDescID <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Desc ID</em>' attribute. + * @see #getDescID() + * @generated + */ + void setDescID( String value ); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the presence condition, as used in IEC 61850 data models. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTPresenceCondition_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + + /** + * Returns the value of the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to the title (alias) of this object. + * <!-- end-model-doc --> + * @return the value of the '<em>Title ID</em>' attribute. + * @see #setTitleID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTPresenceCondition_TitleID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='titleID'" + * @generated + */ + String getTitleID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition#getTitleID <em>Title ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Title ID</em>' attribute. + * @see #getTitleID() + * @generated + */ + void setTitleID( String value ); + +} // TPresenceCondition diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TPresenceConditions.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TPresenceConditions.java new file mode 100644 index 0000000000000000000000000000000000000000..375e0d4bc7bdd06c7a20a10010d086b7f1182459 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TPresenceConditions.java @@ -0,0 +1,63 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TPresence Conditions</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of presence conditions which are introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions#getPresenceCondition <em>Presence Condition</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTPresenceConditions() + * @model extendedMetaData="name='tPresenceConditions' kind='elementOnly'" + * @generated + */ +public interface TPresenceConditions extends EObject { + /** + * Returns the value of the '<em><b>Presence Condition</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Definition of a presence condition. + * <!-- end-model-doc --> + * @return the value of the '<em>Presence Condition</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTPresenceConditions_PresenceCondition() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='PresenceCondition' namespace='##targetNamespace'" + * @generated + */ + EList< TPresenceCondition > getPresenceCondition(); + +} // TPresenceConditions diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TPubStage.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TPubStage.java new file mode 100644 index 0000000000000000000000000000000000000000..091951a66c9df472d20fea0301e82117a9e83c8e --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TPubStage.java @@ -0,0 +1,442 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +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>TPub Stage</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Publication stage of the namespace. + * <!-- end-model-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTPubStage() + * @model extendedMetaData="name='tPubStage'" + * @generated + */ +public enum TPubStage implements Enumerator { + /** + * The '<em><b>WD</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Working Draft + * <!-- end-model-doc --> + * @see #WD_VALUE + * @generated + * @ordered + */ + WD( 0, "WD", "WD" ), + + /** + * The '<em><b>CD</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Committee Draft + * <!-- end-model-doc --> + * @see #CD_VALUE + * @generated + * @ordered + */ + CD( 1, "CD", "CD" ), + + /** + * The '<em><b>CDV</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Committee Draft for Vote + * <!-- end-model-doc --> + * @see #CDV_VALUE + * @generated + * @ordered + */ + CDV( 2, "CDV", "CDV" ), + + /** + * The '<em><b>DTS</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Draft Technical Specification + * <!-- end-model-doc --> + * @see #DTS_VALUE + * @generated + * @ordered + */ + DTS( 3, "DTS", "DTS" ), + + /** + * The '<em><b>DTR</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Draft Technical Report + * <!-- end-model-doc --> + * @see #DTR_VALUE + * @generated + * @ordered + */ + DTR( 4, "DTR", "DTR" ), + + /** + * The '<em><b>FDIS</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Final Draft International Standard + * <!-- end-model-doc --> + * @see #FDIS_VALUE + * @generated + * @ordered + */ + FDIS( 5, "FDIS", "FDIS" ), + + /** + * The '<em><b>TS</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Technical Specification + * <!-- end-model-doc --> + * @see #TS_VALUE + * @generated + * @ordered + */ + TS( 6, "TS", "TS" ), + + /** + * The '<em><b>TR</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Technical Report + * <!-- end-model-doc --> + * @see #TR_VALUE + * @generated + * @ordered + */ + TR( 7, "TR", "TR" ), + + /** + * The '<em><b>IS</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * International Standard + * <!-- end-model-doc --> + * @see #IS_VALUE + * @generated + * @ordered + */ + IS( 8, "IS", "IS" ); + + /** + * The '<em><b>WD</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Working Draft + * <!-- end-model-doc --> + * @see #WD + * @model + * @generated + * @ordered + */ + public static final int WD_VALUE = 0; + + /** + * The '<em><b>CD</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Committee Draft + * <!-- end-model-doc --> + * @see #CD + * @model + * @generated + * @ordered + */ + public static final int CD_VALUE = 1; + + /** + * The '<em><b>CDV</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Committee Draft for Vote + * <!-- end-model-doc --> + * @see #CDV + * @model + * @generated + * @ordered + */ + public static final int CDV_VALUE = 2; + + /** + * The '<em><b>DTS</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Draft Technical Specification + * <!-- end-model-doc --> + * @see #DTS + * @model + * @generated + * @ordered + */ + public static final int DTS_VALUE = 3; + + /** + * The '<em><b>DTR</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Draft Technical Report + * <!-- end-model-doc --> + * @see #DTR + * @model + * @generated + * @ordered + */ + public static final int DTR_VALUE = 4; + + /** + * The '<em><b>FDIS</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Final Draft International Standard + * <!-- end-model-doc --> + * @see #FDIS + * @model + * @generated + * @ordered + */ + public static final int FDIS_VALUE = 5; + + /** + * The '<em><b>TS</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Technical Specification + * <!-- end-model-doc --> + * @see #TS + * @model + * @generated + * @ordered + */ + public static final int TS_VALUE = 6; + + /** + * The '<em><b>TR</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Technical Report + * <!-- end-model-doc --> + * @see #TR + * @model + * @generated + * @ordered + */ + public static final int TR_VALUE = 7; + + /** + * The '<em><b>IS</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * International Standard + * <!-- end-model-doc --> + * @see #IS + * @model + * @generated + * @ordered + */ + public static final int IS_VALUE = 8; + + /** + * An array of all the '<em><b>TPub Stage</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final TPubStage[] VALUES_ARRAY = new TPubStage[] { WD, CD, CDV, DTS, DTR, FDIS, TS, TR, IS, }; + + /** + * A public read-only list of all the '<em><b>TPub Stage</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List< TPubStage > VALUES = Collections.unmodifiableList( Arrays.asList( VALUES_ARRAY ) ); + + /** + * Returns the '<em><b>TPub Stage</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 TPubStage get( String literal ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TPubStage result = VALUES_ARRAY[i]; + if( result.toString().equals( literal ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TPub Stage</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 TPubStage getByName( String name ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TPubStage result = VALUES_ARRAY[i]; + if( result.getName().equals( name ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TPub Stage</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 TPubStage get( int value ) { + switch( value ) { + case WD_VALUE: + return WD; + case CD_VALUE: + return CD; + case CDV_VALUE: + return CDV; + case DTS_VALUE: + return DTS; + case DTR_VALUE: + return DTR; + case FDIS_VALUE: + return FDIS; + case TS_VALUE: + return TS; + case TR_VALUE: + return TR; + case IS_VALUE: + return IS; + } + 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 TPubStage( int value, String name, String literal ) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + 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; + } + +} //TPubStage diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceCDC.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceCDC.java new file mode 100644 index 0000000000000000000000000000000000000000..c9226b83b9d57b5c3aea2a54cf08fdee63653875 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceCDC.java @@ -0,0 +1,117 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TService CDC</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a CDC extension for control services. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getServiceDataAttribute <em>Service Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getCdc <em>Cdc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getVariant <em>Variant</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceCDC() + * @model extendedMetaData="name='tServiceCDC' kind='elementOnly'" + * @generated + */ +public interface TServiceCDC extends EObject { + /** + * Returns the value of the '<em><b>Service Data Attribute</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Data attribute to be used as service parameter. + * <!-- end-model-doc --> + * @return the value of the '<em>Service Data Attribute</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceCDC_ServiceDataAttribute() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='ServiceDataAttribute' namespace='##targetNamespace'" + * @generated + */ + EList< TServiceDataAttribute > getServiceDataAttribute(); + + /** + * Returns the value of the '<em><b>Cdc</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the common data class the service extension is for. + * <!-- end-model-doc --> + * @return the value of the '<em>Cdc</em>' attribute. + * @see #setCdc(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceCDC_Cdc() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCName" required="true" + * extendedMetaData="kind='attribute' name='cdc'" + * @generated + */ + String getCdc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getCdc <em>Cdc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cdc</em>' attribute. + * @see #getCdc() + * @generated + */ + void setCdc( String value ); + + /** + * Returns the value of the '<em><b>Variant</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identification of the variant of the CDC (e.g., SPG_SP). + * <!-- end-model-doc --> + * @return the value of the '<em>Variant</em>' attribute. + * @see #setVariant(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceCDC_Variant() + * @model dataType="org.eclipse.emf.ecore.xml.type.Token" + * extendedMetaData="kind='attribute' name='variant'" + * @generated + */ + String getVariant(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC#getVariant <em>Variant</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Variant</em>' attribute. + * @see #getVariant() + * @generated + */ + void setVariant( String value ); + +} // TServiceCDC diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceCDCs.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceCDCs.java new file mode 100644 index 0000000000000000000000000000000000000000..10b512ae886fd5fe294b453853b51cf94c5abb6d --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceCDCs.java @@ -0,0 +1,63 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TService CD Cs</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of Service CDCs introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs#getServiceCDC <em>Service CDC</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceCDCs() + * @model extendedMetaData="name='tServiceCDCs' kind='elementOnly'" + * @generated + */ +public interface TServiceCDCs extends EObject { + /** + * Returns the value of the '<em><b>Service CDC</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * CDC extensions for control in this service namespace. + * <!-- end-model-doc --> + * @return the value of the '<em>Service CDC</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceCDCs_ServiceCDC() + * @model containment="true" + * extendedMetaData="kind='element' name='ServiceCDC' namespace='##targetNamespace'" + * @generated + */ + EList< TServiceCDC > getServiceCDC(); + +} // TServiceCDCs diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceConstructedAttribute.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceConstructedAttribute.java new file mode 100644 index 0000000000000000000000000000000000000000..973c2d9fe3282eec9bb909648741ec4b4de27afd --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceConstructedAttribute.java @@ -0,0 +1,97 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TService Constructed Attribute</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a constructed attribute type for services. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute#isTypeKindParameterized <em>Type Kind Parameterized</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceConstructedAttribute() + * @model extendedMetaData="name='tServiceConstructedAttribute' kind='elementOnly'" + * @generated + */ +public interface TServiceConstructedAttribute extends TConstructedAttribute { + /** + * Returns the value of the '<em><b>Type Kind Parameterized</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether this ServiceConstructedAttribute has at least one child data attribute with typeKind "undefined". + * <!-- end-model-doc --> + * @return the value of the '<em>Type Kind Parameterized</em>' attribute. + * @see #isSetTypeKindParameterized() + * @see #unsetTypeKindParameterized() + * @see #setTypeKindParameterized(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceConstructedAttribute_TypeKindParameterized() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='typeKindParameterized'" + * @generated + */ + boolean isTypeKindParameterized(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute#isTypeKindParameterized <em>Type Kind Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type Kind Parameterized</em>' attribute. + * @see #isSetTypeKindParameterized() + * @see #unsetTypeKindParameterized() + * @see #isTypeKindParameterized() + * @generated + */ + void setTypeKindParameterized( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute#isTypeKindParameterized <em>Type Kind Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetTypeKindParameterized() + * @see #isTypeKindParameterized() + * @see #setTypeKindParameterized(boolean) + * @generated + */ + void unsetTypeKindParameterized(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute#isTypeKindParameterized <em>Type Kind Parameterized</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Type Kind Parameterized</em>' attribute is set. + * @see #unsetTypeKindParameterized() + * @see #isTypeKindParameterized() + * @see #setTypeKindParameterized(boolean) + * @generated + */ + boolean isSetTypeKindParameterized(); + +} // TServiceConstructedAttribute diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceConstructedAttributes.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceConstructedAttributes.java new file mode 100644 index 0000000000000000000000000000000000000000..e8f40cfd2571841d9a16ac0379b11948c4274e59 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceConstructedAttributes.java @@ -0,0 +1,63 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TService Constructed Attributes</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of Service Constructed Attributes introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes#getServiceConstructedAttribute <em>Service Constructed Attribute</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceConstructedAttributes() + * @model extendedMetaData="name='tServiceConstructedAttributes' kind='elementOnly'" + * @generated + */ +public interface TServiceConstructedAttributes extends EObject { + /** + * Returns the value of the '<em><b>Service Constructed Attribute</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Realization of Part 7-2 abstract types or constructed attributes needed for control services. Note: in SCL instance files, the ProtNs element shall be specified for these. + * <!-- end-model-doc --> + * @return the value of the '<em>Service Constructed Attribute</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceConstructedAttributes_ServiceConstructedAttribute() + * @model containment="true" + * extendedMetaData="kind='element' name='ServiceConstructedAttribute' namespace='##targetNamespace'" + * @generated + */ + EList< TServiceConstructedAttribute > getServiceConstructedAttribute(); + +} // TServiceConstructedAttributes diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceDataAttribute.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceDataAttribute.java new file mode 100644 index 0000000000000000000000000000000000000000..106bccba806f03ab1c6becd4fdff80646ef3b3ba --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceDataAttribute.java @@ -0,0 +1,373 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TService Data Attribute</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a service parameter as Data Attribute. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getFc <em>Fc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getTypeKind <em>Type Kind</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getUnderlyingType <em>Underlying Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getUnderlyingTypeKind <em>Underlying Type Kind</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceDataAttribute() + * @model extendedMetaData="name='tServiceDataAttribute' kind='empty'" + * @generated + */ +public interface TServiceDataAttribute extends TDocumentedClass { + /** + * Returns the value of the '<em><b>Fc</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Functional constraint of the data attribute. + * <!-- end-model-doc --> + * @return the value of the '<em>Fc</em>' attribute. + * @see #setFc(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceDataAttribute_Fc() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFCAbbreviation" required="true" + * extendedMetaData="kind='attribute' name='fc'" + * @generated + */ + String getFc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getFc <em>Fc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fc</em>' attribute. + * @see #getFc() + * @generated + */ + void setFc( String value ); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the data attribute. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceDataAttribute_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond</b></em>' attribute. + * The default value is <code>"M"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Presence condition of the element. By default 'M' (mandatory). + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #setPresCond(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceDataAttribute_PresCond() + * @model default="M" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionName" + * extendedMetaData="kind='attribute' name='presCond'" + * @generated + */ + String getPresCond(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #getPresCond() + * @generated + */ + void setPresCond( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + void unsetPresCond(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCond <em>Pres Cond</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Pres Cond</em>' attribute is set. + * @see #unsetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + boolean isSetPresCond(); + + /** + * Returns the value of the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition. Can be a sibling element or a group number. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args</em>' attribute. + * @see #setPresCondArgs(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceDataAttribute_PresCondArgs() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionArgument" + * extendedMetaData="kind='attribute' name='presCondArgs'" + * @generated + */ + String getPresCondArgs(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCondArgs <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args</em>' attribute. + * @see #getPresCondArgs() + * @generated + */ + void setPresCondArgs( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition: a documentation identifier referring to some free text. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #setPresCondArgsID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceDataAttribute_PresCondArgsID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='presCondArgsID'" + * @generated + */ + String getPresCondArgsID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getPresCondArgsID <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #getPresCondArgsID() + * @generated + */ + void setPresCondArgsID( String value ); + + /** + * Returns the value of the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute, e.g., the name of a basic type like INT32, the name of an enumeration of a constructed data attribute - depending on the sibling typeKind. If not provided, shall be defined by the "parent" element. + * <!-- end-model-doc --> + * @return the value of the '<em>Type</em>' attribute. + * @see #setType(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceDataAttribute_Type() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" + * extendedMetaData="kind='attribute' name='type'" + * @generated + */ + String getType(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getType <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type</em>' attribute. + * @see #getType() + * @generated + */ + void setType( String value ); + + /** + * Returns the value of the '<em><b>Type Kind</b></em>' attribute. + * The default value is <code>"BASIC"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The kind of the data attribute's type. By default, "BASIC". + * <!-- end-model-doc --> + * @return the value of the '<em>Type Kind</em>' attribute. + * @see #isSetTypeKind() + * @see #unsetTypeKind() + * @see #setTypeKind(Enumerator) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceDataAttribute_TypeKind() + * @model default="BASIC" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeTypeKind" + * extendedMetaData="kind='attribute' name='typeKind'" + * @generated + */ + Enumerator getTypeKind(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getTypeKind <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type Kind</em>' attribute. + * @see #isSetTypeKind() + * @see #unsetTypeKind() + * @see #getTypeKind() + * @generated + */ + void setTypeKind( Enumerator value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getTypeKind <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetTypeKind() + * @see #getTypeKind() + * @see #setTypeKind(Enumerator) + * @generated + */ + void unsetTypeKind(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getTypeKind <em>Type Kind</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Type Kind</em>' attribute is set. + * @see #unsetTypeKind() + * @see #getTypeKind() + * @see #setTypeKind(Enumerator) + * @generated + */ + boolean isSetTypeKind(); + + /** + * Returns the value of the '<em><b>Underlying Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Type to be used for type-open CDCs, e.g., enumeration to be used for enumeration-based CDCs (e.g., ENS, ENC, ENG). + * <!-- end-model-doc --> + * @return the value of the '<em>Underlying Type</em>' attribute. + * @see #setUnderlyingType(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceDataAttribute_UnderlyingType() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" + * extendedMetaData="kind='attribute' name='underlyingType'" + * @generated + */ + String getUnderlyingType(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getUnderlyingType <em>Underlying Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Underlying Type</em>' attribute. + * @see #getUnderlyingType() + * @generated + */ + void setUnderlyingType( String value ); + + /** + * Returns the value of the '<em><b>Underlying Type Kind</b></em>' attribute. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The typeKind to be used for all "undefined" attributes of the CDC of this DataObject. + * <!-- end-model-doc --> + * @return the value of the '<em>Underlying Type Kind</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @see #isSetUnderlyingTypeKind() + * @see #unsetUnderlyingTypeKind() + * @see #setUnderlyingTypeKind(TDefinedAttributeTypeKind) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceDataAttribute_UnderlyingTypeKind() + * @model unsettable="true" + * extendedMetaData="kind='attribute' name='underlyingTypeKind'" + * @generated + */ + TDefinedAttributeTypeKind getUnderlyingTypeKind(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getUnderlyingTypeKind <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Underlying Type Kind</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @see #isSetUnderlyingTypeKind() + * @see #unsetUnderlyingTypeKind() + * @see #getUnderlyingTypeKind() + * @generated + */ + void setUnderlyingTypeKind( TDefinedAttributeTypeKind value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getUnderlyingTypeKind <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetUnderlyingTypeKind() + * @see #getUnderlyingTypeKind() + * @see #setUnderlyingTypeKind(TDefinedAttributeTypeKind) + * @generated + */ + void unsetUnderlyingTypeKind(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute#getUnderlyingTypeKind <em>Underlying Type Kind</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Underlying Type Kind</em>' attribute is set. + * @see #unsetUnderlyingTypeKind() + * @see #getUnderlyingTypeKind() + * @see #setUnderlyingTypeKind(TDefinedAttributeTypeKind) + * @generated + */ + boolean isSetUnderlyingTypeKind(); + +} // TServiceDataAttribute diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceNS.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceNS.java new file mode 100644 index 0000000000000000000000000000000000000000..54819d824c68c2c6b78880920ae9fdccd0d06b2b --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceNS.java @@ -0,0 +1,564 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import javax.xml.datatype.XMLGregorianCalendar; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TService NS</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a service namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getChanges <em>Changes</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getFunctionalConstraints <em>Functional Constraints</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getPresenceConditions <em>Presence Conditions</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getAbbreviations <em>Abbreviations</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceTypeRealizations <em>Service Type Realizations</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceConstructedAttributes <em>Service Constructed Attributes</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceCDCs <em>Service CD Cs</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getUmlDate <em>Uml Date</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getUmlVersion <em>Uml Version</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getVersion <em>Version</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS() + * @model extendedMetaData="name='tServiceNS' kind='elementOnly'" + * @generated + */ +public interface TServiceNS extends TCopyrighted { + /** + * Returns the value of the '<em><b>Changes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The version/revision/release this namespace is based on, including the TISSUEs implemented in this release. + * <!-- end-model-doc --> + * @return the value of the '<em>Changes</em>' containment reference. + * @see #setChanges(TChanges) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_Changes() + * @model containment="true" + * extendedMetaData="kind='element' name='Changes' namespace='##targetNamespace'" + * @generated + */ + TChanges getChanges(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getChanges <em>Changes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Changes</em>' containment reference. + * @see #getChanges() + * @generated + */ + void setChanges( TChanges value ); + + /** + * Returns the value of the '<em><b>Functional Constraints</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of Functional Constraints added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.). + * <!-- end-model-doc --> + * @return the value of the '<em>Functional Constraints</em>' containment reference. + * @see #setFunctionalConstraints(TFunctionalConstraints) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_FunctionalConstraints() + * @model containment="true" + * extendedMetaData="kind='element' name='FunctionalConstraints' namespace='##targetNamespace'" + * @generated + */ + TFunctionalConstraints getFunctionalConstraints(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getFunctionalConstraints <em>Functional Constraints</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Functional Constraints</em>' containment reference. + * @see #getFunctionalConstraints() + * @generated + */ + void setFunctionalConstraints( TFunctionalConstraints value ); + + /** + * Returns the value of the '<em><b>Presence Conditions</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of presence conditions added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.). + * <!-- end-model-doc --> + * @return the value of the '<em>Presence Conditions</em>' containment reference. + * @see #setPresenceConditions(TPresenceConditions) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_PresenceConditions() + * @model containment="true" + * extendedMetaData="kind='element' name='PresenceConditions' namespace='##targetNamespace'" + * @generated + */ + TPresenceConditions getPresenceConditions(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getPresenceConditions <em>Presence Conditions</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Presence Conditions</em>' containment reference. + * @see #getPresenceConditions() + * @generated + */ + void setPresenceConditions( TPresenceConditions value ); + + /** + * Returns the value of the '<em><b>Abbreviations</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of abbreviations added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.). + * <!-- end-model-doc --> + * @return the value of the '<em>Abbreviations</em>' containment reference. + * @see #setAbbreviations(TAbbreviations) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_Abbreviations() + * @model containment="true" + * extendedMetaData="kind='element' name='Abbreviations' namespace='##targetNamespace'" + * @generated + */ + TAbbreviations getAbbreviations(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getAbbreviations <em>Abbreviations</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Abbreviations</em>' containment reference. + * @see #getAbbreviations() + * @generated + */ + void setAbbreviations( TAbbreviations value ); + + /** + * Returns the value of the '<em><b>Service Type Realizations</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of service type realization added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.). + * <!-- end-model-doc --> + * @return the value of the '<em>Service Type Realizations</em>' containment reference. + * @see #setServiceTypeRealizations(TServiceTypeRealizations) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_ServiceTypeRealizations() + * @model containment="true" + * extendedMetaData="kind='element' name='ServiceTypeRealizations' namespace='##targetNamespace'" + * @generated + */ + TServiceTypeRealizations getServiceTypeRealizations(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceTypeRealizations <em>Service Type Realizations</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Service Type Realizations</em>' containment reference. + * @see #getServiceTypeRealizations() + * @generated + */ + void setServiceTypeRealizations( TServiceTypeRealizations value ); + + /** + * Returns the value of the '<em><b>Service Constructed Attributes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of service constructed attributes added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.). + * <!-- end-model-doc --> + * @return the value of the '<em>Service Constructed Attributes</em>' containment reference. + * @see #setServiceConstructedAttributes(TServiceConstructedAttributes) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_ServiceConstructedAttributes() + * @model containment="true" + * extendedMetaData="kind='element' name='ServiceConstructedAttributes' namespace='##targetNamespace'" + * @generated + */ + TServiceConstructedAttributes getServiceConstructedAttributes(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceConstructedAttributes <em>Service Constructed Attributes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Service Constructed Attributes</em>' containment reference. + * @see #getServiceConstructedAttributes() + * @generated + */ + void setServiceConstructedAttributes( TServiceConstructedAttributes value ); + + /** + * Returns the value of the '<em><b>Service CD Cs</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * List of service CDCs added by this namespace. Is cumulative to those defined in namespaces this one needs (may not redefine "included" ones.). + * <!-- end-model-doc --> + * @return the value of the '<em>Service CD Cs</em>' containment reference. + * @see #setServiceCDCs(TServiceCDCs) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_ServiceCDCs() + * @model containment="true" + * extendedMetaData="kind='element' name='ServiceCDCs' namespace='##targetNamespace'" + * @generated + */ + TServiceCDCs getServiceCDCs(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getServiceCDCs <em>Service CD Cs</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Service CD Cs</em>' containment reference. + * @see #getServiceCDCs() + * @generated + */ + void setServiceCDCs( TServiceCDCs value ); + + /** + * Returns the value of the '<em><b>Desc ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to a full description of this NS. + * <!-- end-model-doc --> + * @return the value of the '<em>Desc ID</em>' attribute. + * @see #setDescID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_DescID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='descID'" + * @generated + */ + String getDescID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getDescID <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Desc ID</em>' attribute. + * @see #getDescID() + * @generated + */ + void setDescID( String value ); + + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4". + * <!-- end-model-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_Id() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSIdentifier" required="true" + * extendedMetaData="kind='attribute' name='id'" + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId( String value ); + + /** + * Returns the value of the '<em><b>Publication Stage</b></em>' attribute. + * The default value is <code>"IS"</code>. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The publication stage of the namespace, by default IS. + * <!-- end-model-doc --> + * @return the value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #setPublicationStage(TPubStage) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_PublicationStage() + * @model default="IS" unsettable="true" + * extendedMetaData="kind='attribute' name='publicationStage'" + * @generated + */ + TPubStage getPublicationStage(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @generated + */ + void setPublicationStage( TPubStage value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + void unsetPublicationStage(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getPublicationStage <em>Publication Stage</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Publication Stage</em>' attribute is set. + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + boolean isSetPublicationStage(); + + /** + * Returns the value of the '<em><b>Release</b></em>' attribute. + * The default value is <code>"1"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Release of the namespace version and revision, by default 1. + * <!-- end-model-doc --> + * @return the value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #setRelease(short) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_Release() + * @model default="1" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRelease" + * extendedMetaData="kind='attribute' name='release'" + * @generated + */ + short getRelease(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #getRelease() + * @generated + */ + void setRelease( short value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + void unsetRelease(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRelease <em>Release</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Release</em>' attribute is set. + * @see #unsetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + boolean isSetRelease(); + + /** + * Returns the value of the '<em><b>Revision</b></em>' attribute. + * The default value is <code>"A"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Revision of the namespace version, by default 'A'. + * <!-- end-model-doc --> + * @return the value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #setRevision(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_Revision() + * @model default="A" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRevision" + * extendedMetaData="kind='attribute' name='revision'" + * @generated + */ + String getRevision(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #getRevision() + * @generated + */ + void setRevision( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + void unsetRevision(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getRevision <em>Revision</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Revision</em>' attribute is set. + * @see #unsetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + boolean isSetRevision(); + + /** + * Returns the value of the '<em><b>Uml Date</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * UTC Date and time of the UML version from which this namespace definition file was generated. Shall be provided if umlVersion is present. Format: YYYY-MM-DDThh:mm:ssZ, where: YYYY indicates the year, MM indicates the month, DD indicates the day, T indicates the start of the required time section, hh indicates the hour, mm indicates the minute, ss indicates the second, and Z the UTC time stamp indication. + * + * <!-- end-model-doc --> + * @return the value of the '<em>Uml Date</em>' attribute. + * @see #setUmlDate(XMLGregorianCalendar) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_UmlDate() + * @model dataType="org.eclipse.emf.ecore.xml.type.DateTime" + * extendedMetaData="kind='attribute' name='umlDate'" + * @generated + */ + XMLGregorianCalendar getUmlDate(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getUmlDate <em>Uml Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Uml Date</em>' attribute. + * @see #getUmlDate() + * @generated + */ + void setUmlDate( XMLGregorianCalendar value ); + + /** + * Returns the value of the '<em><b>Uml Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version of UML from which this namespace definition file was generated from. + * <!-- end-model-doc --> + * @return the value of the '<em>Uml Version</em>' attribute. + * @see #setUmlVersion(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_UmlVersion() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUMLVersion" + * extendedMetaData="kind='attribute' name='umlVersion'" + * @generated + */ + String getUmlVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getUmlVersion <em>Uml Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Uml Version</em>' attribute. + * @see #getUmlVersion() + * @generated + */ + void setUmlVersion( String value ); + + /** + * Returns the value of the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version (year) of the namespace. + * <!-- end-model-doc --> + * @return the value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #setVersion(int) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNS_Version() + * @model unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSVersion" required="true" + * extendedMetaData="kind='attribute' name='version'" + * @generated + */ + int getVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #getVersion() + * @generated + */ + void setVersion( int value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + void unsetVersion(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS#getVersion <em>Version</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Version</em>' attribute is set. + * @see #unsetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + boolean isSetVersion(); + +} // TServiceNS diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceNsUsage.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceNsUsage.java new file mode 100644 index 0000000000000000000000000000000000000000..a7f2d5c7896634a7124b48ee611490cec4514b31 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceNsUsage.java @@ -0,0 +1,312 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TService Ns Usage</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Describes the list of (domain) NS for which a ServiceNS is applicable. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getAppliesTo <em>Applies To</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getVersion <em>Version</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNsUsage() + * @model extendedMetaData="name='tServiceNsUsage' kind='elementOnly'" + * @generated + */ +public interface TServiceNsUsage extends EObject { + /** + * Returns the value of the '<em><b>Applies To</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * References to namespaces this ServiceNS can be used with. + * <!-- end-model-doc --> + * @return the value of the '<em>Applies To</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNsUsage_AppliesTo() + * @model containment="true" required="true" + * extendedMetaData="kind='element' name='AppliesTo' namespace='##targetNamespace'" + * @generated + */ + EList< AppliesToType > getAppliesTo(); + + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Identifier of the namespace, e.g., "IEC 61850-7-4", "(Tr)IEC 61850-90-4". + * <!-- end-model-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNsUsage_Id() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSIdentifier" required="true" + * extendedMetaData="kind='attribute' name='id'" + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId( String value ); + + /** + * Returns the value of the '<em><b>Publication Stage</b></em>' attribute. + * The default value is <code>"IS"</code>. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The publication stage of the namespace, by default IS. + * <!-- end-model-doc --> + * @return the value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #setPublicationStage(TPubStage) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNsUsage_PublicationStage() + * @model default="IS" unsettable="true" + * extendedMetaData="kind='attribute' name='publicationStage'" + * @generated + */ + TPubStage getPublicationStage(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Publication Stage</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage + * @see #isSetPublicationStage() + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @generated + */ + void setPublicationStage( TPubStage value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getPublicationStage <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + void unsetPublicationStage(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getPublicationStage <em>Publication Stage</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Publication Stage</em>' attribute is set. + * @see #unsetPublicationStage() + * @see #getPublicationStage() + * @see #setPublicationStage(TPubStage) + * @generated + */ + boolean isSetPublicationStage(); + + /** + * Returns the value of the '<em><b>Release</b></em>' attribute. + * The default value is <code>"1"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Release of the namespace version and revision, by default 1. + * <!-- end-model-doc --> + * @return the value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #setRelease(short) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNsUsage_Release() + * @model default="1" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRelease" + * extendedMetaData="kind='attribute' name='release'" + * @generated + */ + short getRelease(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Release</em>' attribute. + * @see #isSetRelease() + * @see #unsetRelease() + * @see #getRelease() + * @generated + */ + void setRelease( short value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRelease <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + void unsetRelease(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRelease <em>Release</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Release</em>' attribute is set. + * @see #unsetRelease() + * @see #getRelease() + * @see #setRelease(short) + * @generated + */ + boolean isSetRelease(); + + /** + * Returns the value of the '<em><b>Revision</b></em>' attribute. + * The default value is <code>"A"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Revision of the namespace version, by default 'A'. + * <!-- end-model-doc --> + * @return the value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #setRevision(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNsUsage_Revision() + * @model default="A" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSRevision" + * extendedMetaData="kind='attribute' name='revision'" + * @generated + */ + String getRevision(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Revision</em>' attribute. + * @see #isSetRevision() + * @see #unsetRevision() + * @see #getRevision() + * @generated + */ + void setRevision( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRevision <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + void unsetRevision(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getRevision <em>Revision</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Revision</em>' attribute is set. + * @see #unsetRevision() + * @see #getRevision() + * @see #setRevision(String) + * @generated + */ + boolean isSetRevision(); + + /** + * Returns the value of the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Version (year) of the namespace. + * <!-- end-model-doc --> + * @return the value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #setVersion(int) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceNsUsage_Version() + * @model unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSVersion" required="true" + * extendedMetaData="kind='attribute' name='version'" + * @generated + */ + int getVersion(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #getVersion() + * @generated + */ + void setVersion( int value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + void unsetVersion(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage#getVersion <em>Version</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Version</em>' attribute is set. + * @see #unsetVersion() + * @see #getVersion() + * @see #setVersion(int) + * @generated + */ + boolean isSetVersion(); + +} // TServiceNsUsage diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceParameter.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceParameter.java new file mode 100644 index 0000000000000000000000000000000000000000..fa0ae59d5b746d6533362d5422edfcd1126f2462 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceParameter.java @@ -0,0 +1,236 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import java.math.BigDecimal; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TService Parameter</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of the service parameter for control services. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getDefaultValue <em>Default Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getMaxValue <em>Max Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getMinValue <em>Min Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getTypeKind <em>Type Kind</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceParameter() + * @model extendedMetaData="name='tServiceParameter' kind='empty'" + * @generated + */ +public interface TServiceParameter extends TDocumentedClass { + /** + * Returns the value of the '<em><b>Default Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Default value for the data attribute. May only be defined for data attributes with typeKind="BASIC" or "ENUMERATED". + * <!-- end-model-doc --> + * @return the value of the '<em>Default Value</em>' attribute. + * @see #setDefaultValue(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceParameter_DefaultValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.NormalizedString" + * extendedMetaData="kind='attribute' name='defaultValue'" + * @generated + */ + String getDefaultValue(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getDefaultValue <em>Default Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Default Value</em>' attribute. + * @see #getDefaultValue() + * @generated + */ + void setDefaultValue( String value ); + + /** + * Returns the value of the '<em><b>Max Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Allowed maximal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number. + * <!-- end-model-doc --> + * @return the value of the '<em>Max Value</em>' attribute. + * @see #setMaxValue(BigDecimal) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceParameter_MaxValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.Decimal" + * extendedMetaData="kind='attribute' name='maxValue'" + * @generated + */ + BigDecimal getMaxValue(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getMaxValue <em>Max Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Max Value</em>' attribute. + * @see #getMaxValue() + * @generated + */ + void setMaxValue( BigDecimal value ); + + /** + * Returns the value of the '<em><b>Min Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Allowed minimal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number. + * <!-- end-model-doc --> + * @return the value of the '<em>Min Value</em>' attribute. + * @see #setMinValue(BigDecimal) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceParameter_MinValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.Decimal" + * extendedMetaData="kind='attribute' name='minValue'" + * @generated + */ + BigDecimal getMinValue(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getMinValue <em>Min Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Min Value</em>' attribute. + * @see #getMinValue() + * @generated + */ + void setMinValue( BigDecimal value ); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the data attribute. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceParameter_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + + /** + * Returns the value of the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute, e.g., the name of a basic type like INT32, the name of an enumeration of a constructed data attribute - depending on the sibling typeKind. If not provided, shall be defined by the "parent" element. + * <!-- end-model-doc --> + * @return the value of the '<em>Type</em>' attribute. + * @see #setType(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceParameter_Type() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" + * extendedMetaData="kind='attribute' name='type'" + * @generated + */ + String getType(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getType <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type</em>' attribute. + * @see #getType() + * @generated + */ + void setType( String value ); + + /** + * Returns the value of the '<em><b>Type Kind</b></em>' attribute. + * The default value is <code>"BASIC"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The kind of the data attribute's type. By default, "BASIC". + * <!-- end-model-doc --> + * @return the value of the '<em>Type Kind</em>' attribute. + * @see #isSetTypeKind() + * @see #unsetTypeKind() + * @see #setTypeKind(Enumerator) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceParameter_TypeKind() + * @model default="BASIC" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeTypeKind" + * extendedMetaData="kind='attribute' name='typeKind'" + * @generated + */ + Enumerator getTypeKind(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getTypeKind <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type Kind</em>' attribute. + * @see #isSetTypeKind() + * @see #unsetTypeKind() + * @see #getTypeKind() + * @generated + */ + void setTypeKind( Enumerator value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getTypeKind <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetTypeKind() + * @see #getTypeKind() + * @see #setTypeKind(Enumerator) + * @generated + */ + void unsetTypeKind(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter#getTypeKind <em>Type Kind</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Type Kind</em>' attribute is set. + * @see #unsetTypeKind() + * @see #getTypeKind() + * @see #setTypeKind(Enumerator) + * @generated + */ + boolean isSetTypeKind(); + +} // TServiceParameter diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceTypeRealization.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceTypeRealization.java new file mode 100644 index 0000000000000000000000000000000000000000..254a4927f998d6fcc21a2a0b93077656d73693dc --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceTypeRealization.java @@ -0,0 +1,291 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.Enumerator; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TService Type Realization</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of the realization of an abstract type as constructed attribute in the service namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getFc <em>Fc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getTypeKind <em>Type Kind</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceTypeRealization() + * @model extendedMetaData="name='tServiceTypeRealization' kind='empty'" + * @generated + */ +public interface TServiceTypeRealization extends EObject { + /** + * Returns the value of the '<em><b>Fc</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Functional constraint of the data attribute. + * <!-- end-model-doc --> + * @return the value of the '<em>Fc</em>' attribute. + * @see #setFc(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceTypeRealization_Fc() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFCAbbreviation" required="true" + * extendedMetaData="kind='attribute' name='fc'" + * @generated + */ + String getFc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getFc <em>Fc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fc</em>' attribute. + * @see #getFc() + * @generated + */ + void setFc( String value ); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the data attribute. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceTypeRealization_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond</b></em>' attribute. + * The default value is <code>"M"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Presence condition of the element. By default 'M' (mandatory). + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #setPresCond(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceTypeRealization_PresCond() + * @model default="M" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionName" + * extendedMetaData="kind='attribute' name='presCond'" + * @generated + */ + String getPresCond(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #getPresCond() + * @generated + */ + void setPresCond( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + void unsetPresCond(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCond <em>Pres Cond</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Pres Cond</em>' attribute is set. + * @see #unsetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + boolean isSetPresCond(); + + /** + * Returns the value of the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition. Can be a sibling element or a group number. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args</em>' attribute. + * @see #setPresCondArgs(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceTypeRealization_PresCondArgs() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionArgument" + * extendedMetaData="kind='attribute' name='presCondArgs'" + * @generated + */ + String getPresCondArgs(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCondArgs <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args</em>' attribute. + * @see #getPresCondArgs() + * @generated + */ + void setPresCondArgs( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition: a documentation identifier referring to some free text. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #setPresCondArgsID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceTypeRealization_PresCondArgsID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='presCondArgsID'" + * @generated + */ + String getPresCondArgsID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getPresCondArgsID <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #getPresCondArgsID() + * @generated + */ + void setPresCondArgsID( String value ); + + /** + * Returns the value of the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute, e.g., the name of a basic type like INT32, the name of an enumeration of a constructed data attribute - depending on the sibling typeKind. If not provided, shall be defined by the "parent" element. + * <!-- end-model-doc --> + * @return the value of the '<em>Type</em>' attribute. + * @see #setType(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceTypeRealization_Type() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" + * extendedMetaData="kind='attribute' name='type'" + * @generated + */ + String getType(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getType <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type</em>' attribute. + * @see #getType() + * @generated + */ + void setType( String value ); + + /** + * Returns the value of the '<em><b>Type Kind</b></em>' attribute. + * The default value is <code>"BASIC"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The kind of the data attribute's type. By default, "BASIC". + * <!-- end-model-doc --> + * @return the value of the '<em>Type Kind</em>' attribute. + * @see #isSetTypeKind() + * @see #unsetTypeKind() + * @see #setTypeKind(Enumerator) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceTypeRealization_TypeKind() + * @model default="BASIC" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeTypeKind" + * extendedMetaData="kind='attribute' name='typeKind'" + * @generated + */ + Enumerator getTypeKind(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getTypeKind <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type Kind</em>' attribute. + * @see #isSetTypeKind() + * @see #unsetTypeKind() + * @see #getTypeKind() + * @generated + */ + void setTypeKind( Enumerator value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getTypeKind <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetTypeKind() + * @see #getTypeKind() + * @see #setTypeKind(Enumerator) + * @generated + */ + void unsetTypeKind(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization#getTypeKind <em>Type Kind</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Type Kind</em>' attribute is set. + * @see #unsetTypeKind() + * @see #getTypeKind() + * @see #setTypeKind(Enumerator) + * @generated + */ + boolean isSetTypeKind(); + +} // TServiceTypeRealization diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceTypeRealizations.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceTypeRealizations.java new file mode 100644 index 0000000000000000000000000000000000000000..a5c18c13c345ec29f1b5176736a323bda19d44f9 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TServiceTypeRealizations.java @@ -0,0 +1,63 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TService Type Realizations</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * List of Service Type Realizations introduced by a namespace. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations#getServiceTypeRealization <em>Service Type Realization</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceTypeRealizations() + * @model extendedMetaData="name='tServiceTypeRealizations' kind='elementOnly'" + * @generated + */ +public interface TServiceTypeRealizations extends EObject { + /** + * Returns the value of the '<em><b>Service Type Realization</b></em>' containment reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Realization of an abstract type as constructed attribute in the service namespace. + * <!-- end-model-doc --> + * @return the value of the '<em>Service Type Realization</em>' containment reference list. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTServiceTypeRealizations_ServiceTypeRealization() + * @model containment="true" + * extendedMetaData="kind='element' name='ServiceTypeRealization' namespace='##targetNamespace'" + * @generated + */ + EList< TConstructedAttribute > getServiceTypeRealization(); + +} // TServiceTypeRealizations diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TSubDataAttribute.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TSubDataAttribute.java new file mode 100644 index 0000000000000000000000000000000000000000..d24fa533ac02fab8f78caf05158e441d3ec1672b --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TSubDataAttribute.java @@ -0,0 +1,513 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +import java.math.BigDecimal; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TSub Data Attribute</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a Sub Data Attribute (within a constructed data attribute). + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getDefaultValue <em>Default Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#isIsArray <em>Is Array</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMaxIndexAttribute <em>Max Index Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMaxValue <em>Max Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMinIndex <em>Min Index</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMinValue <em>Min Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getSizeAttribute <em>Size Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getTypeKind <em>Type Kind</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute() + * @model extendedMetaData="name='tSubDataAttribute' kind='empty'" + * @generated + */ +public interface TSubDataAttribute extends TDocumentedClass { + /** + * Returns the value of the '<em><b>Default Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Default value for the data attribute. May only be defined for data attributes with typeKind="BASIC" or "ENUMERATED". + * <!-- end-model-doc --> + * @return the value of the '<em>Default Value</em>' attribute. + * @see #setDefaultValue(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_DefaultValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.NormalizedString" + * extendedMetaData="kind='attribute' name='defaultValue'" + * @generated + */ + String getDefaultValue(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getDefaultValue <em>Default Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Default Value</em>' attribute. + * @see #getDefaultValue() + * @generated + */ + void setDefaultValue( String value ); + + /** + * Returns the value of the '<em><b>Is Array</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether the element is an array. By default, not an array. + * <!-- end-model-doc --> + * @return the value of the '<em>Is Array</em>' attribute. + * @see #isSetIsArray() + * @see #unsetIsArray() + * @see #setIsArray(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_IsArray() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='isArray'" + * @generated + */ + boolean isIsArray(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#isIsArray <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Is Array</em>' attribute. + * @see #isSetIsArray() + * @see #unsetIsArray() + * @see #isIsArray() + * @generated + */ + void setIsArray( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#isIsArray <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetIsArray() + * @see #isIsArray() + * @see #setIsArray(boolean) + * @generated + */ + void unsetIsArray(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#isIsArray <em>Is Array</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Is Array</em>' attribute is set. + * @see #unsetIsArray() + * @see #isIsArray() + * @see #setIsArray(boolean) + * @generated + */ + boolean isSetIsArray(); + + /** + * Returns the value of the '<em><b>Max Index Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the Attribute holding the maximal index of the array. + * Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used. + * <!-- end-model-doc --> + * @return the value of the '<em>Max Index Attribute</em>' attribute. + * @see #setMaxIndexAttribute(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_MaxIndexAttribute() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" + * extendedMetaData="kind='attribute' name='maxIndexAttribute'" + * @generated + */ + String getMaxIndexAttribute(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMaxIndexAttribute <em>Max Index Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Max Index Attribute</em>' attribute. + * @see #getMaxIndexAttribute() + * @generated + */ + void setMaxIndexAttribute( String value ); + + /** + * Returns the value of the '<em><b>Max Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Allowed maximal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number. + * <!-- end-model-doc --> + * @return the value of the '<em>Max Value</em>' attribute. + * @see #setMaxValue(BigDecimal) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_MaxValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.Decimal" + * extendedMetaData="kind='attribute' name='maxValue'" + * @generated + */ + BigDecimal getMaxValue(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMaxValue <em>Max Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Max Value</em>' attribute. + * @see #getMaxValue() + * @generated + */ + void setMaxValue( BigDecimal value ); + + /** + * Returns the value of the '<em><b>Min Index</b></em>' attribute. + * The default value is <code>"0"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Lowest index of the array. + * Is relevant information if and only if isArray=true. + * By default 0. + * <!-- end-model-doc --> + * @return the value of the '<em>Min Index</em>' attribute. + * @see #isSetMinIndex() + * @see #unsetMinIndex() + * @see #setMinIndex(long) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_MinIndex() + * @model default="0" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.UnsignedInt" + * extendedMetaData="kind='attribute' name='minIndex'" + * @generated + */ + long getMinIndex(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMinIndex <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Min Index</em>' attribute. + * @see #isSetMinIndex() + * @see #unsetMinIndex() + * @see #getMinIndex() + * @generated + */ + void setMinIndex( long value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMinIndex <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetMinIndex() + * @see #getMinIndex() + * @see #setMinIndex(long) + * @generated + */ + void unsetMinIndex(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMinIndex <em>Min Index</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Min Index</em>' attribute is set. + * @see #unsetMinIndex() + * @see #getMinIndex() + * @see #setMinIndex(long) + * @generated + */ + boolean isSetMinIndex(); + + /** + * Returns the value of the '<em><b>Min Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Allowed minimal value (inclusive) for the data attribute. If not provided the minimal value according to the type is allowed. May only be defined for data attributes with typeKind="BASIC" and corresponding to a number. + * <!-- end-model-doc --> + * @return the value of the '<em>Min Value</em>' attribute. + * @see #setMinValue(BigDecimal) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_MinValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.Decimal" + * extendedMetaData="kind='attribute' name='minValue'" + * @generated + */ + BigDecimal getMinValue(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getMinValue <em>Min Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Min Value</em>' attribute. + * @see #getMinValue() + * @generated + */ + void setMinValue( BigDecimal value ); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the data attribute. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond</b></em>' attribute. + * The default value is <code>"M"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Presence condition of the element. By default 'M' (mandatory). + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #setPresCond(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_PresCond() + * @model default="M" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionName" + * extendedMetaData="kind='attribute' name='presCond'" + * @generated + */ + String getPresCond(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #getPresCond() + * @generated + */ + void setPresCond( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + void unsetPresCond(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCond <em>Pres Cond</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Pres Cond</em>' attribute is set. + * @see #unsetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + boolean isSetPresCond(); + + /** + * Returns the value of the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition. Can be a sibling element or a group number. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args</em>' attribute. + * @see #setPresCondArgs(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_PresCondArgs() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionArgument" + * extendedMetaData="kind='attribute' name='presCondArgs'" + * @generated + */ + String getPresCondArgs(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCondArgs <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args</em>' attribute. + * @see #getPresCondArgs() + * @generated + */ + void setPresCondArgs( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition: a documentation identifier referring to some free text. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #setPresCondArgsID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_PresCondArgsID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='presCondArgsID'" + * @generated + */ + String getPresCondArgsID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getPresCondArgsID <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #getPresCondArgsID() + * @generated + */ + void setPresCondArgsID( String value ); + + /** + * Returns the value of the '<em><b>Size Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Sibling data attribute name holding the size of the array. + * Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used. + * <!-- end-model-doc --> + * @return the value of the '<em>Size Attribute</em>' attribute. + * @see #setSizeAttribute(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_SizeAttribute() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" + * extendedMetaData="kind='attribute' name='sizeAttribute'" + * @generated + */ + String getSizeAttribute(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getSizeAttribute <em>Size Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Size Attribute</em>' attribute. + * @see #getSizeAttribute() + * @generated + */ + void setSizeAttribute( String value ); + + /** + * Returns the value of the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The type of the data attribute, e.g., the name of a basic type like INT32, the name of an enumeration of a constructed data attribute - depending on the sibling typeKind. If not provided, shall be defined by the "parent" element. + * <!-- end-model-doc --> + * @return the value of the '<em>Type</em>' attribute. + * @see #setType(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_Type() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" + * extendedMetaData="kind='attribute' name='type'" + * @generated + */ + String getType(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getType <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type</em>' attribute. + * @see #getType() + * @generated + */ + void setType( String value ); + + /** + * Returns the value of the '<em><b>Type Kind</b></em>' attribute. + * The default value is <code>"BASIC"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The kind of the data attribute's type. By default, "BASIC". + * <!-- end-model-doc --> + * @return the value of the '<em>Type Kind</em>' attribute. + * @see #isSetTypeKind() + * @see #unsetTypeKind() + * @see #setTypeKind(Enumerator) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataAttribute_TypeKind() + * @model default="BASIC" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeTypeKind" + * extendedMetaData="kind='attribute' name='typeKind'" + * @generated + */ + Enumerator getTypeKind(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getTypeKind <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type Kind</em>' attribute. + * @see #isSetTypeKind() + * @see #unsetTypeKind() + * @see #getTypeKind() + * @generated + */ + void setTypeKind( Enumerator value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getTypeKind <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetTypeKind() + * @see #getTypeKind() + * @see #setTypeKind(Enumerator) + * @generated + */ + void unsetTypeKind(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute#getTypeKind <em>Type Kind</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Type Kind</em>' attribute is set. + * @see #unsetTypeKind() + * @see #getTypeKind() + * @see #setTypeKind(Enumerator) + * @generated + */ + boolean isSetTypeKind(); + +} // TSubDataAttribute diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TSubDataObject.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TSubDataObject.java new file mode 100644 index 0000000000000000000000000000000000000000..a31fa9f7abdcf2b0bcec8c0e58c8f47f256e9f36 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TSubDataObject.java @@ -0,0 +1,457 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TSub Data Object</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * Definition of a Sub-Data Object. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#isIsArray <em>Is Array</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getMaxIndexAttribute <em>Max Index Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getMinIndex <em>Min Index</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getSizeAttribute <em>Size Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getUnderlyingType <em>Underlying Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getUnderlyingTypeKind <em>Underlying Type Kind</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject() + * @model extendedMetaData="name='tSubDataObject' kind='empty'" + * @generated + */ +public interface TSubDataObject extends TDocumentedClass { + /** + * Returns the value of the '<em><b>Is Array</b></em>' attribute. + * The default value is <code>"false"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Flag indicating whether the element is an array. By default, not an array. + * <!-- end-model-doc --> + * @return the value of the '<em>Is Array</em>' attribute. + * @see #isSetIsArray() + * @see #unsetIsArray() + * @see #setIsArray(boolean) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_IsArray() + * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * extendedMetaData="kind='attribute' name='isArray'" + * @generated + */ + boolean isIsArray(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#isIsArray <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Is Array</em>' attribute. + * @see #isSetIsArray() + * @see #unsetIsArray() + * @see #isIsArray() + * @generated + */ + void setIsArray( boolean value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#isIsArray <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetIsArray() + * @see #isIsArray() + * @see #setIsArray(boolean) + * @generated + */ + void unsetIsArray(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#isIsArray <em>Is Array</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Is Array</em>' attribute is set. + * @see #unsetIsArray() + * @see #isIsArray() + * @see #setIsArray(boolean) + * @generated + */ + boolean isSetIsArray(); + + /** + * Returns the value of the '<em><b>Max Index Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the Attribute holding the maximal index of the array. + * Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used. + * <!-- end-model-doc --> + * @return the value of the '<em>Max Index Attribute</em>' attribute. + * @see #setMaxIndexAttribute(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_MaxIndexAttribute() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" + * extendedMetaData="kind='attribute' name='maxIndexAttribute'" + * @generated + */ + String getMaxIndexAttribute(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getMaxIndexAttribute <em>Max Index Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Max Index Attribute</em>' attribute. + * @see #getMaxIndexAttribute() + * @generated + */ + void setMaxIndexAttribute( String value ); + + /** + * Returns the value of the '<em><b>Min Index</b></em>' attribute. + * The default value is <code>"0"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Lowest index of the array. + * Is relevant information if and only if isArray=true. + * By default 0. + * <!-- end-model-doc --> + * @return the value of the '<em>Min Index</em>' attribute. + * @see #isSetMinIndex() + * @see #unsetMinIndex() + * @see #setMinIndex(long) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_MinIndex() + * @model default="0" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.UnsignedInt" + * extendedMetaData="kind='attribute' name='minIndex'" + * @generated + */ + long getMinIndex(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getMinIndex <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Min Index</em>' attribute. + * @see #isSetMinIndex() + * @see #unsetMinIndex() + * @see #getMinIndex() + * @generated + */ + void setMinIndex( long value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getMinIndex <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetMinIndex() + * @see #getMinIndex() + * @see #setMinIndex(long) + * @generated + */ + void unsetMinIndex(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getMinIndex <em>Min Index</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Min Index</em>' attribute is set. + * @see #unsetMinIndex() + * @see #getMinIndex() + * @see #setMinIndex(long) + * @generated + */ + boolean isSetMinIndex(); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Name of the Sub-Data Object. + * <!-- end-model-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_Name() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObjectName" required="true" + * extendedMetaData="kind='attribute' name='name'" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond</b></em>' attribute. + * The default value is <code>"M"</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Presence condition of the element. By default 'M' (mandatory). + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #setPresCond(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_PresCond() + * @model default="M" unsettable="true" dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionName" + * extendedMetaData="kind='attribute' name='presCond'" + * @generated + */ + String getPresCond(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond</em>' attribute. + * @see #isSetPresCond() + * @see #unsetPresCond() + * @see #getPresCond() + * @generated + */ + void setPresCond( String value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCond <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + void unsetPresCond(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCond <em>Pres Cond</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Pres Cond</em>' attribute is set. + * @see #unsetPresCond() + * @see #getPresCond() + * @see #setPresCond(String) + * @generated + */ + boolean isSetPresCond(); + + /** + * Returns the value of the '<em><b>Pres Cond Args</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition. Can be a sibling element or a group number. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args</em>' attribute. + * @see #setPresCondArgs(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_PresCondArgs() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditionArgument" + * extendedMetaData="kind='attribute' name='presCondArgs'" + * @generated + */ + String getPresCondArgs(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCondArgs <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args</em>' attribute. + * @see #getPresCondArgs() + * @generated + */ + void setPresCondArgs( String value ); + + /** + * Returns the value of the '<em><b>Pres Cond Args ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Optional argument to the presence condition: a documentation identifier referring to some free text. + * <!-- end-model-doc --> + * @return the value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #setPresCondArgsID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_PresCondArgsID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" + * extendedMetaData="kind='attribute' name='presCondArgsID'" + * @generated + */ + String getPresCondArgsID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getPresCondArgsID <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pres Cond Args ID</em>' attribute. + * @see #getPresCondArgsID() + * @generated + */ + void setPresCondArgsID( String value ); + + /** + * Returns the value of the '<em><b>Size Attribute</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Sibling data attribute name holding the size of the array. + * Is relevant information if and only if isArray=true. One and only one of sizeAttribute and maxIndexAttribute shall be used. + * <!-- end-model-doc --> + * @return the value of the '<em>Size Attribute</em>' attribute. + * @see #setSizeAttribute(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_SizeAttribute() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAttributeName" + * extendedMetaData="kind='attribute' name='sizeAttribute'" + * @generated + */ + String getSizeAttribute(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getSizeAttribute <em>Size Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Size Attribute</em>' attribute. + * @see #getSizeAttribute() + * @generated + */ + void setSizeAttribute( String value ); + + /** + * Returns the value of the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Type of the SubDataObject, i.e., its CDC. + * <!-- end-model-doc --> + * @return the value of the '<em>Type</em>' attribute. + * @see #setType(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_Type() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCName" required="true" + * extendedMetaData="kind='attribute' name='type'" + * @generated + */ + String getType(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getType <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type</em>' attribute. + * @see #getType() + * @generated + */ + void setType( String value ); + + /** + * Returns the value of the '<em><b>Underlying Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Type to be used for type-open CDCs, e.g., enumeration to be used for enumeration-based CDCs (e.g., ENS, ENC, ENG). + * <!-- end-model-doc --> + * @return the value of the '<em>Underlying Type</em>' attribute. + * @see #setUnderlyingType(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_UnderlyingType() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TIec61850Name" + * extendedMetaData="kind='attribute' name='underlyingType'" + * @generated + */ + String getUnderlyingType(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getUnderlyingType <em>Underlying Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Underlying Type</em>' attribute. + * @see #getUnderlyingType() + * @generated + */ + void setUnderlyingType( String value ); + + /** + * Returns the value of the '<em><b>Underlying Type Kind</b></em>' attribute. + * The literals are from the enumeration {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * The typeKind to be used for all "undefined" attributes of the CDC of this DataObject. + * <!-- end-model-doc --> + * @return the value of the '<em>Underlying Type Kind</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @see #isSetUnderlyingTypeKind() + * @see #unsetUnderlyingTypeKind() + * @see #setUnderlyingTypeKind(TDefinedAttributeTypeKind) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTSubDataObject_UnderlyingTypeKind() + * @model unsettable="true" + * extendedMetaData="kind='attribute' name='underlyingTypeKind'" + * @generated + */ + TDefinedAttributeTypeKind getUnderlyingTypeKind(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getUnderlyingTypeKind <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Underlying Type Kind</em>' attribute. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind + * @see #isSetUnderlyingTypeKind() + * @see #unsetUnderlyingTypeKind() + * @see #getUnderlyingTypeKind() + * @generated + */ + void setUnderlyingTypeKind( TDefinedAttributeTypeKind value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getUnderlyingTypeKind <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetUnderlyingTypeKind() + * @see #getUnderlyingTypeKind() + * @see #setUnderlyingTypeKind(TDefinedAttributeTypeKind) + * @generated + */ + void unsetUnderlyingTypeKind(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject#getUnderlyingTypeKind <em>Underlying Type Kind</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Underlying Type Kind</em>' attribute is set. + * @see #unsetUnderlyingTypeKind() + * @see #getUnderlyingTypeKind() + * @see #setUnderlyingTypeKind(TDefinedAttributeTypeKind) + * @generated + */ + boolean isSetUnderlyingTypeKind(); + +} // TSubDataObject diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TTitledClass.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TTitledClass.java new file mode 100644 index 0000000000000000000000000000000000000000..e6ff9aaacec0140df4f26e212cfbb8c56b1bc6bf --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TTitledClass.java @@ -0,0 +1,69 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>TTitled Class</b></em>'. + * <!-- end-user-doc --> + * + * <!-- begin-model-doc --> + * A tDocumentedClass with title. + * <!-- end-model-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass#getTitleID <em>Title ID</em>}</li> + * </ul> + * + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTTitledClass() + * @model extendedMetaData="name='tTitledClass' kind='empty'" + * @generated + */ +public interface TTitledClass extends TDocumentedClass { + /** + * Returns the value of the '<em><b>Title ID</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Documentation identifier referring to the title (alias) of this object. + * <!-- end-model-doc --> + * @return the value of the '<em>Title ID</em>' attribute. + * @see #setTitleID(String) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTTitledClass_TitleID() + * @model dataType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocID" required="true" + * extendedMetaData="kind='attribute' name='titleID'" + * @generated + */ + String getTitleID(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass#getTitleID <em>Title ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Title ID</em>' attribute. + * @see #getTitleID() + * @generated + */ + void setTitleID( String value ); + +} // TTitledClass diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TUndefinedAttributeTypeKind.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TUndefinedAttributeTypeKind.java new file mode 100644 index 0000000000000000000000000000000000000000..cbcda1db4d546abd0be2033cbcaedc6d59131494 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/TUndefinedAttributeTypeKind.java @@ -0,0 +1,211 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd; + +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>TUndefined Attribute Type Kind</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Type kind for a data attribute which has its type "undefined". + * <!-- end-model-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getTUndefinedAttributeTypeKind() + * @model extendedMetaData="name='tUndefinedAttributeTypeKind'" + * @generated + */ +public enum TUndefinedAttributeTypeKind implements Enumerator { + /** + * The '<em><b>Undefined</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Indicates that the type is not defined, and shall be done so where it is used. + * <!-- end-model-doc --> + * @see #UNDEFINED_VALUE + * @generated + * @ordered + */ + UNDEFINED( 0, "undefined", "undefined" ); + + /** + * The '<em><b>Undefined</b></em>' literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * <!-- begin-model-doc --> + * Indicates that the type is not defined, and shall be done so where it is used. + * <!-- end-model-doc --> + * @see #UNDEFINED + * @model name="undefined" + * @generated + * @ordered + */ + public static final int UNDEFINED_VALUE = 0; + + /** + * An array of all the '<em><b>TUndefined Attribute Type Kind</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final TUndefinedAttributeTypeKind[] VALUES_ARRAY = new TUndefinedAttributeTypeKind[] { UNDEFINED, }; + + /** + * A public read-only list of all the '<em><b>TUndefined Attribute Type Kind</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List< TUndefinedAttributeTypeKind > VALUES = Collections + .unmodifiableList( Arrays.asList( VALUES_ARRAY ) ); + + /** + * Returns the '<em><b>TUndefined Attribute Type Kind</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 TUndefinedAttributeTypeKind get( String literal ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TUndefinedAttributeTypeKind result = VALUES_ARRAY[i]; + if( result.toString().equals( literal ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TUndefined Attribute Type Kind</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 TUndefinedAttributeTypeKind getByName( String name ) { + for( int i = 0; i < VALUES_ARRAY.length; ++i ) { + TUndefinedAttributeTypeKind result = VALUES_ARRAY[i]; + if( result.getName().equals( name ) ) { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>TUndefined Attribute Type Kind</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 TUndefinedAttributeTypeKind get( int value ) { + switch( value ) { + case UNDEFINED_VALUE: + return UNDEFINED; + } + 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 TUndefinedAttributeTypeKind( int value, String name, String literal ) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + 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; + } + +} //TUndefinedAttributeTypeKind diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AppliesToTypeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AppliesToTypeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..692819ecc6a283615225c9e0d53903f766eae19c --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AppliesToTypeImpl.java @@ -0,0 +1,565 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Applies To Type</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AppliesToTypeImpl#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AppliesToTypeImpl#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AppliesToTypeImpl#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AppliesToTypeImpl#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AppliesToTypeImpl#getVersion <em>Version</em>}</li> + * </ul> + * + * @generated + */ +public class AppliesToTypeImpl extends MinimalEObjectImpl.Container implements AppliesToType { + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * The default value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected static final TPubStage PUBLICATION_STAGE_EDEFAULT = TPubStage.IS; + + /** + * The cached value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected TPubStage publicationStage = PUBLICATION_STAGE_EDEFAULT; + + /** + * This is true if the Publication Stage attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean publicationStageESet; + + /** + * The default value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected static final short RELEASE_EDEFAULT = 1; + + /** + * The cached value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected short release = RELEASE_EDEFAULT; + + /** + * This is true if the Release attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean releaseESet; + + /** + * The default value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected static final String REVISION_EDEFAULT = "A"; + + /** + * The cached value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected String revision = REVISION_EDEFAULT; + + /** + * This is true if the Revision attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean revisionESet; + + /** + * The default value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected static final int VERSION_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected int version = VERSION_EDEFAULT; + + /** + * This is true if the Version attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean versionESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AppliesToTypeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.APPLIES_TO_TYPE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setId( String newId ) { + String oldId = id; + id = newId; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.APPLIES_TO_TYPE__ID, oldId, id ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TPubStage getPublicationStage() { + return publicationStage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPublicationStage( TPubStage newPublicationStage ) { + TPubStage oldPublicationStage = publicationStage; + publicationStage = newPublicationStage == null ? PUBLICATION_STAGE_EDEFAULT : newPublicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStageESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.APPLIES_TO_TYPE__PUBLICATION_STAGE, + oldPublicationStage, publicationStage, !oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPublicationStage() { + TPubStage oldPublicationStage = publicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStage = PUBLICATION_STAGE_EDEFAULT; + publicationStageESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.APPLIES_TO_TYPE__PUBLICATION_STAGE, + oldPublicationStage, PUBLICATION_STAGE_EDEFAULT, oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPublicationStage() { + return publicationStageESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public short getRelease() { + return release; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRelease( short newRelease ) { + short oldRelease = release; + release = newRelease; + boolean oldReleaseESet = releaseESet; + releaseESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.APPLIES_TO_TYPE__RELEASE, oldRelease, release, !oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRelease() { + short oldRelease = release; + boolean oldReleaseESet = releaseESet; + release = RELEASE_EDEFAULT; + releaseESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.APPLIES_TO_TYPE__RELEASE, oldRelease, RELEASE_EDEFAULT, oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRelease() { + return releaseESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getRevision() { + return revision; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRevision( String newRevision ) { + String oldRevision = revision; + revision = newRevision; + boolean oldRevisionESet = revisionESet; + revisionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.APPLIES_TO_TYPE__REVISION, oldRevision, revision, !oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRevision() { + String oldRevision = revision; + boolean oldRevisionESet = revisionESet; + revision = REVISION_EDEFAULT; + revisionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.APPLIES_TO_TYPE__REVISION, oldRevision, REVISION_EDEFAULT, oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRevision() { + return revisionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getVersion() { + return version; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVersion( int newVersion ) { + int oldVersion = version; + version = newVersion; + boolean oldVersionESet = versionESet; + versionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.APPLIES_TO_TYPE__VERSION, oldVersion, version, !oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetVersion() { + int oldVersion = version; + boolean oldVersionESet = versionESet; + version = VERSION_EDEFAULT; + versionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.APPLIES_TO_TYPE__VERSION, oldVersion, VERSION_EDEFAULT, oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetVersion() { + return versionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.APPLIES_TO_TYPE__ID: + return getId(); + case NsdPackage.APPLIES_TO_TYPE__PUBLICATION_STAGE: + return getPublicationStage(); + case NsdPackage.APPLIES_TO_TYPE__RELEASE: + return getRelease(); + case NsdPackage.APPLIES_TO_TYPE__REVISION: + return getRevision(); + case NsdPackage.APPLIES_TO_TYPE__VERSION: + return getVersion(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.APPLIES_TO_TYPE__ID: + setId( ( String ) newValue ); + return; + case NsdPackage.APPLIES_TO_TYPE__PUBLICATION_STAGE: + setPublicationStage( ( TPubStage ) newValue ); + return; + case NsdPackage.APPLIES_TO_TYPE__RELEASE: + setRelease( ( Short ) newValue ); + return; + case NsdPackage.APPLIES_TO_TYPE__REVISION: + setRevision( ( String ) newValue ); + return; + case NsdPackage.APPLIES_TO_TYPE__VERSION: + setVersion( ( Integer ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.APPLIES_TO_TYPE__ID: + setId( ID_EDEFAULT ); + return; + case NsdPackage.APPLIES_TO_TYPE__PUBLICATION_STAGE: + unsetPublicationStage(); + return; + case NsdPackage.APPLIES_TO_TYPE__RELEASE: + unsetRelease(); + return; + case NsdPackage.APPLIES_TO_TYPE__REVISION: + unsetRevision(); + return; + case NsdPackage.APPLIES_TO_TYPE__VERSION: + unsetVersion(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.APPLIES_TO_TYPE__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals( id ); + case NsdPackage.APPLIES_TO_TYPE__PUBLICATION_STAGE: + return isSetPublicationStage(); + case NsdPackage.APPLIES_TO_TYPE__RELEASE: + return isSetRelease(); + case NsdPackage.APPLIES_TO_TYPE__REVISION: + return isSetRevision(); + case NsdPackage.APPLIES_TO_TYPE__VERSION: + return isSetVersion(); + } + return super.eIsSet( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if( eIsProxy() ) return super.toString(); + + StringBuilder result = new StringBuilder( super.toString() ); + result.append( " (id: " ); + result.append( id ); + result.append( ", publicationStage: " ); + if( publicationStageESet ) + result.append( publicationStage ); + else + result.append( "<unset>" ); + result.append( ", release: " ); + if( releaseESet ) + result.append( release ); + else + result.append( "<unset>" ); + result.append( ", revision: " ); + if( revisionESet ) + result.append( revision ); + else + result.append( "<unset>" ); + result.append( ", version: " ); + if( versionESet ) + result.append( version ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //AppliesToTypeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DependsOnTypeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DependsOnTypeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..22b15c40faa78d91d24ef637ff932a94eb39a9ef --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DependsOnTypeImpl.java @@ -0,0 +1,565 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Depends On Type</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DependsOnTypeImpl#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DependsOnTypeImpl#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DependsOnTypeImpl#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DependsOnTypeImpl#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DependsOnTypeImpl#getVersion <em>Version</em>}</li> + * </ul> + * + * @generated + */ +public class DependsOnTypeImpl extends MinimalEObjectImpl.Container implements DependsOnType { + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * The default value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected static final TPubStage PUBLICATION_STAGE_EDEFAULT = TPubStage.IS; + + /** + * The cached value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected TPubStage publicationStage = PUBLICATION_STAGE_EDEFAULT; + + /** + * This is true if the Publication Stage attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean publicationStageESet; + + /** + * The default value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected static final short RELEASE_EDEFAULT = 1; + + /** + * The cached value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected short release = RELEASE_EDEFAULT; + + /** + * This is true if the Release attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean releaseESet; + + /** + * The default value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected static final String REVISION_EDEFAULT = "A"; + + /** + * The cached value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected String revision = REVISION_EDEFAULT; + + /** + * This is true if the Revision attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean revisionESet; + + /** + * The default value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected static final int VERSION_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected int version = VERSION_EDEFAULT; + + /** + * This is true if the Version attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean versionESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected DependsOnTypeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.DEPENDS_ON_TYPE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setId( String newId ) { + String oldId = id; + id = newId; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.DEPENDS_ON_TYPE__ID, oldId, id ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TPubStage getPublicationStage() { + return publicationStage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPublicationStage( TPubStage newPublicationStage ) { + TPubStage oldPublicationStage = publicationStage; + publicationStage = newPublicationStage == null ? PUBLICATION_STAGE_EDEFAULT : newPublicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStageESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.DEPENDS_ON_TYPE__PUBLICATION_STAGE, + oldPublicationStage, publicationStage, !oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPublicationStage() { + TPubStage oldPublicationStage = publicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStage = PUBLICATION_STAGE_EDEFAULT; + publicationStageESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.DEPENDS_ON_TYPE__PUBLICATION_STAGE, + oldPublicationStage, PUBLICATION_STAGE_EDEFAULT, oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPublicationStage() { + return publicationStageESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public short getRelease() { + return release; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRelease( short newRelease ) { + short oldRelease = release; + release = newRelease; + boolean oldReleaseESet = releaseESet; + releaseESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.DEPENDS_ON_TYPE__RELEASE, oldRelease, release, !oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRelease() { + short oldRelease = release; + boolean oldReleaseESet = releaseESet; + release = RELEASE_EDEFAULT; + releaseESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.DEPENDS_ON_TYPE__RELEASE, oldRelease, RELEASE_EDEFAULT, oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRelease() { + return releaseESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getRevision() { + return revision; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRevision( String newRevision ) { + String oldRevision = revision; + revision = newRevision; + boolean oldRevisionESet = revisionESet; + revisionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.DEPENDS_ON_TYPE__REVISION, oldRevision, revision, !oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRevision() { + String oldRevision = revision; + boolean oldRevisionESet = revisionESet; + revision = REVISION_EDEFAULT; + revisionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.DEPENDS_ON_TYPE__REVISION, oldRevision, REVISION_EDEFAULT, oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRevision() { + return revisionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getVersion() { + return version; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVersion( int newVersion ) { + int oldVersion = version; + version = newVersion; + boolean oldVersionESet = versionESet; + versionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.DEPENDS_ON_TYPE__VERSION, oldVersion, version, !oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetVersion() { + int oldVersion = version; + boolean oldVersionESet = versionESet; + version = VERSION_EDEFAULT; + versionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.DEPENDS_ON_TYPE__VERSION, oldVersion, VERSION_EDEFAULT, oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetVersion() { + return versionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.DEPENDS_ON_TYPE__ID: + return getId(); + case NsdPackage.DEPENDS_ON_TYPE__PUBLICATION_STAGE: + return getPublicationStage(); + case NsdPackage.DEPENDS_ON_TYPE__RELEASE: + return getRelease(); + case NsdPackage.DEPENDS_ON_TYPE__REVISION: + return getRevision(); + case NsdPackage.DEPENDS_ON_TYPE__VERSION: + return getVersion(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.DEPENDS_ON_TYPE__ID: + setId( ( String ) newValue ); + return; + case NsdPackage.DEPENDS_ON_TYPE__PUBLICATION_STAGE: + setPublicationStage( ( TPubStage ) newValue ); + return; + case NsdPackage.DEPENDS_ON_TYPE__RELEASE: + setRelease( ( Short ) newValue ); + return; + case NsdPackage.DEPENDS_ON_TYPE__REVISION: + setRevision( ( String ) newValue ); + return; + case NsdPackage.DEPENDS_ON_TYPE__VERSION: + setVersion( ( Integer ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.DEPENDS_ON_TYPE__ID: + setId( ID_EDEFAULT ); + return; + case NsdPackage.DEPENDS_ON_TYPE__PUBLICATION_STAGE: + unsetPublicationStage(); + return; + case NsdPackage.DEPENDS_ON_TYPE__RELEASE: + unsetRelease(); + return; + case NsdPackage.DEPENDS_ON_TYPE__REVISION: + unsetRevision(); + return; + case NsdPackage.DEPENDS_ON_TYPE__VERSION: + unsetVersion(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.DEPENDS_ON_TYPE__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals( id ); + case NsdPackage.DEPENDS_ON_TYPE__PUBLICATION_STAGE: + return isSetPublicationStage(); + case NsdPackage.DEPENDS_ON_TYPE__RELEASE: + return isSetRelease(); + case NsdPackage.DEPENDS_ON_TYPE__REVISION: + return isSetRevision(); + case NsdPackage.DEPENDS_ON_TYPE__VERSION: + return isSetVersion(); + } + return super.eIsSet( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if( eIsProxy() ) return super.toString(); + + StringBuilder result = new StringBuilder( super.toString() ); + result.append( " (id: " ); + result.append( id ); + result.append( ", publicationStage: " ); + if( publicationStageESet ) + result.append( publicationStage ); + else + result.append( "<unset>" ); + result.append( ", release: " ); + if( releaseESet ) + result.append( release ); + else + result.append( "<unset>" ); + result.append( ", revision: " ); + if( revisionESet ) + result.append( revision ); + else + result.append( "<unset>" ); + result.append( ", version: " ); + if( versionESet ) + result.append( version ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //DependsOnTypeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocumentRootImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocumentRootImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..1ff516cb97e8e2a1dd1fb978d20b075b277e33b6 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocumentRootImpl.java @@ -0,0 +1,489 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EMap; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.emf.ecore.EcorePackage; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.BasicFeatureMap; +import org.eclipse.emf.ecore.util.EcoreEMap; +import org.eclipse.emf.ecore.util.FeatureMap; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Document Root</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl#getMixed <em>Mixed</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl#getXSISchemaLocation <em>XSI Schema Location</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl#getApplicableServiceNS <em>Applicable Service NS</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl#getCopyright <em>Copyright</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl#getNS <em>NS</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl#getNSDoc <em>NS Doc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentRootImpl#getServiceNS <em>Service NS</em>}</li> + * </ul> + * + * @generated + */ +public class DocumentRootImpl extends MinimalEObjectImpl.Container implements DocumentRoot { + /** + * The cached value of the '{@link #getMixed() <em>Mixed</em>}' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMixed() + * @generated + * @ordered + */ + protected FeatureMap mixed; + + /** + * The cached value of the '{@link #getXMLNSPrefixMap() <em>XMLNS Prefix Map</em>}' map. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getXMLNSPrefixMap() + * @generated + * @ordered + */ + protected EMap< String, String > xMLNSPrefixMap; + + /** + * The cached value of the '{@link #getXSISchemaLocation() <em>XSI Schema Location</em>}' map. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getXSISchemaLocation() + * @generated + * @ordered + */ + protected EMap< String, String > xSISchemaLocation; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected DocumentRootImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.DOCUMENT_ROOT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FeatureMap getMixed() { + if( mixed == null ) { + mixed = new BasicFeatureMap( this, NsdPackage.DOCUMENT_ROOT__MIXED ); + } + return mixed; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EMap< String, String > getXMLNSPrefixMap() { + if( xMLNSPrefixMap == null ) { + xMLNSPrefixMap = new EcoreEMap< String, String >( EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY, + EStringToStringMapEntryImpl.class, this, NsdPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP ); + } + return xMLNSPrefixMap; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EMap< String, String > getXSISchemaLocation() { + if( xSISchemaLocation == null ) { + xSISchemaLocation = new EcoreEMap< String, String >( EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY, + EStringToStringMapEntryImpl.class, this, NsdPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION ); + } + return xSISchemaLocation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TApplicableServiceNS getApplicableServiceNS() { + return ( TApplicableServiceNS ) getMixed().get( NsdPackage.Literals.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS, + true ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetApplicableServiceNS( TApplicableServiceNS newApplicableServiceNS, + NotificationChain msgs ) { + return ( ( FeatureMap.Internal ) getMixed() ) + .basicAdd( NsdPackage.Literals.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS, newApplicableServiceNS, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setApplicableServiceNS( TApplicableServiceNS newApplicableServiceNS ) { + ( ( FeatureMap.Internal ) getMixed() ).set( NsdPackage.Literals.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS, + newApplicableServiceNS ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TCopyrightNotice getCopyright() { + return ( TCopyrightNotice ) getMixed().get( NsdPackage.Literals.DOCUMENT_ROOT__COPYRIGHT, true ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetCopyright( TCopyrightNotice newCopyright, NotificationChain msgs ) { + return ( ( FeatureMap.Internal ) getMixed() ).basicAdd( NsdPackage.Literals.DOCUMENT_ROOT__COPYRIGHT, + newCopyright, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setCopyright( TCopyrightNotice newCopyright ) { + ( ( FeatureMap.Internal ) getMixed() ).set( NsdPackage.Literals.DOCUMENT_ROOT__COPYRIGHT, newCopyright ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TNS getNS() { + return ( TNS ) getMixed().get( NsdPackage.Literals.DOCUMENT_ROOT__NS, true ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetNS( TNS newNS, NotificationChain msgs ) { + return ( ( FeatureMap.Internal ) getMixed() ).basicAdd( NsdPackage.Literals.DOCUMENT_ROOT__NS, newNS, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setNS( TNS newNS ) { + ( ( FeatureMap.Internal ) getMixed() ).set( NsdPackage.Literals.DOCUMENT_ROOT__NS, newNS ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TNSDoc getNSDoc() { + return ( TNSDoc ) getMixed().get( NsdPackage.Literals.DOCUMENT_ROOT__NS_DOC, true ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetNSDoc( TNSDoc newNSDoc, NotificationChain msgs ) { + return ( ( FeatureMap.Internal ) getMixed() ).basicAdd( NsdPackage.Literals.DOCUMENT_ROOT__NS_DOC, newNSDoc, + msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setNSDoc( TNSDoc newNSDoc ) { + ( ( FeatureMap.Internal ) getMixed() ).set( NsdPackage.Literals.DOCUMENT_ROOT__NS_DOC, newNSDoc ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceNS getServiceNS() { + return ( TServiceNS ) getMixed().get( NsdPackage.Literals.DOCUMENT_ROOT__SERVICE_NS, true ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetServiceNS( TServiceNS newServiceNS, NotificationChain msgs ) { + return ( ( FeatureMap.Internal ) getMixed() ).basicAdd( NsdPackage.Literals.DOCUMENT_ROOT__SERVICE_NS, + newServiceNS, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setServiceNS( TServiceNS newServiceNS ) { + ( ( FeatureMap.Internal ) getMixed() ).set( NsdPackage.Literals.DOCUMENT_ROOT__SERVICE_NS, newServiceNS ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.DOCUMENT_ROOT__MIXED: + return ( ( InternalEList< ? > ) getMixed() ).basicRemove( otherEnd, msgs ); + case NsdPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP: + return ( ( InternalEList< ? > ) getXMLNSPrefixMap() ).basicRemove( otherEnd, msgs ); + case NsdPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION: + return ( ( InternalEList< ? > ) getXSISchemaLocation() ).basicRemove( otherEnd, msgs ); + case NsdPackage.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS: + return basicSetApplicableServiceNS( null, msgs ); + case NsdPackage.DOCUMENT_ROOT__COPYRIGHT: + return basicSetCopyright( null, msgs ); + case NsdPackage.DOCUMENT_ROOT__NS: + return basicSetNS( null, msgs ); + case NsdPackage.DOCUMENT_ROOT__NS_DOC: + return basicSetNSDoc( null, msgs ); + case NsdPackage.DOCUMENT_ROOT__SERVICE_NS: + return basicSetServiceNS( null, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.DOCUMENT_ROOT__MIXED: + if( coreType ) return getMixed(); + return ( ( FeatureMap.Internal ) getMixed() ).getWrapper(); + case NsdPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP: + if( coreType ) + return getXMLNSPrefixMap(); + else + return getXMLNSPrefixMap().map(); + case NsdPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION: + if( coreType ) + return getXSISchemaLocation(); + else + return getXSISchemaLocation().map(); + case NsdPackage.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS: + return getApplicableServiceNS(); + case NsdPackage.DOCUMENT_ROOT__COPYRIGHT: + return getCopyright(); + case NsdPackage.DOCUMENT_ROOT__NS: + return getNS(); + case NsdPackage.DOCUMENT_ROOT__NS_DOC: + return getNSDoc(); + case NsdPackage.DOCUMENT_ROOT__SERVICE_NS: + return getServiceNS(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.DOCUMENT_ROOT__MIXED: + ( ( FeatureMap.Internal ) getMixed() ).set( newValue ); + return; + case NsdPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP: + ( ( EStructuralFeature.Setting ) getXMLNSPrefixMap() ).set( newValue ); + return; + case NsdPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION: + ( ( EStructuralFeature.Setting ) getXSISchemaLocation() ).set( newValue ); + return; + case NsdPackage.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS: + setApplicableServiceNS( ( TApplicableServiceNS ) newValue ); + return; + case NsdPackage.DOCUMENT_ROOT__COPYRIGHT: + setCopyright( ( TCopyrightNotice ) newValue ); + return; + case NsdPackage.DOCUMENT_ROOT__NS: + setNS( ( TNS ) newValue ); + return; + case NsdPackage.DOCUMENT_ROOT__NS_DOC: + setNSDoc( ( TNSDoc ) newValue ); + return; + case NsdPackage.DOCUMENT_ROOT__SERVICE_NS: + setServiceNS( ( TServiceNS ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.DOCUMENT_ROOT__MIXED: + getMixed().clear(); + return; + case NsdPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP: + getXMLNSPrefixMap().clear(); + return; + case NsdPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION: + getXSISchemaLocation().clear(); + return; + case NsdPackage.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS: + setApplicableServiceNS( ( TApplicableServiceNS ) null ); + return; + case NsdPackage.DOCUMENT_ROOT__COPYRIGHT: + setCopyright( ( TCopyrightNotice ) null ); + return; + case NsdPackage.DOCUMENT_ROOT__NS: + setNS( ( TNS ) null ); + return; + case NsdPackage.DOCUMENT_ROOT__NS_DOC: + setNSDoc( ( TNSDoc ) null ); + return; + case NsdPackage.DOCUMENT_ROOT__SERVICE_NS: + setServiceNS( ( TServiceNS ) null ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.DOCUMENT_ROOT__MIXED: + return mixed != null && !mixed.isEmpty(); + case NsdPackage.DOCUMENT_ROOT__XMLNS_PREFIX_MAP: + return xMLNSPrefixMap != null && !xMLNSPrefixMap.isEmpty(); + case NsdPackage.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION: + return xSISchemaLocation != null && !xSISchemaLocation.isEmpty(); + case NsdPackage.DOCUMENT_ROOT__APPLICABLE_SERVICE_NS: + return getApplicableServiceNS() != null; + case NsdPackage.DOCUMENT_ROOT__COPYRIGHT: + return getCopyright() != null; + case NsdPackage.DOCUMENT_ROOT__NS: + return getNS() != null; + case NsdPackage.DOCUMENT_ROOT__NS_DOC: + return getNSDoc() != null; + case NsdPackage.DOCUMENT_ROOT__SERVICE_NS: + return getServiceNS() != 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( " (mixed: " ); + result.append( mixed ); + result.append( ')' ); + return result.toString(); + } + +} //DocumentRootImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/NsdFactoryImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/NsdFactoryImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..7210b74fbabc5c896f00845ad6b5adcae283f220 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/NsdFactoryImpl.java @@ -0,0 +1,1673 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.*; + +import org.eclipse.emf.common.util.Enumerator; + +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.emf.ecore.util.Diagnostician; + +import org.eclipse.emf.ecore.xml.type.XMLTypeFactory; +import org.eclipse.emf.ecore.xml.type.XMLTypePackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class NsdFactoryImpl extends EFactoryImpl implements NsdFactory { + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static NsdFactory init() { + try { + NsdFactory theNsdFactory = ( NsdFactory ) EPackage.Registry.INSTANCE.getEFactory( NsdPackage.eNS_URI ); + if( theNsdFactory != null ) { + return theNsdFactory; + } + } + catch( Exception exception ) { + EcorePlugin.INSTANCE.log( exception ); + } + return new NsdFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NsdFactoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create( EClass eClass ) { + switch( eClass.getClassifierID() ) { + case NsdPackage.APPLIES_TO_TYPE: + return createAppliesToType(); + case NsdPackage.DEPENDS_ON_TYPE: + return createDependsOnType(); + case NsdPackage.DOCUMENT_ROOT: + return createDocumentRoot(); + case NsdPackage.SERVICE_TYPE: + return createServiceType(); + case NsdPackage.TABBREVIATION: + return createTAbbreviation(); + case NsdPackage.TABBREVIATIONS: + return createTAbbreviations(); + case NsdPackage.TABSTRACT_LN_CLASS: + return createTAbstractLNClass(); + case NsdPackage.TAPPLICABLE_SERVICE_NS: + return createTApplicableServiceNS(); + case NsdPackage.TAPPLICABLE_SERVICES: + return createTApplicableServices(); + case NsdPackage.TBASIC_TYPE: + return createTBasicType(); + case NsdPackage.TBASIC_TYPES: + return createTBasicTypes(); + case NsdPackage.TCDC: + return createTCDC(); + case NsdPackage.TCD_CS: + return createTCDCs(); + case NsdPackage.TCHANGES: + return createTChanges(); + case NsdPackage.TCONSTRUCTED_ATTRIBUTE: + return createTConstructedAttribute(); + case NsdPackage.TCONSTRUCTED_ATTRIBUTES: + return createTConstructedAttributes(); + case NsdPackage.TCOPYRIGHTED: + return createTCopyrighted(); + case NsdPackage.TCOPYRIGHT_NOTICE: + return createTCopyrightNotice(); + case NsdPackage.TDATA_ATTRIBUTE: + return createTDataAttribute(); + case NsdPackage.TDATA_OBJECT: + return createTDataObject(); + case NsdPackage.TDATA_SET_MEMBER_OF: + return createTDataSetMemberOf(); + case NsdPackage.TDOC: + return createTDoc(); + case NsdPackage.TDOCUMENTED_CLASS: + return createTDocumentedClass(); + case NsdPackage.TENUMERATION: + return createTEnumeration(); + case NsdPackage.TENUMERATIONS: + return createTEnumerations(); + case NsdPackage.TFUNCTIONAL_CONSTRAINT: + return createTFunctionalConstraint(); + case NsdPackage.TFUNCTIONAL_CONSTRAINTS: + return createTFunctionalConstraints(); + case NsdPackage.TLICENSE: + return createTLicense(); + case NsdPackage.TLITERAL: + return createTLiteral(); + case NsdPackage.TLN_CLASS: + return createTLNClass(); + case NsdPackage.TLN_CLASSES: + return createTLNClasses(); + case NsdPackage.TNOTICE: + return createTNotice(); + case NsdPackage.TNS: + return createTNS(); + case NsdPackage.TNS_DOC: + return createTNSDoc(); + case NsdPackage.TPRESENCE_CONDITION: + return createTPresenceCondition(); + case NsdPackage.TPRESENCE_CONDITIONS: + return createTPresenceConditions(); + case NsdPackage.TSERVICE_CDC: + return createTServiceCDC(); + case NsdPackage.TSERVICE_CD_CS: + return createTServiceCDCs(); + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTE: + return createTServiceConstructedAttribute(); + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTES: + return createTServiceConstructedAttributes(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE: + return createTServiceDataAttribute(); + case NsdPackage.TSERVICE_NS: + return createTServiceNS(); + case NsdPackage.TSERVICE_NS_USAGE: + return createTServiceNsUsage(); + case NsdPackage.TSERVICE_PARAMETER: + return createTServiceParameter(); + case NsdPackage.TSERVICE_TYPE_REALIZATION: + return createTServiceTypeRealization(); + case NsdPackage.TSERVICE_TYPE_REALIZATIONS: + return createTServiceTypeRealizations(); + case NsdPackage.TSUB_DATA_ATTRIBUTE: + return createTSubDataAttribute(); + case NsdPackage.TSUB_DATA_OBJECT: + return createTSubDataObject(); + case NsdPackage.TTITLED_CLASS: + return createTTitledClass(); + 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 NsdPackage.TACSI_SERVICES_KIND: + return createTACSIServicesKindFromString( eDataType, initialValue ); + case NsdPackage.TCB_KIND: + return createTCBKindFromString( eDataType, initialValue ); + case NsdPackage.TDEFINED_ATTRIBUTE_TYPE_KIND: + return createTDefinedAttributeTypeKindFromString( eDataType, initialValue ); + case NsdPackage.TLICENSE_KIND: + return createTLicenseKindFromString( eDataType, initialValue ); + case NsdPackage.TPUB_STAGE: + return createTPubStageFromString( eDataType, initialValue ); + case NsdPackage.TUNDEFINED_ATTRIBUTE_TYPE_KIND: + return createTUndefinedAttributeTypeKindFromString( eDataType, initialValue ); + case NsdPackage.TABBREVIATION_NAME: + return createTAbbreviationNameFromString( eDataType, initialValue ); + case NsdPackage.TABSTRACT_LN_CLASS_NAME: + return createTAbstractLNClassNameFromString( eDataType, initialValue ); + case NsdPackage.TACSI_SERVICES_KIND_OBJECT: + return createTACSIServicesKindObjectFromString( eDataType, initialValue ); + case NsdPackage.TATTRIBUTE_NAME: + return createTAttributeNameFromString( eDataType, initialValue ); + case NsdPackage.TATTRIBUTE_TYPE_KIND: + return createTAttributeTypeKindFromString( eDataType, initialValue ); + case NsdPackage.TBASIC_TYPE_NAME: + return createTBasicTypeNameFromString( eDataType, initialValue ); + case NsdPackage.TCB_KIND_OBJECT: + return createTCBKindObjectFromString( eDataType, initialValue ); + case NsdPackage.TCDC_NAME: + return createTCDCNameFromString( eDataType, initialValue ); + case NsdPackage.TDATA_OBJECT_NAME: + return createTDataObjectNameFromString( eDataType, initialValue ); + case NsdPackage.TDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT: + return createTDefinedAttributeTypeKindObjectFromString( eDataType, initialValue ); + case NsdPackage.TDOC_ID: + return createTDocIDFromString( eDataType, initialValue ); + case NsdPackage.TEMPTY_STRING: + return createTEmptyStringFromString( eDataType, initialValue ); + case NsdPackage.TFC_ABBREVIATION: + return createTFCAbbreviationFromString( eDataType, initialValue ); + case NsdPackage.TIEC61850_NAME: + return createTIec61850NameFromString( eDataType, initialValue ); + case NsdPackage.TIEC61850_NAME_STRING: + return createTIec61850NameStringFromString( eDataType, initialValue ); + case NsdPackage.TISSUES_TYPE: + return createTissuesTypeFromString( eDataType, initialValue ); + case NsdPackage.TLICENSE_KIND_OBJECT: + return createTLicenseKindObjectFromString( eDataType, initialValue ); + case NsdPackage.TLITERAL_NAME: + return createTLiteralNameFromString( eDataType, initialValue ); + case NsdPackage.TLN_CLASS_NAME: + return createTLNClassNameFromString( eDataType, initialValue ); + case NsdPackage.TNS_IDENTIFIER: + return createTNSIdentifierFromString( eDataType, initialValue ); + case NsdPackage.TNS_RELEASE: + return createTNSReleaseFromString( eDataType, initialValue ); + case NsdPackage.TNS_RELEASE_OBJECT: + return createTNSReleaseObjectFromString( eDataType, initialValue ); + case NsdPackage.TNS_REVISION: + return createTNSRevisionFromString( eDataType, initialValue ); + case NsdPackage.TNS_VERSION: + return createTNSVersionFromString( eDataType, initialValue ); + case NsdPackage.TNS_VERSION_OBJECT: + return createTNSVersionObjectFromString( eDataType, initialValue ); + case NsdPackage.TPRESENCE_CONDITION_ARGUMENT: + return createTPresenceConditionArgumentFromString( eDataType, initialValue ); + case NsdPackage.TPRESENCE_CONDITION_NAME: + return createTPresenceConditionNameFromString( eDataType, initialValue ); + case NsdPackage.TPUB_STAGE_OBJECT: + return createTPubStageObjectFromString( eDataType, initialValue ); + case NsdPackage.TSUB_DATA_OBJECT_NAME: + return createTSubDataObjectNameFromString( eDataType, initialValue ); + case NsdPackage.TUML_VERSION: + return createTUMLVersionFromString( eDataType, initialValue ); + case NsdPackage.TUNDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT: + return createTUndefinedAttributeTypeKindObjectFromString( 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 NsdPackage.TACSI_SERVICES_KIND: + return convertTACSIServicesKindToString( eDataType, instanceValue ); + case NsdPackage.TCB_KIND: + return convertTCBKindToString( eDataType, instanceValue ); + case NsdPackage.TDEFINED_ATTRIBUTE_TYPE_KIND: + return convertTDefinedAttributeTypeKindToString( eDataType, instanceValue ); + case NsdPackage.TLICENSE_KIND: + return convertTLicenseKindToString( eDataType, instanceValue ); + case NsdPackage.TPUB_STAGE: + return convertTPubStageToString( eDataType, instanceValue ); + case NsdPackage.TUNDEFINED_ATTRIBUTE_TYPE_KIND: + return convertTUndefinedAttributeTypeKindToString( eDataType, instanceValue ); + case NsdPackage.TABBREVIATION_NAME: + return convertTAbbreviationNameToString( eDataType, instanceValue ); + case NsdPackage.TABSTRACT_LN_CLASS_NAME: + return convertTAbstractLNClassNameToString( eDataType, instanceValue ); + case NsdPackage.TACSI_SERVICES_KIND_OBJECT: + return convertTACSIServicesKindObjectToString( eDataType, instanceValue ); + case NsdPackage.TATTRIBUTE_NAME: + return convertTAttributeNameToString( eDataType, instanceValue ); + case NsdPackage.TATTRIBUTE_TYPE_KIND: + return convertTAttributeTypeKindToString( eDataType, instanceValue ); + case NsdPackage.TBASIC_TYPE_NAME: + return convertTBasicTypeNameToString( eDataType, instanceValue ); + case NsdPackage.TCB_KIND_OBJECT: + return convertTCBKindObjectToString( eDataType, instanceValue ); + case NsdPackage.TCDC_NAME: + return convertTCDCNameToString( eDataType, instanceValue ); + case NsdPackage.TDATA_OBJECT_NAME: + return convertTDataObjectNameToString( eDataType, instanceValue ); + case NsdPackage.TDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT: + return convertTDefinedAttributeTypeKindObjectToString( eDataType, instanceValue ); + case NsdPackage.TDOC_ID: + return convertTDocIDToString( eDataType, instanceValue ); + case NsdPackage.TEMPTY_STRING: + return convertTEmptyStringToString( eDataType, instanceValue ); + case NsdPackage.TFC_ABBREVIATION: + return convertTFCAbbreviationToString( eDataType, instanceValue ); + case NsdPackage.TIEC61850_NAME: + return convertTIec61850NameToString( eDataType, instanceValue ); + case NsdPackage.TIEC61850_NAME_STRING: + return convertTIec61850NameStringToString( eDataType, instanceValue ); + case NsdPackage.TISSUES_TYPE: + return convertTissuesTypeToString( eDataType, instanceValue ); + case NsdPackage.TLICENSE_KIND_OBJECT: + return convertTLicenseKindObjectToString( eDataType, instanceValue ); + case NsdPackage.TLITERAL_NAME: + return convertTLiteralNameToString( eDataType, instanceValue ); + case NsdPackage.TLN_CLASS_NAME: + return convertTLNClassNameToString( eDataType, instanceValue ); + case NsdPackage.TNS_IDENTIFIER: + return convertTNSIdentifierToString( eDataType, instanceValue ); + case NsdPackage.TNS_RELEASE: + return convertTNSReleaseToString( eDataType, instanceValue ); + case NsdPackage.TNS_RELEASE_OBJECT: + return convertTNSReleaseObjectToString( eDataType, instanceValue ); + case NsdPackage.TNS_REVISION: + return convertTNSRevisionToString( eDataType, instanceValue ); + case NsdPackage.TNS_VERSION: + return convertTNSVersionToString( eDataType, instanceValue ); + case NsdPackage.TNS_VERSION_OBJECT: + return convertTNSVersionObjectToString( eDataType, instanceValue ); + case NsdPackage.TPRESENCE_CONDITION_ARGUMENT: + return convertTPresenceConditionArgumentToString( eDataType, instanceValue ); + case NsdPackage.TPRESENCE_CONDITION_NAME: + return convertTPresenceConditionNameToString( eDataType, instanceValue ); + case NsdPackage.TPUB_STAGE_OBJECT: + return convertTPubStageObjectToString( eDataType, instanceValue ); + case NsdPackage.TSUB_DATA_OBJECT_NAME: + return convertTSubDataObjectNameToString( eDataType, instanceValue ); + case NsdPackage.TUML_VERSION: + return convertTUMLVersionToString( eDataType, instanceValue ); + case NsdPackage.TUNDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT: + return convertTUndefinedAttributeTypeKindObjectToString( eDataType, instanceValue ); + default: + throw new IllegalArgumentException( + "The datatype '" + eDataType.getName() + "' is not a valid classifier" ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public AppliesToType createAppliesToType() { + AppliesToTypeImpl appliesToType = new AppliesToTypeImpl(); + return appliesToType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public DependsOnType createDependsOnType() { + DependsOnTypeImpl dependsOnType = new DependsOnTypeImpl(); + return dependsOnType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public DocumentRoot createDocumentRoot() { + DocumentRootImpl documentRoot = new DocumentRootImpl(); + return documentRoot; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ServiceType createServiceType() { + ServiceTypeImpl serviceType = new ServiceTypeImpl(); + return serviceType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TAbbreviation createTAbbreviation() { + TAbbreviationImpl tAbbreviation = new TAbbreviationImpl(); + return tAbbreviation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TAbbreviations createTAbbreviations() { + TAbbreviationsImpl tAbbreviations = new TAbbreviationsImpl(); + return tAbbreviations; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TAbstractLNClass createTAbstractLNClass() { + TAbstractLNClassImpl tAbstractLNClass = new TAbstractLNClassImpl(); + return tAbstractLNClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TApplicableServiceNS createTApplicableServiceNS() { + TApplicableServiceNSImpl tApplicableServiceNS = new TApplicableServiceNSImpl(); + return tApplicableServiceNS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TApplicableServices createTApplicableServices() { + TApplicableServicesImpl tApplicableServices = new TApplicableServicesImpl(); + return tApplicableServices; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TBasicType createTBasicType() { + TBasicTypeImpl tBasicType = new TBasicTypeImpl(); + return tBasicType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TBasicTypes createTBasicTypes() { + TBasicTypesImpl tBasicTypes = new TBasicTypesImpl(); + return tBasicTypes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TCDC createTCDC() { + TCDCImpl tcdc = new TCDCImpl(); + return tcdc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TCDCs createTCDCs() { + TCDCsImpl tcdCs = new TCDCsImpl(); + return tcdCs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TChanges createTChanges() { + TChangesImpl tChanges = new TChangesImpl(); + return tChanges; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TConstructedAttribute createTConstructedAttribute() { + TConstructedAttributeImpl tConstructedAttribute = new TConstructedAttributeImpl(); + return tConstructedAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TConstructedAttributes createTConstructedAttributes() { + TConstructedAttributesImpl tConstructedAttributes = new TConstructedAttributesImpl(); + return tConstructedAttributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TCopyrighted createTCopyrighted() { + TCopyrightedImpl tCopyrighted = new TCopyrightedImpl(); + return tCopyrighted; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TCopyrightNotice createTCopyrightNotice() { + TCopyrightNoticeImpl tCopyrightNotice = new TCopyrightNoticeImpl(); + return tCopyrightNotice; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TDataAttribute createTDataAttribute() { + TDataAttributeImpl tDataAttribute = new TDataAttributeImpl(); + return tDataAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TDataObject createTDataObject() { + TDataObjectImpl tDataObject = new TDataObjectImpl(); + return tDataObject; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TDataSetMemberOf createTDataSetMemberOf() { + TDataSetMemberOfImpl tDataSetMemberOf = new TDataSetMemberOfImpl(); + return tDataSetMemberOf; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TDoc createTDoc() { + TDocImpl tDoc = new TDocImpl(); + return tDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TDocumentedClass createTDocumentedClass() { + TDocumentedClassImpl tDocumentedClass = new TDocumentedClassImpl(); + return tDocumentedClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TEnumeration createTEnumeration() { + TEnumerationImpl tEnumeration = new TEnumerationImpl(); + return tEnumeration; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TEnumerations createTEnumerations() { + TEnumerationsImpl tEnumerations = new TEnumerationsImpl(); + return tEnumerations; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TFunctionalConstraint createTFunctionalConstraint() { + TFunctionalConstraintImpl tFunctionalConstraint = new TFunctionalConstraintImpl(); + return tFunctionalConstraint; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TFunctionalConstraints createTFunctionalConstraints() { + TFunctionalConstraintsImpl tFunctionalConstraints = new TFunctionalConstraintsImpl(); + return tFunctionalConstraints; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TLicense createTLicense() { + TLicenseImpl tLicense = new TLicenseImpl(); + return tLicense; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TLiteral createTLiteral() { + TLiteralImpl tLiteral = new TLiteralImpl(); + return tLiteral; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TLNClass createTLNClass() { + TLNClassImpl tlnClass = new TLNClassImpl(); + return tlnClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TLNClasses createTLNClasses() { + TLNClassesImpl tlnClasses = new TLNClassesImpl(); + return tlnClasses; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TNotice createTNotice() { + TNoticeImpl tNotice = new TNoticeImpl(); + return tNotice; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TNS createTNS() { + TNSImpl tns = new TNSImpl(); + return tns; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TNSDoc createTNSDoc() { + TNSDocImpl tnsDoc = new TNSDocImpl(); + return tnsDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TPresenceCondition createTPresenceCondition() { + TPresenceConditionImpl tPresenceCondition = new TPresenceConditionImpl(); + return tPresenceCondition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TPresenceConditions createTPresenceConditions() { + TPresenceConditionsImpl tPresenceConditions = new TPresenceConditionsImpl(); + return tPresenceConditions; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceCDC createTServiceCDC() { + TServiceCDCImpl tServiceCDC = new TServiceCDCImpl(); + return tServiceCDC; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceCDCs createTServiceCDCs() { + TServiceCDCsImpl tServiceCDCs = new TServiceCDCsImpl(); + return tServiceCDCs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceConstructedAttribute createTServiceConstructedAttribute() { + TServiceConstructedAttributeImpl tServiceConstructedAttribute = new TServiceConstructedAttributeImpl(); + return tServiceConstructedAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceConstructedAttributes createTServiceConstructedAttributes() { + TServiceConstructedAttributesImpl tServiceConstructedAttributes = new TServiceConstructedAttributesImpl(); + return tServiceConstructedAttributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceDataAttribute createTServiceDataAttribute() { + TServiceDataAttributeImpl tServiceDataAttribute = new TServiceDataAttributeImpl(); + return tServiceDataAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceNS createTServiceNS() { + TServiceNSImpl tServiceNS = new TServiceNSImpl(); + return tServiceNS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceNsUsage createTServiceNsUsage() { + TServiceNsUsageImpl tServiceNsUsage = new TServiceNsUsageImpl(); + return tServiceNsUsage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceParameter createTServiceParameter() { + TServiceParameterImpl tServiceParameter = new TServiceParameterImpl(); + return tServiceParameter; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceTypeRealization createTServiceTypeRealization() { + TServiceTypeRealizationImpl tServiceTypeRealization = new TServiceTypeRealizationImpl(); + return tServiceTypeRealization; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceTypeRealizations createTServiceTypeRealizations() { + TServiceTypeRealizationsImpl tServiceTypeRealizations = new TServiceTypeRealizationsImpl(); + return tServiceTypeRealizations; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TSubDataAttribute createTSubDataAttribute() { + TSubDataAttributeImpl tSubDataAttribute = new TSubDataAttributeImpl(); + return tSubDataAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TSubDataObject createTSubDataObject() { + TSubDataObjectImpl tSubDataObject = new TSubDataObjectImpl(); + return tSubDataObject; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TTitledClass createTTitledClass() { + TTitledClassImpl tTitledClass = new TTitledClassImpl(); + return tTitledClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TACSIServicesKind createTACSIServicesKindFromString( EDataType eDataType, String initialValue ) { + TACSIServicesKind result = TACSIServicesKind.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 convertTACSIServicesKindToString( EDataType eDataType, Object instanceValue ) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TCBKind createTCBKindFromString( EDataType eDataType, String initialValue ) { + TCBKind result = TCBKind.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 convertTCBKindToString( EDataType eDataType, Object instanceValue ) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TDefinedAttributeTypeKind createTDefinedAttributeTypeKindFromString( EDataType eDataType, + String initialValue ) { + TDefinedAttributeTypeKind result = TDefinedAttributeTypeKind.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 convertTDefinedAttributeTypeKindToString( EDataType eDataType, Object instanceValue ) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TLicenseKind createTLicenseKindFromString( EDataType eDataType, String initialValue ) { + TLicenseKind result = TLicenseKind.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 convertTLicenseKindToString( EDataType eDataType, Object instanceValue ) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TPubStage createTPubStageFromString( EDataType eDataType, String initialValue ) { + TPubStage result = TPubStage.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 convertTPubStageToString( EDataType eDataType, Object instanceValue ) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TUndefinedAttributeTypeKind createTUndefinedAttributeTypeKindFromString( EDataType eDataType, + String initialValue ) { + TUndefinedAttributeTypeKind result = TUndefinedAttributeTypeKind.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 convertTUndefinedAttributeTypeKindToString( EDataType eDataType, Object instanceValue ) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTAbbreviationNameFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NORMALIZED_STRING, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTAbbreviationNameToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NORMALIZED_STRING, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTAbstractLNClassNameFromString( EDataType eDataType, String initialValue ) { + return createTIec61850NameFromString( NsdPackage.Literals.TIEC61850_NAME, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTAbstractLNClassNameToString( EDataType eDataType, Object instanceValue ) { + return convertTIec61850NameToString( NsdPackage.Literals.TIEC61850_NAME, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TACSIServicesKind createTACSIServicesKindObjectFromString( EDataType eDataType, String initialValue ) { + return createTACSIServicesKindFromString( NsdPackage.Literals.TACSI_SERVICES_KIND, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTACSIServicesKindObjectToString( EDataType eDataType, Object instanceValue ) { + return convertTACSIServicesKindToString( NsdPackage.Literals.TACSI_SERVICES_KIND, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTAttributeNameFromString( EDataType eDataType, String initialValue ) { + return createTIec61850NameFromString( NsdPackage.Literals.TIEC61850_NAME, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTAttributeNameToString( EDataType eDataType, Object instanceValue ) { + return convertTIec61850NameToString( NsdPackage.Literals.TIEC61850_NAME, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Enumerator createTAttributeTypeKindFromString( EDataType eDataType, String initialValue ) { + if( initialValue == null ) return null; + Enumerator result = null; + RuntimeException exception = null; + try { + result = createTDefinedAttributeTypeKindFromString( + NsdPackage.Literals.TDEFINED_ATTRIBUTE_TYPE_KIND, initialValue ); + if( result != null && Diagnostician.INSTANCE.validate( eDataType, result, null, null ) ) { + return result; + } + } + catch( RuntimeException e ) { + exception = e; + } + try { + result = createTUndefinedAttributeTypeKindFromString( + NsdPackage.Literals.TUNDEFINED_ATTRIBUTE_TYPE_KIND, initialValue ); + if( result != null && Diagnostician.INSTANCE.validate( eDataType, result, null, null ) ) { + return result; + } + } + catch( RuntimeException e ) { + exception = e; + } + if( result != null || exception == null ) return result; + + throw exception; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTAttributeTypeKindToString( EDataType eDataType, Object instanceValue ) { + if( instanceValue == null ) return null; + if( NsdPackage.Literals.TDEFINED_ATTRIBUTE_TYPE_KIND.isInstance( instanceValue ) ) { + try { + String value = convertTDefinedAttributeTypeKindToString( + NsdPackage.Literals.TDEFINED_ATTRIBUTE_TYPE_KIND, instanceValue ); + if( value != null ) return value; + } + catch( Exception e ) { + // Keep trying other member types until all have failed. + } + } + if( NsdPackage.Literals.TUNDEFINED_ATTRIBUTE_TYPE_KIND.isInstance( instanceValue ) ) { + try { + String value = convertTUndefinedAttributeTypeKindToString( + NsdPackage.Literals.TUNDEFINED_ATTRIBUTE_TYPE_KIND, instanceValue ); + if( value != null ) return value; + } + catch( Exception e ) { + // Keep trying other member types until all have failed. + } + } + throw new IllegalArgumentException( + "Invalid value: '" + instanceValue + "' for datatype :" + eDataType.getName() ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTBasicTypeNameFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.TOKEN, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTBasicTypeNameToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.TOKEN, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TCBKind createTCBKindObjectFromString( EDataType eDataType, String initialValue ) { + return createTCBKindFromString( NsdPackage.Literals.TCB_KIND, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTCBKindObjectToString( EDataType eDataType, Object instanceValue ) { + return convertTCBKindToString( NsdPackage.Literals.TCB_KIND, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTCDCNameFromString( EDataType eDataType, String initialValue ) { + return createTIec61850NameFromString( NsdPackage.Literals.TIEC61850_NAME, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTCDCNameToString( EDataType eDataType, Object instanceValue ) { + return convertTIec61850NameToString( NsdPackage.Literals.TIEC61850_NAME, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTDataObjectNameFromString( EDataType eDataType, String initialValue ) { + return createTIec61850NameFromString( NsdPackage.Literals.TIEC61850_NAME, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTDataObjectNameToString( EDataType eDataType, Object instanceValue ) { + return convertTIec61850NameToString( NsdPackage.Literals.TIEC61850_NAME, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TDefinedAttributeTypeKind createTDefinedAttributeTypeKindObjectFromString( EDataType eDataType, + String initialValue ) { + return createTDefinedAttributeTypeKindFromString( NsdPackage.Literals.TDEFINED_ATTRIBUTE_TYPE_KIND, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTDefinedAttributeTypeKindObjectToString( EDataType eDataType, Object instanceValue ) { + return convertTDefinedAttributeTypeKindToString( NsdPackage.Literals.TDEFINED_ATTRIBUTE_TYPE_KIND, + instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTDocIDFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NORMALIZED_STRING, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTDocIDToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NORMALIZED_STRING, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTEmptyStringFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NORMALIZED_STRING, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTEmptyStringToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NORMALIZED_STRING, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTFCAbbreviationFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.TOKEN, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTFCAbbreviationToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.TOKEN, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTIec61850NameFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NAME, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTIec61850NameToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NAME, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTIec61850NameStringFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NORMALIZED_STRING, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTIec61850NameStringToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NORMALIZED_STRING, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTissuesTypeFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NORMALIZED_STRING, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTissuesTypeToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NORMALIZED_STRING, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TLicenseKind createTLicenseKindObjectFromString( EDataType eDataType, String initialValue ) { + return createTLicenseKindFromString( NsdPackage.Literals.TLICENSE_KIND, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTLicenseKindObjectToString( EDataType eDataType, Object instanceValue ) { + return convertTLicenseKindToString( NsdPackage.Literals.TLICENSE_KIND, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTLiteralNameFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NORMALIZED_STRING, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTLiteralNameToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NORMALIZED_STRING, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTLNClassNameFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NAME, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTLNClassNameToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NAME, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTNSIdentifierFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NORMALIZED_STRING, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTNSIdentifierToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NORMALIZED_STRING, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Short createTNSReleaseFromString( EDataType eDataType, String initialValue ) { + return ( Short ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.UNSIGNED_BYTE, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTNSReleaseToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.UNSIGNED_BYTE, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Short createTNSReleaseObjectFromString( EDataType eDataType, String initialValue ) { + return createTNSReleaseFromString( NsdPackage.Literals.TNS_RELEASE, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTNSReleaseObjectToString( EDataType eDataType, Object instanceValue ) { + return convertTNSReleaseToString( NsdPackage.Literals.TNS_RELEASE, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTNSRevisionFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.TOKEN, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTNSRevisionToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.TOKEN, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Integer createTNSVersionFromString( EDataType eDataType, String initialValue ) { + return ( Integer ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.UNSIGNED_SHORT, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTNSVersionToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.UNSIGNED_SHORT, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Integer createTNSVersionObjectFromString( EDataType eDataType, String initialValue ) { + return createTNSVersionFromString( NsdPackage.Literals.TNS_VERSION, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTNSVersionObjectToString( EDataType eDataType, Object instanceValue ) { + return convertTNSVersionToString( NsdPackage.Literals.TNS_VERSION, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTPresenceConditionArgumentFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NORMALIZED_STRING, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTPresenceConditionArgumentToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NORMALIZED_STRING, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTPresenceConditionNameFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NORMALIZED_STRING, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTPresenceConditionNameToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NORMALIZED_STRING, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TPubStage createTPubStageObjectFromString( EDataType eDataType, String initialValue ) { + return createTPubStageFromString( NsdPackage.Literals.TPUB_STAGE, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTPubStageObjectToString( EDataType eDataType, Object instanceValue ) { + return convertTPubStageToString( NsdPackage.Literals.TPUB_STAGE, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTSubDataObjectNameFromString( EDataType eDataType, String initialValue ) { + return createTIec61850NameFromString( NsdPackage.Literals.TIEC61850_NAME, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTSubDataObjectNameToString( EDataType eDataType, Object instanceValue ) { + return convertTIec61850NameToString( NsdPackage.Literals.TIEC61850_NAME, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createTUMLVersionFromString( EDataType eDataType, String initialValue ) { + return ( String ) XMLTypeFactory.eINSTANCE.createFromString( XMLTypePackage.Literals.NAME, initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTUMLVersionToString( EDataType eDataType, Object instanceValue ) { + return XMLTypeFactory.eINSTANCE.convertToString( XMLTypePackage.Literals.NAME, instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TUndefinedAttributeTypeKind createTUndefinedAttributeTypeKindObjectFromString( EDataType eDataType, + String initialValue ) { + return createTUndefinedAttributeTypeKindFromString( NsdPackage.Literals.TUNDEFINED_ATTRIBUTE_TYPE_KIND, + initialValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTUndefinedAttributeTypeKindObjectToString( EDataType eDataType, Object instanceValue ) { + return convertTUndefinedAttributeTypeKindToString( NsdPackage.Literals.TUNDEFINED_ATTRIBUTE_TYPE_KIND, + instanceValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NsdPackage getNsdPackage() { + return ( NsdPackage ) getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static NsdPackage getPackage() { + return NsdPackage.eINSTANCE; + } + +} //NsdFactoryImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/NsdPackageImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/NsdPackageImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..5c1014396304824015d5d0d52ff44fda4de4f04c --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/NsdPackageImpl.java @@ -0,0 +1,5679 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TUndefinedAttributeTypeKind; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdValidator; + +import org.eclipse.emf.common.util.Enumerator; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; +import org.eclipse.emf.ecore.EValidator; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import org.eclipse.emf.ecore.xml.type.XMLTypePackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Package</b>. + * <!-- end-user-doc --> + * @generated + */ +public class NsdPackageImpl extends EPackageImpl implements NsdPackage { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass appliesToTypeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass dependsOnTypeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass documentRootEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass serviceTypeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tAbbreviationEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tAbbreviationsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tAbstractLNClassEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tAnyLNClassEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tApplicableServiceNSEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tApplicableServicesEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tBasicTypeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tBasicTypesEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tcdcEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tcdCsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tChangesEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tConstructedAttributeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tConstructedAttributesEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tCopyrightedEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tCopyrightNoticeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tDataAttributeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tDataObjectEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tDataSetMemberOfEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tDocEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tDocumentedClassEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tEnumerationEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tEnumerationsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tFunctionalConstraintEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tFunctionalConstraintsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tLicenseEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tLiteralEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tlnClassEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tlnClassesEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tNoticeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tnsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tnsDocEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tPresenceConditionEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tPresenceConditionsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tServiceCDCEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tServiceCDCsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tServiceConstructedAttributeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tServiceConstructedAttributesEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tServiceDataAttributeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tServiceNSEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tServiceNsUsageEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tServiceParameterEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tServiceTypeRealizationEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tServiceTypeRealizationsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tSubDataAttributeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tSubDataObjectEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass tTitledClassEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum tacsiServicesKindEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum tcbKindEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum tDefinedAttributeTypeKindEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum tLicenseKindEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum tPubStageEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum tUndefinedAttributeTypeKindEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tAbbreviationNameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tAbstractLNClassNameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tacsiServicesKindObjectEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tAttributeNameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tAttributeTypeKindEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tBasicTypeNameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tcbKindObjectEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tcdcNameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tDataObjectNameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tDefinedAttributeTypeKindObjectEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tDocIDEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tEmptyStringEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tfcAbbreviationEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tIec61850NameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tIec61850NameStringEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tissuesTypeEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tLicenseKindObjectEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tLiteralNameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tlnClassNameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tnsIdentifierEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tnsReleaseEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tnsReleaseObjectEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tnsRevisionEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tnsVersionEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tnsVersionObjectEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tPresenceConditionArgumentEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tPresenceConditionNameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tPubStageObjectEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tSubDataObjectNameEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tumlVersionEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType tUndefinedAttributeTypeKindObjectEDataType = 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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#eNS_URI + * @see #init() + * @generated + */ + private NsdPackageImpl() { + super( eNS_URI, NsdFactory.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 NsdPackage#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 NsdPackage init() { + if( isInited ) return ( NsdPackage ) EPackage.Registry.INSTANCE.getEPackage( NsdPackage.eNS_URI ); + + // Obtain or create and register package + Object registeredNsdPackage = EPackage.Registry.INSTANCE.get( eNS_URI ); + NsdPackageImpl theNsdPackage = registeredNsdPackage instanceof NsdPackageImpl + ? ( NsdPackageImpl ) registeredNsdPackage + : new NsdPackageImpl(); + + isInited = true; + + // Initialize simple dependencies + XMLTypePackage.eINSTANCE.eClass(); + + // Create package meta-data objects + theNsdPackage.createPackageContents(); + + // Initialize created meta-data + theNsdPackage.initializePackageContents(); + + // Register package validator + EValidator.Registry.INSTANCE.put( theNsdPackage, new EValidator.Descriptor() { + @Override + public EValidator getEValidator() { + return NsdValidator.INSTANCE; + } + } ); + + // Mark meta-data to indicate it can't be changed + theNsdPackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put( NsdPackage.eNS_URI, theNsdPackage ); + return theNsdPackage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getAppliesToType() { + return appliesToTypeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getAppliesToType_Id() { + return ( EAttribute ) appliesToTypeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getAppliesToType_PublicationStage() { + return ( EAttribute ) appliesToTypeEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getAppliesToType_Release() { + return ( EAttribute ) appliesToTypeEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getAppliesToType_Revision() { + return ( EAttribute ) appliesToTypeEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getAppliesToType_Version() { + return ( EAttribute ) appliesToTypeEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getDependsOnType() { + return dependsOnTypeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getDependsOnType_Id() { + return ( EAttribute ) dependsOnTypeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getDependsOnType_PublicationStage() { + return ( EAttribute ) dependsOnTypeEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getDependsOnType_Release() { + return ( EAttribute ) dependsOnTypeEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getDependsOnType_Revision() { + return ( EAttribute ) dependsOnTypeEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getDependsOnType_Version() { + return ( EAttribute ) dependsOnTypeEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getDocumentRoot() { + return documentRootEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getDocumentRoot_Mixed() { + return ( EAttribute ) documentRootEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDocumentRoot_XMLNSPrefixMap() { + return ( EReference ) documentRootEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDocumentRoot_XSISchemaLocation() { + return ( EReference ) documentRootEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDocumentRoot_ApplicableServiceNS() { + return ( EReference ) documentRootEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDocumentRoot_Copyright() { + return ( EReference ) documentRootEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDocumentRoot_NS() { + return ( EReference ) documentRootEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDocumentRoot_NSDoc() { + return ( EReference ) documentRootEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDocumentRoot_ServiceNS() { + return ( EReference ) documentRootEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getServiceType() { + return serviceTypeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getServiceType_Name() { + return ( EAttribute ) serviceTypeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTAbbreviation() { + return tAbbreviationEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTAbbreviation_DescID() { + return ( EAttribute ) tAbbreviationEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTAbbreviation_Name() { + return ( EAttribute ) tAbbreviationEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTAbbreviations() { + return tAbbreviationsEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTAbbreviations_Abbreviation() { + return ( EReference ) tAbbreviationsEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTAbstractLNClass() { + return tAbstractLNClassEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTAbstractLNClass_Name() { + return ( EAttribute ) tAbstractLNClassEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTAnyLNClass() { + return tAnyLNClassEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTAnyLNClass_DataObject() { + return ( EReference ) tAnyLNClassEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTAnyLNClass_Base() { + return ( EAttribute ) tAnyLNClassEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTApplicableServiceNS() { + return tApplicableServiceNSEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTApplicableServiceNS_ServiceNsUsage() { + return ( EReference ) tApplicableServiceNSEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTApplicableServiceNS_Date() { + return ( EAttribute ) tApplicableServiceNSEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTApplicableServiceNS_Version() { + return ( EAttribute ) tApplicableServiceNSEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTApplicableServices() { + return tApplicableServicesEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTApplicableServices_Service() { + return ( EReference ) tApplicableServicesEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTApplicableServices_DataSetMemberOf() { + return ( EReference ) tApplicableServicesEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTBasicType() { + return tBasicTypeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTBasicType_DescID() { + return ( EAttribute ) tBasicTypeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTBasicType_Name() { + return ( EAttribute ) tBasicTypeEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTBasicTypes() { + return tBasicTypesEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTBasicTypes_BasicType() { + return ( EReference ) tBasicTypesEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTCDC() { + return tcdcEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTCDC_SubDataObject() { + return ( EReference ) tcdcEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTCDC_DataAttribute() { + return ( EReference ) tcdcEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTCDC_ServiceParameter() { + return ( EReference ) tcdcEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTCDC_EnumParameterized() { + return ( EAttribute ) tcdcEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTCDC_Name() { + return ( EAttribute ) tcdcEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTCDC_Statistics() { + return ( EAttribute ) tcdcEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTCDC_TypeKindParameterized() { + return ( EAttribute ) tcdcEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTCDC_Variant() { + return ( EAttribute ) tcdcEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTCDCs() { + return tcdCsEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTCDCs_CDC() { + return ( EReference ) tcdCsEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTChanges() { + return tChangesEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTChanges_ChangesID() { + return ( EAttribute ) tChangesEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTChanges_Date() { + return ( EAttribute ) tChangesEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTChanges_Release() { + return ( EAttribute ) tChangesEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTChanges_Revision() { + return ( EAttribute ) tChangesEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTChanges_Tissues() { + return ( EAttribute ) tChangesEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTChanges_Version() { + return ( EAttribute ) tChangesEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTConstructedAttribute() { + return tConstructedAttributeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTConstructedAttribute_SubDataAttribute() { + return ( EReference ) tConstructedAttributeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTConstructedAttribute_Name() { + return ( EAttribute ) tConstructedAttributeEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTConstructedAttributes() { + return tConstructedAttributesEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTConstructedAttributes_ConstructedAttribute() { + return ( EReference ) tConstructedAttributesEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTCopyrighted() { + return tCopyrightedEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTCopyrighted_Copyright() { + return ( EReference ) tCopyrightedEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTCopyrightNotice() { + return tCopyrightNoticeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTCopyrightNotice_Notice() { + return ( EReference ) tCopyrightNoticeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTCopyrightNotice_License() { + return ( EReference ) tCopyrightNoticeEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTDataAttribute() { + return tDataAttributeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_Dchg() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_DefaultValue() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_Dupd() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_Fc() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_IsArray() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_MaxIndexAttribute() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_MaxValue() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_MinIndex() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_MinValue() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 8 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_Name() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 9 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_PresCond() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 10 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_PresCondArgs() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 11 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_PresCondArgsID() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 12 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_Qchg() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 13 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_SizeAttribute() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 14 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_Type() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 15 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataAttribute_TypeKind() { + return ( EAttribute ) tDataAttributeEClass.getEStructuralFeatures().get( 16 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTDataObject() { + return tDataObjectEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_DsPresCond() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_DsPresCondArgs() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_DsPresCondArgsID() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_Name() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_PresCond() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_PresCondArgs() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_PresCondArgsID() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_Transient() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_Type() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 8 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_UnderlyingType() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 9 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataObject_UnderlyingTypeKind() { + return ( EAttribute ) tDataObjectEClass.getEStructuralFeatures().get( 10 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTDataSetMemberOf() { + return tDataSetMemberOfEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDataSetMemberOf_Cb() { + return ( EAttribute ) tDataSetMemberOfEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTDoc() { + return tDocEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDoc_Mixed() { + return ( EAttribute ) tDocEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDoc_Group() { + return ( EAttribute ) tDocEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDoc_Any() { + return ( EAttribute ) tDocEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDoc_Id() { + return ( EAttribute ) tDocEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTDocumentedClass() { + return tDocumentedClassEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDocumentedClass_Deprecated() { + return ( EAttribute ) tDocumentedClassEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDocumentedClass_DescID() { + return ( EAttribute ) tDocumentedClassEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTDocumentedClass_Informative() { + return ( EAttribute ) tDocumentedClassEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTEnumeration() { + return tEnumerationEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTEnumeration_Literal() { + return ( EReference ) tEnumerationEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTEnumeration_InheritedFrom() { + return ( EAttribute ) tEnumerationEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTEnumeration_Name() { + return ( EAttribute ) tEnumerationEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTEnumerations() { + return tEnumerationsEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTEnumerations_Enumeration() { + return ( EReference ) tEnumerationsEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTFunctionalConstraint() { + return tFunctionalConstraintEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTFunctionalConstraint_ApplicableServices() { + return ( EReference ) tFunctionalConstraintEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTFunctionalConstraint_Abbreviation() { + return ( EAttribute ) tFunctionalConstraintEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTFunctionalConstraint_DescID() { + return ( EAttribute ) tFunctionalConstraintEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTFunctionalConstraint_TitleID() { + return ( EAttribute ) tFunctionalConstraintEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTFunctionalConstraints() { + return tFunctionalConstraintsEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTFunctionalConstraints_FunctionalConstraint() { + return ( EReference ) tFunctionalConstraintsEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTLicense() { + return tLicenseEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTLicense_Mixed() { + return ( EAttribute ) tLicenseEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTLicense_Kind() { + return ( EAttribute ) tLicenseEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTLicense_Uri() { + return ( EAttribute ) tLicenseEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTLiteral() { + return tLiteralEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTLiteral_LiteralVal() { + return ( EAttribute ) tLiteralEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTLiteral_Name() { + return ( EAttribute ) tLiteralEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTLNClass() { + return tlnClassEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTLNClass_CanHaveLOG() { + return ( EAttribute ) tlnClassEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTLNClass_IsExtension() { + return ( EAttribute ) tlnClassEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTLNClass_Name() { + return ( EAttribute ) tlnClassEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTLNClasses() { + return tlnClassesEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTLNClasses_AbstractLNClass() { + return ( EReference ) tlnClassesEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTLNClasses_LNClass() { + return ( EReference ) tlnClassesEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTNotice() { + return tNoticeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNotice_Mixed() { + return ( EAttribute ) tNoticeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTNS() { + return tnsEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNS_Changes() { + return ( EReference ) tnsEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNS_DependsOn() { + return ( EReference ) tnsEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNS_BasicTypes() { + return ( EReference ) tnsEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNS_FunctionalConstraints() { + return ( EReference ) tnsEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNS_PresenceConditions() { + return ( EReference ) tnsEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNS_Abbreviations() { + return ( EReference ) tnsEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNS_Enumerations() { + return ( EReference ) tnsEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNS_ConstructedAttributes() { + return ( EReference ) tnsEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNS_CDCs() { + return ( EReference ) tnsEClass.getEStructuralFeatures().get( 8 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNS_LNClasses() { + return ( EReference ) tnsEClass.getEStructuralFeatures().get( 9 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNS_DescID() { + return ( EAttribute ) tnsEClass.getEStructuralFeatures().get( 10 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNS_Id() { + return ( EAttribute ) tnsEClass.getEStructuralFeatures().get( 11 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNS_PublicationStage() { + return ( EAttribute ) tnsEClass.getEStructuralFeatures().get( 12 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNS_Release() { + return ( EAttribute ) tnsEClass.getEStructuralFeatures().get( 13 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNS_Revision() { + return ( EAttribute ) tnsEClass.getEStructuralFeatures().get( 14 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNS_UmlDate() { + return ( EAttribute ) tnsEClass.getEStructuralFeatures().get( 15 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNS_UmlVersion() { + return ( EAttribute ) tnsEClass.getEStructuralFeatures().get( 16 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNS_Version() { + return ( EAttribute ) tnsEClass.getEStructuralFeatures().get( 17 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTNSDoc() { + return tnsDocEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTNSDoc_Doc() { + return ( EReference ) tnsDocEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNSDoc_Id() { + return ( EAttribute ) tnsDocEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNSDoc_Lang() { + return ( EAttribute ) tnsDocEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNSDoc_PublicationStage() { + return ( EAttribute ) tnsDocEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNSDoc_Release() { + return ( EAttribute ) tnsDocEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNSDoc_Revision() { + return ( EAttribute ) tnsDocEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNSDoc_UmlDate() { + return ( EAttribute ) tnsDocEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNSDoc_UmlVersion() { + return ( EAttribute ) tnsDocEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTNSDoc_Version() { + return ( EAttribute ) tnsDocEClass.getEStructuralFeatures().get( 8 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTPresenceCondition() { + return tPresenceConditionEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTPresenceCondition_Argument() { + return ( EAttribute ) tPresenceConditionEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTPresenceCondition_DescID() { + return ( EAttribute ) tPresenceConditionEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTPresenceCondition_Name() { + return ( EAttribute ) tPresenceConditionEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTPresenceCondition_TitleID() { + return ( EAttribute ) tPresenceConditionEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTPresenceConditions() { + return tPresenceConditionsEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTPresenceConditions_PresenceCondition() { + return ( EReference ) tPresenceConditionsEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTServiceCDC() { + return tServiceCDCEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceCDC_ServiceDataAttribute() { + return ( EReference ) tServiceCDCEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceCDC_Cdc() { + return ( EAttribute ) tServiceCDCEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceCDC_Variant() { + return ( EAttribute ) tServiceCDCEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTServiceCDCs() { + return tServiceCDCsEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceCDCs_ServiceCDC() { + return ( EReference ) tServiceCDCsEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTServiceConstructedAttribute() { + return tServiceConstructedAttributeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceConstructedAttribute_TypeKindParameterized() { + return ( EAttribute ) tServiceConstructedAttributeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTServiceConstructedAttributes() { + return tServiceConstructedAttributesEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceConstructedAttributes_ServiceConstructedAttribute() { + return ( EReference ) tServiceConstructedAttributesEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTServiceDataAttribute() { + return tServiceDataAttributeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceDataAttribute_Fc() { + return ( EAttribute ) tServiceDataAttributeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceDataAttribute_Name() { + return ( EAttribute ) tServiceDataAttributeEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceDataAttribute_PresCond() { + return ( EAttribute ) tServiceDataAttributeEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceDataAttribute_PresCondArgs() { + return ( EAttribute ) tServiceDataAttributeEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceDataAttribute_PresCondArgsID() { + return ( EAttribute ) tServiceDataAttributeEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceDataAttribute_Type() { + return ( EAttribute ) tServiceDataAttributeEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceDataAttribute_TypeKind() { + return ( EAttribute ) tServiceDataAttributeEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceDataAttribute_UnderlyingType() { + return ( EAttribute ) tServiceDataAttributeEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceDataAttribute_UnderlyingTypeKind() { + return ( EAttribute ) tServiceDataAttributeEClass.getEStructuralFeatures().get( 8 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTServiceNS() { + return tServiceNSEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceNS_Changes() { + return ( EReference ) tServiceNSEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceNS_FunctionalConstraints() { + return ( EReference ) tServiceNSEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceNS_PresenceConditions() { + return ( EReference ) tServiceNSEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceNS_Abbreviations() { + return ( EReference ) tServiceNSEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceNS_ServiceTypeRealizations() { + return ( EReference ) tServiceNSEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceNS_ServiceConstructedAttributes() { + return ( EReference ) tServiceNSEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceNS_ServiceCDCs() { + return ( EReference ) tServiceNSEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNS_DescID() { + return ( EAttribute ) tServiceNSEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNS_Id() { + return ( EAttribute ) tServiceNSEClass.getEStructuralFeatures().get( 8 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNS_PublicationStage() { + return ( EAttribute ) tServiceNSEClass.getEStructuralFeatures().get( 9 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNS_Release() { + return ( EAttribute ) tServiceNSEClass.getEStructuralFeatures().get( 10 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNS_Revision() { + return ( EAttribute ) tServiceNSEClass.getEStructuralFeatures().get( 11 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNS_UmlDate() { + return ( EAttribute ) tServiceNSEClass.getEStructuralFeatures().get( 12 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNS_UmlVersion() { + return ( EAttribute ) tServiceNSEClass.getEStructuralFeatures().get( 13 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNS_Version() { + return ( EAttribute ) tServiceNSEClass.getEStructuralFeatures().get( 14 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTServiceNsUsage() { + return tServiceNsUsageEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceNsUsage_AppliesTo() { + return ( EReference ) tServiceNsUsageEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNsUsage_Id() { + return ( EAttribute ) tServiceNsUsageEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNsUsage_PublicationStage() { + return ( EAttribute ) tServiceNsUsageEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNsUsage_Release() { + return ( EAttribute ) tServiceNsUsageEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNsUsage_Revision() { + return ( EAttribute ) tServiceNsUsageEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceNsUsage_Version() { + return ( EAttribute ) tServiceNsUsageEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTServiceParameter() { + return tServiceParameterEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceParameter_DefaultValue() { + return ( EAttribute ) tServiceParameterEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceParameter_MaxValue() { + return ( EAttribute ) tServiceParameterEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceParameter_MinValue() { + return ( EAttribute ) tServiceParameterEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceParameter_Name() { + return ( EAttribute ) tServiceParameterEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceParameter_Type() { + return ( EAttribute ) tServiceParameterEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceParameter_TypeKind() { + return ( EAttribute ) tServiceParameterEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTServiceTypeRealization() { + return tServiceTypeRealizationEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceTypeRealization_Fc() { + return ( EAttribute ) tServiceTypeRealizationEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceTypeRealization_Name() { + return ( EAttribute ) tServiceTypeRealizationEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceTypeRealization_PresCond() { + return ( EAttribute ) tServiceTypeRealizationEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceTypeRealization_PresCondArgs() { + return ( EAttribute ) tServiceTypeRealizationEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceTypeRealization_PresCondArgsID() { + return ( EAttribute ) tServiceTypeRealizationEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceTypeRealization_Type() { + return ( EAttribute ) tServiceTypeRealizationEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTServiceTypeRealization_TypeKind() { + return ( EAttribute ) tServiceTypeRealizationEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTServiceTypeRealizations() { + return tServiceTypeRealizationsEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getTServiceTypeRealizations_ServiceTypeRealization() { + return ( EReference ) tServiceTypeRealizationsEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTSubDataAttribute() { + return tSubDataAttributeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_DefaultValue() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_IsArray() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_MaxIndexAttribute() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_MaxValue() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_MinIndex() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_MinValue() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_Name() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_PresCond() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_PresCondArgs() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 8 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_PresCondArgsID() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 9 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_SizeAttribute() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 10 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_Type() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 11 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataAttribute_TypeKind() { + return ( EAttribute ) tSubDataAttributeEClass.getEStructuralFeatures().get( 12 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTSubDataObject() { + return tSubDataObjectEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_IsArray() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_MaxIndexAttribute() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 1 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_MinIndex() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 2 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_Name() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 3 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_PresCond() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 4 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_PresCondArgs() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_PresCondArgsID() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_SizeAttribute() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_Type() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 8 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_UnderlyingType() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 9 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTSubDataObject_UnderlyingTypeKind() { + return ( EAttribute ) tSubDataObjectEClass.getEStructuralFeatures().get( 10 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getTTitledClass() { + return tTitledClassEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getTTitledClass_TitleID() { + return ( EAttribute ) tTitledClassEClass.getEStructuralFeatures().get( 0 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EEnum getTACSIServicesKind() { + return tacsiServicesKindEEnum; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EEnum getTCBKind() { + return tcbKindEEnum; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EEnum getTDefinedAttributeTypeKind() { + return tDefinedAttributeTypeKindEEnum; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EEnum getTLicenseKind() { + return tLicenseKindEEnum; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EEnum getTPubStage() { + return tPubStageEEnum; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EEnum getTUndefinedAttributeTypeKind() { + return tUndefinedAttributeTypeKindEEnum; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTAbbreviationName() { + return tAbbreviationNameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTAbstractLNClassName() { + return tAbstractLNClassNameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTACSIServicesKindObject() { + return tacsiServicesKindObjectEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTAttributeName() { + return tAttributeNameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTAttributeTypeKind() { + return tAttributeTypeKindEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTBasicTypeName() { + return tBasicTypeNameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTCBKindObject() { + return tcbKindObjectEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTCDCName() { + return tcdcNameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTDataObjectName() { + return tDataObjectNameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTDefinedAttributeTypeKindObject() { + return tDefinedAttributeTypeKindObjectEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTDocID() { + return tDocIDEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTEmptyString() { + return tEmptyStringEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTFCAbbreviation() { + return tfcAbbreviationEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTIec61850Name() { + return tIec61850NameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTIec61850NameString() { + return tIec61850NameStringEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTissuesType() { + return tissuesTypeEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTLicenseKindObject() { + return tLicenseKindObjectEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTLiteralName() { + return tLiteralNameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTLNClassName() { + return tlnClassNameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTNSIdentifier() { + return tnsIdentifierEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTNSRelease() { + return tnsReleaseEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTNSReleaseObject() { + return tnsReleaseObjectEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTNSRevision() { + return tnsRevisionEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTNSVersion() { + return tnsVersionEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTNSVersionObject() { + return tnsVersionObjectEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTPresenceConditionArgument() { + return tPresenceConditionArgumentEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTPresenceConditionName() { + return tPresenceConditionNameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTPubStageObject() { + return tPubStageObjectEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTSubDataObjectName() { + return tSubDataObjectNameEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTUMLVersion() { + return tumlVersionEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EDataType getTUndefinedAttributeTypeKindObject() { + return tUndefinedAttributeTypeKindObjectEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NsdFactory getNsdFactory() { + return ( NsdFactory ) 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 + appliesToTypeEClass = createEClass( APPLIES_TO_TYPE ); + createEAttribute( appliesToTypeEClass, APPLIES_TO_TYPE__ID ); + createEAttribute( appliesToTypeEClass, APPLIES_TO_TYPE__PUBLICATION_STAGE ); + createEAttribute( appliesToTypeEClass, APPLIES_TO_TYPE__RELEASE ); + createEAttribute( appliesToTypeEClass, APPLIES_TO_TYPE__REVISION ); + createEAttribute( appliesToTypeEClass, APPLIES_TO_TYPE__VERSION ); + + dependsOnTypeEClass = createEClass( DEPENDS_ON_TYPE ); + createEAttribute( dependsOnTypeEClass, DEPENDS_ON_TYPE__ID ); + createEAttribute( dependsOnTypeEClass, DEPENDS_ON_TYPE__PUBLICATION_STAGE ); + createEAttribute( dependsOnTypeEClass, DEPENDS_ON_TYPE__RELEASE ); + createEAttribute( dependsOnTypeEClass, DEPENDS_ON_TYPE__REVISION ); + createEAttribute( dependsOnTypeEClass, DEPENDS_ON_TYPE__VERSION ); + + documentRootEClass = createEClass( DOCUMENT_ROOT ); + createEAttribute( documentRootEClass, DOCUMENT_ROOT__MIXED ); + createEReference( documentRootEClass, DOCUMENT_ROOT__XMLNS_PREFIX_MAP ); + createEReference( documentRootEClass, DOCUMENT_ROOT__XSI_SCHEMA_LOCATION ); + createEReference( documentRootEClass, DOCUMENT_ROOT__APPLICABLE_SERVICE_NS ); + createEReference( documentRootEClass, DOCUMENT_ROOT__COPYRIGHT ); + createEReference( documentRootEClass, DOCUMENT_ROOT__NS ); + createEReference( documentRootEClass, DOCUMENT_ROOT__NS_DOC ); + createEReference( documentRootEClass, DOCUMENT_ROOT__SERVICE_NS ); + + serviceTypeEClass = createEClass( SERVICE_TYPE ); + createEAttribute( serviceTypeEClass, SERVICE_TYPE__NAME ); + + tAbbreviationEClass = createEClass( TABBREVIATION ); + createEAttribute( tAbbreviationEClass, TABBREVIATION__DESC_ID ); + createEAttribute( tAbbreviationEClass, TABBREVIATION__NAME ); + + tAbbreviationsEClass = createEClass( TABBREVIATIONS ); + createEReference( tAbbreviationsEClass, TABBREVIATIONS__ABBREVIATION ); + + tAbstractLNClassEClass = createEClass( TABSTRACT_LN_CLASS ); + createEAttribute( tAbstractLNClassEClass, TABSTRACT_LN_CLASS__NAME ); + + tAnyLNClassEClass = createEClass( TANY_LN_CLASS ); + createEReference( tAnyLNClassEClass, TANY_LN_CLASS__DATA_OBJECT ); + createEAttribute( tAnyLNClassEClass, TANY_LN_CLASS__BASE ); + + tApplicableServiceNSEClass = createEClass( TAPPLICABLE_SERVICE_NS ); + createEReference( tApplicableServiceNSEClass, TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE ); + createEAttribute( tApplicableServiceNSEClass, TAPPLICABLE_SERVICE_NS__DATE ); + createEAttribute( tApplicableServiceNSEClass, TAPPLICABLE_SERVICE_NS__VERSION ); + + tApplicableServicesEClass = createEClass( TAPPLICABLE_SERVICES ); + createEReference( tApplicableServicesEClass, TAPPLICABLE_SERVICES__SERVICE ); + createEReference( tApplicableServicesEClass, TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF ); + + tBasicTypeEClass = createEClass( TBASIC_TYPE ); + createEAttribute( tBasicTypeEClass, TBASIC_TYPE__DESC_ID ); + createEAttribute( tBasicTypeEClass, TBASIC_TYPE__NAME ); + + tBasicTypesEClass = createEClass( TBASIC_TYPES ); + createEReference( tBasicTypesEClass, TBASIC_TYPES__BASIC_TYPE ); + + tcdcEClass = createEClass( TCDC ); + createEReference( tcdcEClass, TCDC__SUB_DATA_OBJECT ); + createEReference( tcdcEClass, TCDC__DATA_ATTRIBUTE ); + createEReference( tcdcEClass, TCDC__SERVICE_PARAMETER ); + createEAttribute( tcdcEClass, TCDC__ENUM_PARAMETERIZED ); + createEAttribute( tcdcEClass, TCDC__NAME ); + createEAttribute( tcdcEClass, TCDC__STATISTICS ); + createEAttribute( tcdcEClass, TCDC__TYPE_KIND_PARAMETERIZED ); + createEAttribute( tcdcEClass, TCDC__VARIANT ); + + tcdCsEClass = createEClass( TCD_CS ); + createEReference( tcdCsEClass, TCD_CS__CDC ); + + tChangesEClass = createEClass( TCHANGES ); + createEAttribute( tChangesEClass, TCHANGES__CHANGES_ID ); + createEAttribute( tChangesEClass, TCHANGES__DATE ); + createEAttribute( tChangesEClass, TCHANGES__RELEASE ); + createEAttribute( tChangesEClass, TCHANGES__REVISION ); + createEAttribute( tChangesEClass, TCHANGES__TISSUES ); + createEAttribute( tChangesEClass, TCHANGES__VERSION ); + + tConstructedAttributeEClass = createEClass( TCONSTRUCTED_ATTRIBUTE ); + createEReference( tConstructedAttributeEClass, TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE ); + createEAttribute( tConstructedAttributeEClass, TCONSTRUCTED_ATTRIBUTE__NAME ); + + tConstructedAttributesEClass = createEClass( TCONSTRUCTED_ATTRIBUTES ); + createEReference( tConstructedAttributesEClass, TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE ); + + tCopyrightedEClass = createEClass( TCOPYRIGHTED ); + createEReference( tCopyrightedEClass, TCOPYRIGHTED__COPYRIGHT ); + + tCopyrightNoticeEClass = createEClass( TCOPYRIGHT_NOTICE ); + createEReference( tCopyrightNoticeEClass, TCOPYRIGHT_NOTICE__NOTICE ); + createEReference( tCopyrightNoticeEClass, TCOPYRIGHT_NOTICE__LICENSE ); + + tDataAttributeEClass = createEClass( TDATA_ATTRIBUTE ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__DCHG ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__DEFAULT_VALUE ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__DUPD ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__FC ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__IS_ARRAY ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__MAX_VALUE ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__MIN_INDEX ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__MIN_VALUE ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__NAME ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__PRES_COND ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__PRES_COND_ARGS ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__PRES_COND_ARGS_ID ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__QCHG ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__SIZE_ATTRIBUTE ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__TYPE ); + createEAttribute( tDataAttributeEClass, TDATA_ATTRIBUTE__TYPE_KIND ); + + tDataObjectEClass = createEClass( TDATA_OBJECT ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__DS_PRES_COND ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__DS_PRES_COND_ARGS ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__DS_PRES_COND_ARGS_ID ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__NAME ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__PRES_COND ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__PRES_COND_ARGS ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__PRES_COND_ARGS_ID ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__TRANSIENT ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__TYPE ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__UNDERLYING_TYPE ); + createEAttribute( tDataObjectEClass, TDATA_OBJECT__UNDERLYING_TYPE_KIND ); + + tDataSetMemberOfEClass = createEClass( TDATA_SET_MEMBER_OF ); + createEAttribute( tDataSetMemberOfEClass, TDATA_SET_MEMBER_OF__CB ); + + tDocEClass = createEClass( TDOC ); + createEAttribute( tDocEClass, TDOC__MIXED ); + createEAttribute( tDocEClass, TDOC__GROUP ); + createEAttribute( tDocEClass, TDOC__ANY ); + createEAttribute( tDocEClass, TDOC__ID ); + + tDocumentedClassEClass = createEClass( TDOCUMENTED_CLASS ); + createEAttribute( tDocumentedClassEClass, TDOCUMENTED_CLASS__DEPRECATED ); + createEAttribute( tDocumentedClassEClass, TDOCUMENTED_CLASS__DESC_ID ); + createEAttribute( tDocumentedClassEClass, TDOCUMENTED_CLASS__INFORMATIVE ); + + tEnumerationEClass = createEClass( TENUMERATION ); + createEReference( tEnumerationEClass, TENUMERATION__LITERAL ); + createEAttribute( tEnumerationEClass, TENUMERATION__INHERITED_FROM ); + createEAttribute( tEnumerationEClass, TENUMERATION__NAME ); + + tEnumerationsEClass = createEClass( TENUMERATIONS ); + createEReference( tEnumerationsEClass, TENUMERATIONS__ENUMERATION ); + + tFunctionalConstraintEClass = createEClass( TFUNCTIONAL_CONSTRAINT ); + createEReference( tFunctionalConstraintEClass, TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES ); + createEAttribute( tFunctionalConstraintEClass, TFUNCTIONAL_CONSTRAINT__ABBREVIATION ); + createEAttribute( tFunctionalConstraintEClass, TFUNCTIONAL_CONSTRAINT__DESC_ID ); + createEAttribute( tFunctionalConstraintEClass, TFUNCTIONAL_CONSTRAINT__TITLE_ID ); + + tFunctionalConstraintsEClass = createEClass( TFUNCTIONAL_CONSTRAINTS ); + createEReference( tFunctionalConstraintsEClass, TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT ); + + tLicenseEClass = createEClass( TLICENSE ); + createEAttribute( tLicenseEClass, TLICENSE__MIXED ); + createEAttribute( tLicenseEClass, TLICENSE__KIND ); + createEAttribute( tLicenseEClass, TLICENSE__URI ); + + tLiteralEClass = createEClass( TLITERAL ); + createEAttribute( tLiteralEClass, TLITERAL__LITERAL_VAL ); + createEAttribute( tLiteralEClass, TLITERAL__NAME ); + + tlnClassEClass = createEClass( TLN_CLASS ); + createEAttribute( tlnClassEClass, TLN_CLASS__CAN_HAVE_LOG ); + createEAttribute( tlnClassEClass, TLN_CLASS__IS_EXTENSION ); + createEAttribute( tlnClassEClass, TLN_CLASS__NAME ); + + tlnClassesEClass = createEClass( TLN_CLASSES ); + createEReference( tlnClassesEClass, TLN_CLASSES__ABSTRACT_LN_CLASS ); + createEReference( tlnClassesEClass, TLN_CLASSES__LN_CLASS ); + + tNoticeEClass = createEClass( TNOTICE ); + createEAttribute( tNoticeEClass, TNOTICE__MIXED ); + + tnsEClass = createEClass( TNS ); + createEReference( tnsEClass, TNS__CHANGES ); + createEReference( tnsEClass, TNS__DEPENDS_ON ); + createEReference( tnsEClass, TNS__BASIC_TYPES ); + createEReference( tnsEClass, TNS__FUNCTIONAL_CONSTRAINTS ); + createEReference( tnsEClass, TNS__PRESENCE_CONDITIONS ); + createEReference( tnsEClass, TNS__ABBREVIATIONS ); + createEReference( tnsEClass, TNS__ENUMERATIONS ); + createEReference( tnsEClass, TNS__CONSTRUCTED_ATTRIBUTES ); + createEReference( tnsEClass, TNS__CD_CS ); + createEReference( tnsEClass, TNS__LN_CLASSES ); + createEAttribute( tnsEClass, TNS__DESC_ID ); + createEAttribute( tnsEClass, TNS__ID ); + createEAttribute( tnsEClass, TNS__PUBLICATION_STAGE ); + createEAttribute( tnsEClass, TNS__RELEASE ); + createEAttribute( tnsEClass, TNS__REVISION ); + createEAttribute( tnsEClass, TNS__UML_DATE ); + createEAttribute( tnsEClass, TNS__UML_VERSION ); + createEAttribute( tnsEClass, TNS__VERSION ); + + tnsDocEClass = createEClass( TNS_DOC ); + createEReference( tnsDocEClass, TNS_DOC__DOC ); + createEAttribute( tnsDocEClass, TNS_DOC__ID ); + createEAttribute( tnsDocEClass, TNS_DOC__LANG ); + createEAttribute( tnsDocEClass, TNS_DOC__PUBLICATION_STAGE ); + createEAttribute( tnsDocEClass, TNS_DOC__RELEASE ); + createEAttribute( tnsDocEClass, TNS_DOC__REVISION ); + createEAttribute( tnsDocEClass, TNS_DOC__UML_DATE ); + createEAttribute( tnsDocEClass, TNS_DOC__UML_VERSION ); + createEAttribute( tnsDocEClass, TNS_DOC__VERSION ); + + tPresenceConditionEClass = createEClass( TPRESENCE_CONDITION ); + createEAttribute( tPresenceConditionEClass, TPRESENCE_CONDITION__ARGUMENT ); + createEAttribute( tPresenceConditionEClass, TPRESENCE_CONDITION__DESC_ID ); + createEAttribute( tPresenceConditionEClass, TPRESENCE_CONDITION__NAME ); + createEAttribute( tPresenceConditionEClass, TPRESENCE_CONDITION__TITLE_ID ); + + tPresenceConditionsEClass = createEClass( TPRESENCE_CONDITIONS ); + createEReference( tPresenceConditionsEClass, TPRESENCE_CONDITIONS__PRESENCE_CONDITION ); + + tServiceCDCEClass = createEClass( TSERVICE_CDC ); + createEReference( tServiceCDCEClass, TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE ); + createEAttribute( tServiceCDCEClass, TSERVICE_CDC__CDC ); + createEAttribute( tServiceCDCEClass, TSERVICE_CDC__VARIANT ); + + tServiceCDCsEClass = createEClass( TSERVICE_CD_CS ); + createEReference( tServiceCDCsEClass, TSERVICE_CD_CS__SERVICE_CDC ); + + tServiceConstructedAttributeEClass = createEClass( TSERVICE_CONSTRUCTED_ATTRIBUTE ); + createEAttribute( tServiceConstructedAttributeEClass, TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED ); + + tServiceConstructedAttributesEClass = createEClass( TSERVICE_CONSTRUCTED_ATTRIBUTES ); + createEReference( tServiceConstructedAttributesEClass, + TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE ); + + tServiceDataAttributeEClass = createEClass( TSERVICE_DATA_ATTRIBUTE ); + createEAttribute( tServiceDataAttributeEClass, TSERVICE_DATA_ATTRIBUTE__FC ); + createEAttribute( tServiceDataAttributeEClass, TSERVICE_DATA_ATTRIBUTE__NAME ); + createEAttribute( tServiceDataAttributeEClass, TSERVICE_DATA_ATTRIBUTE__PRES_COND ); + createEAttribute( tServiceDataAttributeEClass, TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS ); + createEAttribute( tServiceDataAttributeEClass, TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID ); + createEAttribute( tServiceDataAttributeEClass, TSERVICE_DATA_ATTRIBUTE__TYPE ); + createEAttribute( tServiceDataAttributeEClass, TSERVICE_DATA_ATTRIBUTE__TYPE_KIND ); + createEAttribute( tServiceDataAttributeEClass, TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE ); + createEAttribute( tServiceDataAttributeEClass, TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND ); + + tServiceNSEClass = createEClass( TSERVICE_NS ); + createEReference( tServiceNSEClass, TSERVICE_NS__CHANGES ); + createEReference( tServiceNSEClass, TSERVICE_NS__FUNCTIONAL_CONSTRAINTS ); + createEReference( tServiceNSEClass, TSERVICE_NS__PRESENCE_CONDITIONS ); + createEReference( tServiceNSEClass, TSERVICE_NS__ABBREVIATIONS ); + createEReference( tServiceNSEClass, TSERVICE_NS__SERVICE_TYPE_REALIZATIONS ); + createEReference( tServiceNSEClass, TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES ); + createEReference( tServiceNSEClass, TSERVICE_NS__SERVICE_CD_CS ); + createEAttribute( tServiceNSEClass, TSERVICE_NS__DESC_ID ); + createEAttribute( tServiceNSEClass, TSERVICE_NS__ID ); + createEAttribute( tServiceNSEClass, TSERVICE_NS__PUBLICATION_STAGE ); + createEAttribute( tServiceNSEClass, TSERVICE_NS__RELEASE ); + createEAttribute( tServiceNSEClass, TSERVICE_NS__REVISION ); + createEAttribute( tServiceNSEClass, TSERVICE_NS__UML_DATE ); + createEAttribute( tServiceNSEClass, TSERVICE_NS__UML_VERSION ); + createEAttribute( tServiceNSEClass, TSERVICE_NS__VERSION ); + + tServiceNsUsageEClass = createEClass( TSERVICE_NS_USAGE ); + createEReference( tServiceNsUsageEClass, TSERVICE_NS_USAGE__APPLIES_TO ); + createEAttribute( tServiceNsUsageEClass, TSERVICE_NS_USAGE__ID ); + createEAttribute( tServiceNsUsageEClass, TSERVICE_NS_USAGE__PUBLICATION_STAGE ); + createEAttribute( tServiceNsUsageEClass, TSERVICE_NS_USAGE__RELEASE ); + createEAttribute( tServiceNsUsageEClass, TSERVICE_NS_USAGE__REVISION ); + createEAttribute( tServiceNsUsageEClass, TSERVICE_NS_USAGE__VERSION ); + + tServiceParameterEClass = createEClass( TSERVICE_PARAMETER ); + createEAttribute( tServiceParameterEClass, TSERVICE_PARAMETER__DEFAULT_VALUE ); + createEAttribute( tServiceParameterEClass, TSERVICE_PARAMETER__MAX_VALUE ); + createEAttribute( tServiceParameterEClass, TSERVICE_PARAMETER__MIN_VALUE ); + createEAttribute( tServiceParameterEClass, TSERVICE_PARAMETER__NAME ); + createEAttribute( tServiceParameterEClass, TSERVICE_PARAMETER__TYPE ); + createEAttribute( tServiceParameterEClass, TSERVICE_PARAMETER__TYPE_KIND ); + + tServiceTypeRealizationEClass = createEClass( TSERVICE_TYPE_REALIZATION ); + createEAttribute( tServiceTypeRealizationEClass, TSERVICE_TYPE_REALIZATION__FC ); + createEAttribute( tServiceTypeRealizationEClass, TSERVICE_TYPE_REALIZATION__NAME ); + createEAttribute( tServiceTypeRealizationEClass, TSERVICE_TYPE_REALIZATION__PRES_COND ); + createEAttribute( tServiceTypeRealizationEClass, TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS ); + createEAttribute( tServiceTypeRealizationEClass, TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS_ID ); + createEAttribute( tServiceTypeRealizationEClass, TSERVICE_TYPE_REALIZATION__TYPE ); + createEAttribute( tServiceTypeRealizationEClass, TSERVICE_TYPE_REALIZATION__TYPE_KIND ); + + tServiceTypeRealizationsEClass = createEClass( TSERVICE_TYPE_REALIZATIONS ); + createEReference( tServiceTypeRealizationsEClass, TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION ); + + tSubDataAttributeEClass = createEClass( TSUB_DATA_ATTRIBUTE ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__DEFAULT_VALUE ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__IS_ARRAY ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__MAX_VALUE ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__MIN_INDEX ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__MIN_VALUE ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__NAME ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__PRES_COND ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__TYPE ); + createEAttribute( tSubDataAttributeEClass, TSUB_DATA_ATTRIBUTE__TYPE_KIND ); + + tSubDataObjectEClass = createEClass( TSUB_DATA_OBJECT ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__IS_ARRAY ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__MIN_INDEX ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__NAME ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__PRES_COND ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__PRES_COND_ARGS ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__PRES_COND_ARGS_ID ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__SIZE_ATTRIBUTE ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__TYPE ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__UNDERLYING_TYPE ); + createEAttribute( tSubDataObjectEClass, TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND ); + + tTitledClassEClass = createEClass( TTITLED_CLASS ); + createEAttribute( tTitledClassEClass, TTITLED_CLASS__TITLE_ID ); + + // Create enums + tacsiServicesKindEEnum = createEEnum( TACSI_SERVICES_KIND ); + tcbKindEEnum = createEEnum( TCB_KIND ); + tDefinedAttributeTypeKindEEnum = createEEnum( TDEFINED_ATTRIBUTE_TYPE_KIND ); + tLicenseKindEEnum = createEEnum( TLICENSE_KIND ); + tPubStageEEnum = createEEnum( TPUB_STAGE ); + tUndefinedAttributeTypeKindEEnum = createEEnum( TUNDEFINED_ATTRIBUTE_TYPE_KIND ); + + // Create data types + tAbbreviationNameEDataType = createEDataType( TABBREVIATION_NAME ); + tAbstractLNClassNameEDataType = createEDataType( TABSTRACT_LN_CLASS_NAME ); + tacsiServicesKindObjectEDataType = createEDataType( TACSI_SERVICES_KIND_OBJECT ); + tAttributeNameEDataType = createEDataType( TATTRIBUTE_NAME ); + tAttributeTypeKindEDataType = createEDataType( TATTRIBUTE_TYPE_KIND ); + tBasicTypeNameEDataType = createEDataType( TBASIC_TYPE_NAME ); + tcbKindObjectEDataType = createEDataType( TCB_KIND_OBJECT ); + tcdcNameEDataType = createEDataType( TCDC_NAME ); + tDataObjectNameEDataType = createEDataType( TDATA_OBJECT_NAME ); + tDefinedAttributeTypeKindObjectEDataType = createEDataType( TDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT ); + tDocIDEDataType = createEDataType( TDOC_ID ); + tEmptyStringEDataType = createEDataType( TEMPTY_STRING ); + tfcAbbreviationEDataType = createEDataType( TFC_ABBREVIATION ); + tIec61850NameEDataType = createEDataType( TIEC61850_NAME ); + tIec61850NameStringEDataType = createEDataType( TIEC61850_NAME_STRING ); + tissuesTypeEDataType = createEDataType( TISSUES_TYPE ); + tLicenseKindObjectEDataType = createEDataType( TLICENSE_KIND_OBJECT ); + tLiteralNameEDataType = createEDataType( TLITERAL_NAME ); + tlnClassNameEDataType = createEDataType( TLN_CLASS_NAME ); + tnsIdentifierEDataType = createEDataType( TNS_IDENTIFIER ); + tnsReleaseEDataType = createEDataType( TNS_RELEASE ); + tnsReleaseObjectEDataType = createEDataType( TNS_RELEASE_OBJECT ); + tnsRevisionEDataType = createEDataType( TNS_REVISION ); + tnsVersionEDataType = createEDataType( TNS_VERSION ); + tnsVersionObjectEDataType = createEDataType( TNS_VERSION_OBJECT ); + tPresenceConditionArgumentEDataType = createEDataType( TPRESENCE_CONDITION_ARGUMENT ); + tPresenceConditionNameEDataType = createEDataType( TPRESENCE_CONDITION_NAME ); + tPubStageObjectEDataType = createEDataType( TPUB_STAGE_OBJECT ); + tSubDataObjectNameEDataType = createEDataType( TSUB_DATA_OBJECT_NAME ); + tumlVersionEDataType = createEDataType( TUML_VERSION ); + tUndefinedAttributeTypeKindObjectEDataType = createEDataType( TUNDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This + * method is guarded to have no affect on any invocation but its first. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void initializePackageContents() { + if( isInitialized ) return; + isInitialized = true; + + // Initialize package + setName( eNAME ); + setNsPrefix( eNS_PREFIX ); + setNsURI( eNS_URI ); + + // Obtain other dependent packages + XMLTypePackage theXMLTypePackage = ( XMLTypePackage ) EPackage.Registry.INSTANCE + .getEPackage( XMLTypePackage.eNS_URI ); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + tAbstractLNClassEClass.getESuperTypes().add( this.getTAnyLNClass() ); + tAnyLNClassEClass.getESuperTypes().add( this.getTTitledClass() ); + tApplicableServiceNSEClass.getESuperTypes().add( this.getTCopyrighted() ); + tcdcEClass.getESuperTypes().add( this.getTTitledClass() ); + tConstructedAttributeEClass.getESuperTypes().add( this.getTTitledClass() ); + tDataAttributeEClass.getESuperTypes().add( this.getTDocumentedClass() ); + tDataObjectEClass.getESuperTypes().add( this.getTDocumentedClass() ); + tEnumerationEClass.getESuperTypes().add( this.getTTitledClass() ); + tLiteralEClass.getESuperTypes().add( this.getTDocumentedClass() ); + tlnClassEClass.getESuperTypes().add( this.getTAnyLNClass() ); + tnsEClass.getESuperTypes().add( this.getTCopyrighted() ); + tnsDocEClass.getESuperTypes().add( this.getTCopyrighted() ); + tServiceConstructedAttributeEClass.getESuperTypes().add( this.getTConstructedAttribute() ); + tServiceDataAttributeEClass.getESuperTypes().add( this.getTDocumentedClass() ); + tServiceNSEClass.getESuperTypes().add( this.getTCopyrighted() ); + tServiceParameterEClass.getESuperTypes().add( this.getTDocumentedClass() ); + tSubDataAttributeEClass.getESuperTypes().add( this.getTDocumentedClass() ); + tSubDataObjectEClass.getESuperTypes().add( this.getTDocumentedClass() ); + tTitledClassEClass.getESuperTypes().add( this.getTDocumentedClass() ); + + // Initialize classes, features, and operations; add parameters + initEClass( appliesToTypeEClass, AppliesToType.class, "AppliesToType", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getAppliesToType_Id(), this.getTNSIdentifier(), "id", null, 1, 1, AppliesToType.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getAppliesToType_PublicationStage(), this.getTPubStage(), "publicationStage", "IS", 0, 1, + AppliesToType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getAppliesToType_Release(), this.getTNSRelease(), "release", "1", 0, 1, AppliesToType.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getAppliesToType_Revision(), this.getTNSRevision(), "revision", "A", 0, 1, AppliesToType.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getAppliesToType_Version(), this.getTNSVersion(), "version", null, 1, 1, AppliesToType.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( dependsOnTypeEClass, DependsOnType.class, "DependsOnType", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getDependsOnType_Id(), this.getTNSIdentifier(), "id", null, 1, 1, DependsOnType.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getDependsOnType_PublicationStage(), this.getTPubStage(), "publicationStage", "IS", 0, 1, + DependsOnType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getDependsOnType_Release(), this.getTNSRelease(), "release", "1", 0, 1, DependsOnType.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getDependsOnType_Revision(), this.getTNSRevision(), "revision", "A", 0, 1, DependsOnType.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getDependsOnType_Version(), this.getTNSVersion(), "version", null, 1, 1, DependsOnType.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( documentRootEClass, DocumentRoot.class, "DocumentRoot", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getDocumentRoot_Mixed(), ecorePackage.getEFeatureMapEntry(), "mixed", null, 0, -1, null, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEReference( getDocumentRoot_XMLNSPrefixMap(), ecorePackage.getEStringToStringMapEntry(), null, + "xMLNSPrefixMap", null, 0, -1, null, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getDocumentRoot_XSISchemaLocation(), ecorePackage.getEStringToStringMapEntry(), null, + "xSISchemaLocation", null, 0, -1, null, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getDocumentRoot_ApplicableServiceNS(), this.getTApplicableServiceNS(), null, + "applicableServiceNS", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED ); + initEReference( getDocumentRoot_Copyright(), this.getTCopyrightNotice(), null, "copyright", null, 0, -2, null, + IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, + IS_DERIVED, IS_ORDERED ); + initEReference( getDocumentRoot_NS(), this.getTNS(), null, "nS", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, + IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED ); + initEReference( getDocumentRoot_NSDoc(), this.getTNSDoc(), null, "nSDoc", null, 0, -2, null, IS_TRANSIENT, + IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, + IS_ORDERED ); + initEReference( getDocumentRoot_ServiceNS(), this.getTServiceNS(), null, "serviceNS", null, 0, -2, null, + IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, + IS_DERIVED, IS_ORDERED ); + + initEClass( serviceTypeEClass, ServiceType.class, "ServiceType", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getServiceType_Name(), this.getTACSIServicesKind(), "name", null, 1, 1, ServiceType.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tAbbreviationEClass, TAbbreviation.class, "TAbbreviation", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTAbbreviation_DescID(), this.getTDocID(), "descID", null, 0, 1, TAbbreviation.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTAbbreviation_Name(), this.getTAbbreviationName(), "name", null, 1, 1, TAbbreviation.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + + initEClass( tAbbreviationsEClass, TAbbreviations.class, "TAbbreviations", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTAbbreviations_Abbreviation(), this.getTAbbreviation(), null, "abbreviation", null, 1, -1, + TAbbreviations.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tAbstractLNClassEClass, TAbstractLNClass.class, "TAbstractLNClass", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTAbstractLNClass_Name(), this.getTAbstractLNClassName(), "name", null, 1, 1, + TAbstractLNClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + + initEClass( tAnyLNClassEClass, TAnyLNClass.class, "TAnyLNClass", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTAnyLNClass_DataObject(), this.getTDataObject(), null, "dataObject", null, 0, -1, + TAnyLNClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTAnyLNClass_Base(), this.getTAbstractLNClassName(), "base", null, 0, 1, TAnyLNClass.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + + initEClass( tApplicableServiceNSEClass, TApplicableServiceNS.class, "TApplicableServiceNS", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTApplicableServiceNS_ServiceNsUsage(), this.getTServiceNsUsage(), null, "serviceNsUsage", + null, 1, -1, TApplicableServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTApplicableServiceNS_Date(), theXMLTypePackage.getDateTime(), "date", null, 1, 1, + TApplicableServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTApplicableServiceNS_Version(), theXMLTypePackage.getUnsignedInt(), "version", null, 1, 1, + TApplicableServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tApplicableServicesEClass, TApplicableServices.class, "TApplicableServices", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTApplicableServices_Service(), this.getServiceType(), null, "service", null, 0, -1, + TApplicableServices.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTApplicableServices_DataSetMemberOf(), this.getTDataSetMemberOf(), null, "dataSetMemberOf", + null, 0, -1, TApplicableServices.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tBasicTypeEClass, TBasicType.class, "TBasicType", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTBasicType_DescID(), this.getTDocID(), "descID", null, 0, 1, TBasicType.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTBasicType_Name(), this.getTBasicTypeName(), "name", null, 1, 1, TBasicType.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + + initEClass( tBasicTypesEClass, TBasicTypes.class, "TBasicTypes", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTBasicTypes_BasicType(), this.getTBasicType(), null, "basicType", null, 1, -1, + TBasicTypes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tcdcEClass, fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC.class, "TCDC", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTCDC_SubDataObject(), this.getTSubDataObject(), null, "subDataObject", null, 0, -1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTCDC_DataAttribute(), this.getTDataAttribute(), null, "dataAttribute", null, 1, -1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTCDC_ServiceParameter(), this.getTServiceParameter(), null, "serviceParameter", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTCDC_EnumParameterized(), theXMLTypePackage.getBoolean(), "enumParameterized", "false", 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTCDC_Name(), this.getTCDCName(), "name", null, 1, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTCDC_Statistics(), theXMLTypePackage.getBoolean(), "statistics", "false", 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTCDC_TypeKindParameterized(), theXMLTypePackage.getBoolean(), "typeKindParameterized", + "false", 0, 1, fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTCDC_Variant(), theXMLTypePackage.getToken(), "variant", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tcdCsEClass, TCDCs.class, "TCDCs", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTCDCs_CDC(), this.getTCDC(), null, "cDC", null, 0, -1, TCDCs.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + + initEClass( tChangesEClass, TChanges.class, "TChanges", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTChanges_ChangesID(), this.getTDocID(), "changesID", null, 0, 1, TChanges.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTChanges_Date(), theXMLTypePackage.getDate(), "date", null, 0, 1, TChanges.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTChanges_Release(), this.getTNSRelease(), "release", "1", 0, 1, TChanges.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTChanges_Revision(), this.getTNSRevision(), "revision", "A", 0, 1, TChanges.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTChanges_Tissues(), this.getTissuesType(), "tissues", null, 0, 1, TChanges.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTChanges_Version(), this.getTNSVersion(), "version", null, 1, 1, TChanges.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tConstructedAttributeEClass, TConstructedAttribute.class, "TConstructedAttribute", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTConstructedAttribute_SubDataAttribute(), this.getTSubDataAttribute(), null, + "subDataAttribute", null, 1, -1, TConstructedAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTConstructedAttribute_Name(), this.getTIec61850Name(), "name", null, 1, 1, + TConstructedAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tConstructedAttributesEClass, TConstructedAttributes.class, "TConstructedAttributes", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTConstructedAttributes_ConstructedAttribute(), this.getTConstructedAttribute(), null, + "constructedAttribute", null, 0, -1, TConstructedAttributes.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tCopyrightedEClass, TCopyrighted.class, "TCopyrighted", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTCopyrighted_Copyright(), this.getTCopyrightNotice(), null, "copyright", null, 0, 1, + TCopyrighted.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tCopyrightNoticeEClass, TCopyrightNotice.class, "TCopyrightNotice", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTCopyrightNotice_Notice(), this.getTNotice(), null, "notice", null, 1, 1, + TCopyrightNotice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTCopyrightNotice_License(), this.getTLicense(), null, "license", null, 1, 1, + TCopyrightNotice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tDataAttributeEClass, TDataAttribute.class, "TDataAttribute", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTDataAttribute_Dchg(), theXMLTypePackage.getBoolean(), "dchg", "false", 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_DefaultValue(), theXMLTypePackage.getNormalizedString(), "defaultValue", null, + 0, 1, TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_Dupd(), theXMLTypePackage.getBoolean(), "dupd", "false", 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_Fc(), this.getTFCAbbreviation(), "fc", null, 1, 1, TDataAttribute.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTDataAttribute_IsArray(), theXMLTypePackage.getBoolean(), "isArray", "false", 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_MaxIndexAttribute(), this.getTAttributeName(), "maxIndexAttribute", null, 0, + 1, TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_MaxValue(), theXMLTypePackage.getDecimal(), "maxValue", null, 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_MinIndex(), theXMLTypePackage.getUnsignedInt(), "minIndex", "0", 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_MinValue(), theXMLTypePackage.getDecimal(), "minValue", null, 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_Name(), this.getTAttributeName(), "name", null, 1, 1, TDataAttribute.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTDataAttribute_PresCond(), this.getTPresenceConditionName(), "presCond", "M", 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_PresCondArgs(), this.getTPresenceConditionArgument(), "presCondArgs", null, 0, + 1, TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_PresCondArgsID(), this.getTDocID(), "presCondArgsID", null, 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_Qchg(), theXMLTypePackage.getBoolean(), "qchg", "false", 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_SizeAttribute(), this.getTAttributeName(), "sizeAttribute", null, 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataAttribute_Type(), this.getTIec61850Name(), "type", null, 0, 1, TDataAttribute.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTDataAttribute_TypeKind(), this.getTAttributeTypeKind(), "typeKind", "BASIC", 0, 1, + TDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + + initEClass( tDataObjectEClass, TDataObject.class, "TDataObject", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTDataObject_DsPresCond(), this.getTPresenceConditionName(), "dsPresCond", "M", 0, 1, + TDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataObject_DsPresCondArgs(), this.getTPresenceConditionArgument(), "dsPresCondArgs", null, + 0, 1, TDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataObject_DsPresCondArgsID(), this.getTDocID(), "dsPresCondArgsID", null, 0, 1, + TDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataObject_Name(), this.getTDataObjectName(), "name", null, 1, 1, TDataObject.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTDataObject_PresCond(), this.getTPresenceConditionName(), "presCond", "M", 0, 1, + TDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataObject_PresCondArgs(), this.getTPresenceConditionArgument(), "presCondArgs", null, 0, 1, + TDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataObject_PresCondArgsID(), this.getTDocID(), "presCondArgsID", null, 0, 1, + TDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataObject_Transient(), theXMLTypePackage.getBoolean(), "transient", "false", 0, 1, + TDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataObject_Type(), this.getTCDCName(), "type", null, 1, 1, TDataObject.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataObject_UnderlyingType(), this.getTIec61850Name(), "underlyingType", null, 0, 1, + TDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDataObject_UnderlyingTypeKind(), this.getTDefinedAttributeTypeKind(), "underlyingTypeKind", + null, 0, 1, TDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tDataSetMemberOfEClass, TDataSetMemberOf.class, "TDataSetMemberOf", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTDataSetMemberOf_Cb(), this.getTCBKind(), "cb", null, 1, 1, TDataSetMemberOf.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tDocEClass, TDoc.class, "TDoc", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTDoc_Mixed(), ecorePackage.getEFeatureMapEntry(), "mixed", null, 0, -1, TDoc.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTDoc_Group(), ecorePackage.getEFeatureMapEntry(), "group", null, 0, -1, TDoc.class, + IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDoc_Any(), ecorePackage.getEFeatureMapEntry(), "any", null, 0, -1, TDoc.class, IS_TRANSIENT, + IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDoc_Id(), this.getTDocID(), "id", null, 1, 1, TDoc.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tDocumentedClassEClass, TDocumentedClass.class, "TDocumentedClass", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTDocumentedClass_Deprecated(), theXMLTypePackage.getBoolean(), "deprecated", "false", 0, 1, + TDocumentedClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTDocumentedClass_DescID(), this.getTDocID(), "descID", null, 0, 1, TDocumentedClass.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTDocumentedClass_Informative(), theXMLTypePackage.getBoolean(), "informative", "false", 0, 1, + TDocumentedClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + + initEClass( tEnumerationEClass, TEnumeration.class, "TEnumeration", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTEnumeration_Literal(), this.getTLiteral(), null, "literal", null, 1, -1, TEnumeration.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTEnumeration_InheritedFrom(), this.getTIec61850Name(), "inheritedFrom", null, 0, 1, + TEnumeration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTEnumeration_Name(), this.getTIec61850Name(), "name", null, 1, 1, TEnumeration.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + + initEClass( tEnumerationsEClass, TEnumerations.class, "TEnumerations", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTEnumerations_Enumeration(), this.getTEnumeration(), null, "enumeration", null, 0, -1, + TEnumerations.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tFunctionalConstraintEClass, TFunctionalConstraint.class, "TFunctionalConstraint", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTFunctionalConstraint_ApplicableServices(), this.getTApplicableServices(), null, + "applicableServices", null, 0, 1, TFunctionalConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTFunctionalConstraint_Abbreviation(), this.getTFCAbbreviation(), "abbreviation", null, 1, 1, + TFunctionalConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTFunctionalConstraint_DescID(), this.getTDocID(), "descID", null, 0, 1, + TFunctionalConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTFunctionalConstraint_TitleID(), this.getTDocID(), "titleID", null, 0, 1, + TFunctionalConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tFunctionalConstraintsEClass, TFunctionalConstraints.class, "TFunctionalConstraints", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTFunctionalConstraints_FunctionalConstraint(), this.getTFunctionalConstraint(), null, + "functionalConstraint", null, 1, -1, TFunctionalConstraints.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tLicenseEClass, TLicense.class, "TLicense", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTLicense_Mixed(), ecorePackage.getEFeatureMapEntry(), "mixed", null, 0, -1, TLicense.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTLicense_Kind(), this.getTLicenseKind(), "kind", null, 0, 1, TLicense.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTLicense_Uri(), theXMLTypePackage.getNormalizedString(), "uri", null, 0, 1, TLicense.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + + initEClass( tLiteralEClass, TLiteral.class, "TLiteral", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTLiteral_LiteralVal(), theXMLTypePackage.getInt(), "literalVal", null, 1, 1, TLiteral.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTLiteral_Name(), this.getTLiteralName(), "name", null, 1, 1, TLiteral.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tlnClassEClass, TLNClass.class, "TLNClass", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTLNClass_CanHaveLOG(), theXMLTypePackage.getBoolean(), "canHaveLOG", "false", 0, 1, + TLNClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTLNClass_IsExtension(), theXMLTypePackage.getBoolean(), "isExtension", "false", 0, 1, + TLNClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTLNClass_Name(), this.getTLNClassName(), "name", null, 1, 1, TLNClass.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tlnClassesEClass, TLNClasses.class, "TLNClasses", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTLNClasses_AbstractLNClass(), this.getTAbstractLNClass(), null, "abstractLNClass", null, 0, + -1, TLNClasses.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTLNClasses_LNClass(), this.getTLNClass(), null, "lNClass", null, 0, -1, TLNClasses.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tNoticeEClass, TNotice.class, "TNotice", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTNotice_Mixed(), ecorePackage.getEFeatureMapEntry(), "mixed", null, 0, -1, TNotice.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + + initEClass( tnsEClass, fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, "TNS", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTNS_Changes(), this.getTChanges(), null, "changes", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTNS_DependsOn(), this.getDependsOnType(), null, "dependsOn", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTNS_BasicTypes(), this.getTBasicTypes(), null, "basicTypes", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTNS_FunctionalConstraints(), this.getTFunctionalConstraints(), null, "functionalConstraints", + null, 0, 1, fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTNS_PresenceConditions(), this.getTPresenceConditions(), null, "presenceConditions", null, 0, + 1, fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTNS_Abbreviations(), this.getTAbbreviations(), null, "abbreviations", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTNS_Enumerations(), this.getTEnumerations(), null, "enumerations", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTNS_ConstructedAttributes(), this.getTConstructedAttributes(), null, "constructedAttributes", + null, 0, 1, fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTNS_CDCs(), this.getTCDCs(), null, "cDCs", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTNS_LNClasses(), this.getTLNClasses(), null, "lNClasses", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNS_DescID(), this.getTDocID(), "descID", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNS_Id(), this.getTNSIdentifier(), "id", null, 1, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNS_PublicationStage(), this.getTPubStage(), "publicationStage", "IS", 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNS_Release(), this.getTNSRelease(), "release", "1", 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNS_Revision(), this.getTNSRevision(), "revision", "A", 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNS_UmlDate(), theXMLTypePackage.getDateTime(), "umlDate", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNS_UmlVersion(), this.getTUMLVersion(), "umlVersion", null, 0, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNS_Version(), this.getTNSVersion(), "version", null, 1, 1, + fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tnsDocEClass, TNSDoc.class, "TNSDoc", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTNSDoc_Doc(), this.getTDoc(), null, "doc", null, 1, -1, TNSDoc.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTNSDoc_Id(), this.getTNSIdentifier(), "id", null, 1, 1, TNSDoc.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNSDoc_Lang(), theXMLTypePackage.getLanguage(), "lang", null, 1, 1, TNSDoc.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTNSDoc_PublicationStage(), this.getTPubStage(), "publicationStage", "IS", 0, 1, TNSDoc.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNSDoc_Release(), this.getTNSRelease(), "release", "1", 0, 1, TNSDoc.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNSDoc_Revision(), this.getTNSRevision(), "revision", "A", 0, 1, TNSDoc.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTNSDoc_UmlDate(), theXMLTypePackage.getDateTime(), "umlDate", null, 0, 1, TNSDoc.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTNSDoc_UmlVersion(), this.getTUMLVersion(), "umlVersion", null, 0, 1, TNSDoc.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTNSDoc_Version(), this.getTNSVersion(), "version", null, 1, 1, TNSDoc.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tPresenceConditionEClass, TPresenceCondition.class, "TPresenceCondition", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTPresenceCondition_Argument(), this.getTPresenceConditionArgument(), "argument", null, 0, 1, + TPresenceCondition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTPresenceCondition_DescID(), this.getTDocID(), "descID", null, 0, 1, + TPresenceCondition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTPresenceCondition_Name(), this.getTPresenceConditionName(), "name", null, 1, 1, + TPresenceCondition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTPresenceCondition_TitleID(), this.getTDocID(), "titleID", null, 0, 1, + TPresenceCondition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + + initEClass( tPresenceConditionsEClass, TPresenceConditions.class, "TPresenceConditions", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTPresenceConditions_PresenceCondition(), this.getTPresenceCondition(), null, + "presenceCondition", null, 1, -1, TPresenceConditions.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tServiceCDCEClass, TServiceCDC.class, "TServiceCDC", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTServiceCDC_ServiceDataAttribute(), this.getTServiceDataAttribute(), null, + "serviceDataAttribute", null, 1, -1, TServiceCDC.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceCDC_Cdc(), this.getTCDCName(), "cdc", null, 1, 1, TServiceCDC.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceCDC_Variant(), theXMLTypePackage.getToken(), "variant", null, 0, 1, + TServiceCDC.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + + initEClass( tServiceCDCsEClass, TServiceCDCs.class, "TServiceCDCs", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTServiceCDCs_ServiceCDC(), this.getTServiceCDC(), null, "serviceCDC", null, 0, -1, + TServiceCDCs.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tServiceConstructedAttributeEClass, TServiceConstructedAttribute.class, + "TServiceConstructedAttribute", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTServiceConstructedAttribute_TypeKindParameterized(), theXMLTypePackage.getBoolean(), + "typeKindParameterized", "false", 0, 1, TServiceConstructedAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tServiceConstructedAttributesEClass, TServiceConstructedAttributes.class, + "TServiceConstructedAttributes", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTServiceConstructedAttributes_ServiceConstructedAttribute(), + this.getTServiceConstructedAttribute(), null, "serviceConstructedAttribute", null, 0, -1, + TServiceConstructedAttributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tServiceDataAttributeEClass, TServiceDataAttribute.class, "TServiceDataAttribute", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTServiceDataAttribute_Fc(), this.getTFCAbbreviation(), "fc", null, 1, 1, + TServiceDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceDataAttribute_Name(), this.getTAttributeName(), "name", null, 1, 1, + TServiceDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceDataAttribute_PresCond(), this.getTPresenceConditionName(), "presCond", "M", 0, 1, + TServiceDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceDataAttribute_PresCondArgs(), this.getTPresenceConditionArgument(), "presCondArgs", + null, 0, 1, TServiceDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, + !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceDataAttribute_PresCondArgsID(), this.getTDocID(), "presCondArgsID", null, 0, 1, + TServiceDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceDataAttribute_Type(), this.getTIec61850Name(), "type", null, 0, 1, + TServiceDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceDataAttribute_TypeKind(), this.getTAttributeTypeKind(), "typeKind", "BASIC", 0, 1, + TServiceDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceDataAttribute_UnderlyingType(), this.getTIec61850Name(), "underlyingType", null, 0, + 1, TServiceDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceDataAttribute_UnderlyingTypeKind(), this.getTDefinedAttributeTypeKind(), + "underlyingTypeKind", null, 0, 1, TServiceDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tServiceNSEClass, TServiceNS.class, "TServiceNS", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTServiceNS_Changes(), this.getTChanges(), null, "changes", null, 0, 1, TServiceNS.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTServiceNS_FunctionalConstraints(), this.getTFunctionalConstraints(), null, + "functionalConstraints", null, 0, 1, TServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTServiceNS_PresenceConditions(), this.getTPresenceConditions(), null, "presenceConditions", + null, 0, 1, TServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTServiceNS_Abbreviations(), this.getTAbbreviations(), null, "abbreviations", null, 0, 1, + TServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTServiceNS_ServiceTypeRealizations(), this.getTServiceTypeRealizations(), null, + "serviceTypeRealizations", null, 0, 1, TServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTServiceNS_ServiceConstructedAttributes(), this.getTServiceConstructedAttributes(), null, + "serviceConstructedAttributes", null, 0, 1, TServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getTServiceNS_ServiceCDCs(), this.getTServiceCDCs(), null, "serviceCDCs", null, 0, 1, + TServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNS_DescID(), this.getTDocID(), "descID", null, 0, 1, TServiceNS.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNS_Id(), this.getTNSIdentifier(), "id", null, 1, 1, TServiceNS.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNS_PublicationStage(), this.getTPubStage(), "publicationStage", "IS", 0, 1, + TServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNS_Release(), this.getTNSRelease(), "release", "1", 0, 1, TServiceNS.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNS_Revision(), this.getTNSRevision(), "revision", "A", 0, 1, TServiceNS.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNS_UmlDate(), theXMLTypePackage.getDateTime(), "umlDate", null, 0, 1, + TServiceNS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNS_UmlVersion(), this.getTUMLVersion(), "umlVersion", null, 0, 1, TServiceNS.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTServiceNS_Version(), this.getTNSVersion(), "version", null, 1, 1, TServiceNS.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tServiceNsUsageEClass, TServiceNsUsage.class, "TServiceNsUsage", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTServiceNsUsage_AppliesTo(), this.getAppliesToType(), null, "appliesTo", null, 1, -1, + TServiceNsUsage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNsUsage_Id(), this.getTNSIdentifier(), "id", null, 1, 1, TServiceNsUsage.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTServiceNsUsage_PublicationStage(), this.getTPubStage(), "publicationStage", "IS", 0, 1, + TServiceNsUsage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNsUsage_Release(), this.getTNSRelease(), "release", "1", 0, 1, TServiceNsUsage.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNsUsage_Revision(), this.getTNSRevision(), "revision", "A", 0, 1, + TServiceNsUsage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceNsUsage_Version(), this.getTNSVersion(), "version", null, 1, 1, + TServiceNsUsage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + + initEClass( tServiceParameterEClass, TServiceParameter.class, "TServiceParameter", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTServiceParameter_DefaultValue(), theXMLTypePackage.getNormalizedString(), "defaultValue", + null, 0, 1, TServiceParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceParameter_MaxValue(), theXMLTypePackage.getDecimal(), "maxValue", null, 0, 1, + TServiceParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceParameter_MinValue(), theXMLTypePackage.getDecimal(), "minValue", null, 0, 1, + TServiceParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceParameter_Name(), this.getTAttributeName(), "name", null, 1, 1, + TServiceParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceParameter_Type(), this.getTIec61850Name(), "type", null, 0, 1, + TServiceParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceParameter_TypeKind(), this.getTAttributeTypeKind(), "typeKind", "BASIC", 0, 1, + TServiceParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + + initEClass( tServiceTypeRealizationEClass, TServiceTypeRealization.class, "TServiceTypeRealization", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTServiceTypeRealization_Fc(), this.getTFCAbbreviation(), "fc", null, 1, 1, + TServiceTypeRealization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceTypeRealization_Name(), this.getTAttributeName(), "name", null, 1, 1, + TServiceTypeRealization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceTypeRealization_PresCond(), this.getTPresenceConditionName(), "presCond", "M", 0, 1, + TServiceTypeRealization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceTypeRealization_PresCondArgs(), this.getTPresenceConditionArgument(), "presCondArgs", + null, 0, 1, TServiceTypeRealization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, + !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceTypeRealization_PresCondArgsID(), this.getTDocID(), "presCondArgsID", null, 0, 1, + TServiceTypeRealization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceTypeRealization_Type(), this.getTIec61850Name(), "type", null, 0, 1, + TServiceTypeRealization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTServiceTypeRealization_TypeKind(), this.getTAttributeTypeKind(), "typeKind", "BASIC", 0, 1, + TServiceTypeRealization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tServiceTypeRealizationsEClass, TServiceTypeRealizations.class, "TServiceTypeRealizations", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); + initEReference( getTServiceTypeRealizations_ServiceTypeRealization(), this.getTConstructedAttribute(), null, + "serviceTypeRealization", null, 0, -1, TServiceTypeRealizations.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tSubDataAttributeEClass, TSubDataAttribute.class, "TSubDataAttribute", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTSubDataAttribute_DefaultValue(), theXMLTypePackage.getNormalizedString(), "defaultValue", + null, 0, 1, TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_IsArray(), theXMLTypePackage.getBoolean(), "isArray", "false", 0, 1, + TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_MaxIndexAttribute(), this.getTAttributeName(), "maxIndexAttribute", null, + 0, 1, TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_MaxValue(), theXMLTypePackage.getDecimal(), "maxValue", null, 0, 1, + TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_MinIndex(), theXMLTypePackage.getUnsignedInt(), "minIndex", "0", 0, 1, + TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_MinValue(), theXMLTypePackage.getDecimal(), "minValue", null, 0, 1, + TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_Name(), this.getTAttributeName(), "name", null, 1, 1, + TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_PresCond(), this.getTPresenceConditionName(), "presCond", "M", 0, 1, + TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_PresCondArgs(), this.getTPresenceConditionArgument(), "presCondArgs", null, + 0, 1, TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_PresCondArgsID(), this.getTDocID(), "presCondArgsID", null, 0, 1, + TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_SizeAttribute(), this.getTAttributeName(), "sizeAttribute", null, 0, 1, + TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_Type(), this.getTIec61850Name(), "type", null, 0, 1, + TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataAttribute_TypeKind(), this.getTAttributeTypeKind(), "typeKind", "BASIC", 0, 1, + TSubDataAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + + initEClass( tSubDataObjectEClass, TSubDataObject.class, "TSubDataObject", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTSubDataObject_IsArray(), theXMLTypePackage.getBoolean(), "isArray", "false", 0, 1, + TSubDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataObject_MaxIndexAttribute(), this.getTAttributeName(), "maxIndexAttribute", null, 0, + 1, TSubDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataObject_MinIndex(), theXMLTypePackage.getUnsignedInt(), "minIndex", "0", 0, 1, + TSubDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataObject_Name(), this.getTSubDataObjectName(), "name", null, 1, 1, + TSubDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataObject_PresCond(), this.getTPresenceConditionName(), "presCond", "M", 0, 1, + TSubDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataObject_PresCondArgs(), this.getTPresenceConditionArgument(), "presCondArgs", null, 0, + 1, TSubDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataObject_PresCondArgsID(), this.getTDocID(), "presCondArgsID", null, 0, 1, + TSubDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataObject_SizeAttribute(), this.getTAttributeName(), "sizeAttribute", null, 0, 1, + TSubDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataObject_Type(), this.getTCDCName(), "type", null, 1, 1, TSubDataObject.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + initEAttribute( getTSubDataObject_UnderlyingType(), this.getTIec61850Name(), "underlyingType", null, 0, 1, + TSubDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED ); + initEAttribute( getTSubDataObject_UnderlyingTypeKind(), this.getTDefinedAttributeTypeKind(), + "underlyingTypeKind", null, 0, 1, TSubDataObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + + initEClass( tTitledClassEClass, TTitledClass.class, "TTitledClass", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS ); + initEAttribute( getTTitledClass_TitleID(), this.getTDocID(), "titleID", null, 1, 1, TTitledClass.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED ); + + // Initialize enums and add enum literals + initEEnum( tacsiServicesKindEEnum, TACSIServicesKind.class, "TACSIServicesKind" ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.ASSOCIATE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.ABORT ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.RELEASE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_SERVER_DIRECTORY ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_LOGICAL_DEVICE_DIRECTORY ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_ALL_DATA_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_DATA_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SET_DATA_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_DATA_DIRECTORY ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_DATA_DEFINITION ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_DATA_SET_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SET_DATA_SET_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.CREATE_DATA_SET ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.DELETE_DATA_SET ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_DATA_SET_DIRECTORY ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SELECT_ACTIVE_SG ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SELECT_EDIT_SG ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SET_EDIT_SG_VALUE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.CONFIRM_EDIT_SG_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_EDIT_SG_VALUE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_SGCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.REPORT ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_BRCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SET_BRCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_URCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SET_URCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_LCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SET_LCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.QUERY_LOG_BY_TIME ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.QUERY_LOG_AFTER ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_LOG_STATUS_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SEND_GOOSE_MESSAGE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_GO_CB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SET_GO_CB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_GO_REFERENCE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_GOOSE_ELEMENT_NUMBER ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SEND_MSV_MESSAGE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_MSVCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SET_MSVCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SEND_USV_MESSAGE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_USVCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SET_USVCB_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SELECT ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SELECT_WITH_VALUE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.CANCEL ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.OPERATE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.COMMAND_TERMINATION ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.TIME_ACTIVATED_OPERATE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_FILE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.SET_FILE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.DELETE_FILE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_FILE_ATTRIBUTE_VALUES ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.TIME_SYNCHRONIZATION ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.INTERNAL_CHANGE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_LOGICAL_NODE_DIRECTORY ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_MSV_REFERENCE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_MSV_ELEMENT_NUMBER ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_USV_REFERENCE ); + addEEnumLiteral( tacsiServicesKindEEnum, TACSIServicesKind.GET_USV_ELEMENT_NUMBER ); + + initEEnum( tcbKindEEnum, TCBKind.class, "TCBKind" ); + addEEnumLiteral( tcbKindEEnum, TCBKind.RCB ); + addEEnumLiteral( tcbKindEEnum, TCBKind.LCB ); + addEEnumLiteral( tcbKindEEnum, TCBKind.GO_CB ); + addEEnumLiteral( tcbKindEEnum, TCBKind.SVCB ); + + initEEnum( tDefinedAttributeTypeKindEEnum, TDefinedAttributeTypeKind.class, "TDefinedAttributeTypeKind" ); + addEEnumLiteral( tDefinedAttributeTypeKindEEnum, TDefinedAttributeTypeKind.BASIC ); + addEEnumLiteral( tDefinedAttributeTypeKindEEnum, TDefinedAttributeTypeKind.ENUMERATED ); + addEEnumLiteral( tDefinedAttributeTypeKindEEnum, TDefinedAttributeTypeKind.CONSTRUCTED ); + + initEEnum( tLicenseKindEEnum, TLicenseKind.class, "TLicenseKind" ); + addEEnumLiteral( tLicenseKindEEnum, TLicenseKind.STANDARD ); + addEEnumLiteral( tLicenseKindEEnum, TLicenseKind.PRIVATE ); + addEEnumLiteral( tLicenseKindEEnum, TLicenseKind.NONE ); + + initEEnum( tPubStageEEnum, TPubStage.class, "TPubStage" ); + addEEnumLiteral( tPubStageEEnum, TPubStage.WD ); + addEEnumLiteral( tPubStageEEnum, TPubStage.CD ); + addEEnumLiteral( tPubStageEEnum, TPubStage.CDV ); + addEEnumLiteral( tPubStageEEnum, TPubStage.DTS ); + addEEnumLiteral( tPubStageEEnum, TPubStage.DTR ); + addEEnumLiteral( tPubStageEEnum, TPubStage.FDIS ); + addEEnumLiteral( tPubStageEEnum, TPubStage.TS ); + addEEnumLiteral( tPubStageEEnum, TPubStage.TR ); + addEEnumLiteral( tPubStageEEnum, TPubStage.IS ); + + initEEnum( tUndefinedAttributeTypeKindEEnum, TUndefinedAttributeTypeKind.class, "TUndefinedAttributeTypeKind" ); + addEEnumLiteral( tUndefinedAttributeTypeKindEEnum, TUndefinedAttributeTypeKind.UNDEFINED ); + + // Initialize data types + initEDataType( tAbbreviationNameEDataType, String.class, "TAbbreviationName", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tAbstractLNClassNameEDataType, String.class, "TAbstractLNClassName", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tacsiServicesKindObjectEDataType, TACSIServicesKind.class, "TACSIServicesKindObject", + IS_SERIALIZABLE, IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tAttributeNameEDataType, String.class, "TAttributeName", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tAttributeTypeKindEDataType, Enumerator.class, "TAttributeTypeKind", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tBasicTypeNameEDataType, String.class, "TBasicTypeName", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tcbKindObjectEDataType, TCBKind.class, "TCBKindObject", IS_SERIALIZABLE, + IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tcdcNameEDataType, String.class, "TCDCName", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tDataObjectNameEDataType, String.class, "TDataObjectName", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tDefinedAttributeTypeKindObjectEDataType, TDefinedAttributeTypeKind.class, + "TDefinedAttributeTypeKindObject", IS_SERIALIZABLE, IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tDocIDEDataType, String.class, "TDocID", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tEmptyStringEDataType, String.class, "TEmptyString", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tfcAbbreviationEDataType, String.class, "TFCAbbreviation", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tIec61850NameEDataType, String.class, "TIec61850Name", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tIec61850NameStringEDataType, String.class, "TIec61850NameString", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tissuesTypeEDataType, String.class, "TissuesType", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tLicenseKindObjectEDataType, TLicenseKind.class, "TLicenseKindObject", IS_SERIALIZABLE, + IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tLiteralNameEDataType, String.class, "TLiteralName", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tlnClassNameEDataType, String.class, "TLNClassName", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tnsIdentifierEDataType, String.class, "TNSIdentifier", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tnsReleaseEDataType, short.class, "TNSRelease", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tnsReleaseObjectEDataType, Short.class, "TNSReleaseObject", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tnsRevisionEDataType, String.class, "TNSRevision", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tnsVersionEDataType, int.class, "TNSVersion", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tnsVersionObjectEDataType, Integer.class, "TNSVersionObject", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tPresenceConditionArgumentEDataType, String.class, "TPresenceConditionArgument", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tPresenceConditionNameEDataType, String.class, "TPresenceConditionName", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tPubStageObjectEDataType, TPubStage.class, "TPubStageObject", IS_SERIALIZABLE, + IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tSubDataObjectNameEDataType, String.class, "TSubDataObjectName", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tumlVersionEDataType, String.class, "TUMLVersion", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS ); + initEDataType( tUndefinedAttributeTypeKindObjectEDataType, TUndefinedAttributeTypeKind.class, + "TUndefinedAttributeTypeKindObject", IS_SERIALIZABLE, IS_GENERATED_INSTANCE_CLASS ); + + // Create resource + createResource( eNS_URI ); + + // Create annotations + // http:///org/eclipse/emf/ecore/util/ExtendedMetaData + createExtendedMetaDataAnnotations(); + } + + /** + * Initializes the annotations for <b>http:///org/eclipse/emf/ecore/util/ExtendedMetaData</b>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void createExtendedMetaDataAnnotations() { + String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData"; + addAnnotation( appliesToTypeEClass, source, new String[] { "name", "AppliesTo_._type", "kind", "empty" } ); + addAnnotation( getAppliesToType_Id(), source, new String[] { "kind", "attribute", "name", "id" } ); + addAnnotation( getAppliesToType_PublicationStage(), source, + new String[] { "kind", "attribute", "name", "publicationStage" } ); + addAnnotation( getAppliesToType_Release(), source, new String[] { "kind", "attribute", "name", "release" } ); + addAnnotation( getAppliesToType_Revision(), source, new String[] { "kind", "attribute", "name", "revision" } ); + addAnnotation( getAppliesToType_Version(), source, new String[] { "kind", "attribute", "name", "version" } ); + addAnnotation( dependsOnTypeEClass, source, new String[] { "name", "DependsOn_._type", "kind", "empty" } ); + addAnnotation( getDependsOnType_Id(), source, new String[] { "kind", "attribute", "name", "id" } ); + addAnnotation( getDependsOnType_PublicationStage(), source, + new String[] { "kind", "attribute", "name", "publicationStage" } ); + addAnnotation( getDependsOnType_Release(), source, new String[] { "kind", "attribute", "name", "release" } ); + addAnnotation( getDependsOnType_Revision(), source, new String[] { "kind", "attribute", "name", "revision" } ); + addAnnotation( getDependsOnType_Version(), source, new String[] { "kind", "attribute", "name", "version" } ); + addAnnotation( documentRootEClass, source, new String[] { "name", "", "kind", "mixed" } ); + addAnnotation( getDocumentRoot_Mixed(), source, new String[] { "kind", "elementWildcard", "name", ":mixed" } ); + addAnnotation( getDocumentRoot_XMLNSPrefixMap(), source, + new String[] { "kind", "attribute", "name", "xmlns:prefix" } ); + addAnnotation( getDocumentRoot_XSISchemaLocation(), source, + new String[] { "kind", "attribute", "name", "xsi:schemaLocation" } ); + addAnnotation( getDocumentRoot_ApplicableServiceNS(), source, + new String[] { "kind", "element", "name", "ApplicableServiceNS", "namespace", "##targetNamespace" } ); + addAnnotation( getDocumentRoot_Copyright(), source, + new String[] { "kind", "element", "name", "Copyright", "namespace", "##targetNamespace" } ); + addAnnotation( getDocumentRoot_NS(), source, + new String[] { "kind", "element", "name", "NS", "namespace", "##targetNamespace" } ); + addAnnotation( getDocumentRoot_NSDoc(), source, + new String[] { "kind", "element", "name", "NSDoc", "namespace", "##targetNamespace" } ); + addAnnotation( getDocumentRoot_ServiceNS(), source, + new String[] { "kind", "element", "name", "ServiceNS", "namespace", "##targetNamespace" } ); + addAnnotation( serviceTypeEClass, source, new String[] { "name", "Service_._type", "kind", "empty" } ); + addAnnotation( getServiceType_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( tAbbreviationEClass, source, new String[] { "name", "tAbbreviation", "kind", "empty" } ); + addAnnotation( getTAbbreviation_DescID(), source, new String[] { "kind", "attribute", "name", "descID" } ); + addAnnotation( getTAbbreviation_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( tAbbreviationNameEDataType, source, new String[] { "name", "tAbbreviationName", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#normalizedString" } ); + addAnnotation( tAbbreviationsEClass, source, new String[] { "name", "tAbbreviations", "kind", "elementOnly" } ); + addAnnotation( getTAbbreviations_Abbreviation(), source, + new String[] { "kind", "element", "name", "Abbreviation", "namespace", "##targetNamespace" } ); + addAnnotation( tAbstractLNClassEClass, source, + new String[] { "name", "tAbstractLNClass", "kind", "elementOnly" } ); + addAnnotation( getTAbstractLNClass_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( tAbstractLNClassNameEDataType, source, + new String[] { "name", "tAbstractLNClassName", "baseType", "tIec61850Name" } ); + addAnnotation( tacsiServicesKindEEnum, source, new String[] { "name", "tACSIServicesKind" } ); + addAnnotation( tacsiServicesKindObjectEDataType, source, + new String[] { "name", "tACSIServicesKind:Object", "baseType", "tACSIServicesKind" } ); + addAnnotation( tAnyLNClassEClass, source, new String[] { "name", "tAnyLNClass", "kind", "elementOnly" } ); + addAnnotation( getTAnyLNClass_DataObject(), source, + new String[] { "kind", "element", "name", "DataObject", "namespace", "##targetNamespace" } ); + addAnnotation( getTAnyLNClass_Base(), source, new String[] { "kind", "attribute", "name", "base" } ); + addAnnotation( tApplicableServiceNSEClass, source, + new String[] { "name", "tApplicableServiceNS", "kind", "elementOnly" } ); + addAnnotation( getTApplicableServiceNS_ServiceNsUsage(), source, + new String[] { "kind", "element", "name", "ServiceNsUsage", "namespace", "##targetNamespace" } ); + addAnnotation( getTApplicableServiceNS_Date(), source, new String[] { "kind", "attribute", "name", "date" } ); + addAnnotation( getTApplicableServiceNS_Version(), source, + new String[] { "kind", "attribute", "name", "version" } ); + addAnnotation( tApplicableServicesEClass, source, + new String[] { "name", "tApplicableServices", "kind", "elementOnly" } ); + addAnnotation( getTApplicableServices_Service(), source, + new String[] { "kind", "element", "name", "Service", "namespace", "##targetNamespace" } ); + addAnnotation( getTApplicableServices_DataSetMemberOf(), source, + new String[] { "kind", "element", "name", "DataSetMemberOf", "namespace", "##targetNamespace" } ); + addAnnotation( tAttributeNameEDataType, source, + new String[] { "name", "tAttributeName", "baseType", "tIec61850Name" } ); + addAnnotation( tAttributeTypeKindEDataType, source, new String[] { "name", "tAttributeTypeKind", "memberTypes", + "tDefinedAttributeTypeKind tUndefinedAttributeTypeKind" } ); + addAnnotation( tBasicTypeEClass, source, new String[] { "name", "tBasicType", "kind", "empty" } ); + addAnnotation( getTBasicType_DescID(), source, new String[] { "kind", "attribute", "name", "descID" } ); + addAnnotation( getTBasicType_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( tBasicTypeNameEDataType, source, new String[] { "name", "tBasicTypeName", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#token", "minLength", "1" } ); + addAnnotation( tBasicTypesEClass, source, new String[] { "name", "tBasicTypes", "kind", "elementOnly" } ); + addAnnotation( getTBasicTypes_BasicType(), source, + new String[] { "kind", "element", "name", "BasicType", "namespace", "##targetNamespace" } ); + addAnnotation( tcbKindEEnum, source, new String[] { "name", "tCBKind" } ); + addAnnotation( tcbKindObjectEDataType, source, + new String[] { "name", "tCBKind:Object", "baseType", "tCBKind" } ); + addAnnotation( tcdcEClass, source, new String[] { "name", "tCDC", "kind", "elementOnly" } ); + addAnnotation( getTCDC_SubDataObject(), source, + new String[] { "kind", "element", "name", "SubDataObject", "namespace", "##targetNamespace" } ); + addAnnotation( getTCDC_DataAttribute(), source, + new String[] { "kind", "element", "name", "DataAttribute", "namespace", "##targetNamespace" } ); + addAnnotation( getTCDC_ServiceParameter(), source, + new String[] { "kind", "element", "name", "ServiceParameter", "namespace", "##targetNamespace" } ); + addAnnotation( getTCDC_EnumParameterized(), source, + new String[] { "kind", "attribute", "name", "enumParameterized" } ); + addAnnotation( getTCDC_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( getTCDC_Statistics(), source, new String[] { "kind", "attribute", "name", "statistics" } ); + addAnnotation( getTCDC_TypeKindParameterized(), source, + new String[] { "kind", "attribute", "name", "typeKindParameterized" } ); + addAnnotation( getTCDC_Variant(), source, new String[] { "kind", "attribute", "name", "variant" } ); + addAnnotation( tcdcNameEDataType, source, + new String[] { "name", "tCDCName", "baseType", "tIec61850Name", "minLength", "1" } ); + addAnnotation( tcdCsEClass, source, new String[] { "name", "tCDCs", "kind", "elementOnly" } ); + addAnnotation( getTCDCs_CDC(), source, + new String[] { "kind", "element", "name", "CDC", "namespace", "##targetNamespace" } ); + addAnnotation( tChangesEClass, source, new String[] { "name", "tChanges", "kind", "empty" } ); + addAnnotation( getTChanges_ChangesID(), source, new String[] { "kind", "attribute", "name", "changesID" } ); + addAnnotation( getTChanges_Date(), source, new String[] { "kind", "attribute", "name", "date" } ); + addAnnotation( getTChanges_Release(), source, new String[] { "kind", "attribute", "name", "release" } ); + addAnnotation( getTChanges_Revision(), source, new String[] { "kind", "attribute", "name", "revision" } ); + addAnnotation( getTChanges_Tissues(), source, new String[] { "kind", "attribute", "name", "tissues" } ); + addAnnotation( getTChanges_Version(), source, new String[] { "kind", "attribute", "name", "version" } ); + addAnnotation( tConstructedAttributeEClass, source, + new String[] { "name", "tConstructedAttribute", "kind", "elementOnly" } ); + addAnnotation( getTConstructedAttribute_SubDataAttribute(), source, + new String[] { "kind", "element", "name", "SubDataAttribute", "namespace", "##targetNamespace" } ); + addAnnotation( getTConstructedAttribute_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( tConstructedAttributesEClass, source, + new String[] { "name", "tConstructedAttributes", "kind", "elementOnly" } ); + addAnnotation( getTConstructedAttributes_ConstructedAttribute(), source, + new String[] { "kind", "element", "name", "ConstructedAttribute", "namespace", "##targetNamespace" } ); + addAnnotation( tCopyrightedEClass, source, new String[] { "name", "tCopyrighted", "kind", "elementOnly" } ); + addAnnotation( getTCopyrighted_Copyright(), source, + new String[] { "kind", "element", "name", "Copyright", "namespace", "##targetNamespace" } ); + addAnnotation( tCopyrightNoticeEClass, source, + new String[] { "name", "tCopyrightNotice", "kind", "elementOnly" } ); + addAnnotation( getTCopyrightNotice_Notice(), source, + new String[] { "kind", "element", "name", "Notice", "namespace", "##targetNamespace" } ); + addAnnotation( getTCopyrightNotice_License(), source, + new String[] { "kind", "element", "name", "License", "namespace", "##targetNamespace" } ); + addAnnotation( tDataAttributeEClass, source, new String[] { "name", "tDataAttribute", "kind", "empty" } ); + addAnnotation( getTDataAttribute_Dchg(), source, new String[] { "kind", "attribute", "name", "dchg" } ); + addAnnotation( getTDataAttribute_DefaultValue(), source, + new String[] { "kind", "attribute", "name", "defaultValue" } ); + addAnnotation( getTDataAttribute_Dupd(), source, new String[] { "kind", "attribute", "name", "dupd" } ); + addAnnotation( getTDataAttribute_Fc(), source, new String[] { "kind", "attribute", "name", "fc" } ); + addAnnotation( getTDataAttribute_IsArray(), source, new String[] { "kind", "attribute", "name", "isArray" } ); + addAnnotation( getTDataAttribute_MaxIndexAttribute(), source, + new String[] { "kind", "attribute", "name", "maxIndexAttribute" } ); + addAnnotation( getTDataAttribute_MaxValue(), source, new String[] { "kind", "attribute", "name", "maxValue" } ); + addAnnotation( getTDataAttribute_MinIndex(), source, new String[] { "kind", "attribute", "name", "minIndex" } ); + addAnnotation( getTDataAttribute_MinValue(), source, new String[] { "kind", "attribute", "name", "minValue" } ); + addAnnotation( getTDataAttribute_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( getTDataAttribute_PresCond(), source, new String[] { "kind", "attribute", "name", "presCond" } ); + addAnnotation( getTDataAttribute_PresCondArgs(), source, + new String[] { "kind", "attribute", "name", "presCondArgs" } ); + addAnnotation( getTDataAttribute_PresCondArgsID(), source, + new String[] { "kind", "attribute", "name", "presCondArgsID" } ); + addAnnotation( getTDataAttribute_Qchg(), source, new String[] { "kind", "attribute", "name", "qchg" } ); + addAnnotation( getTDataAttribute_SizeAttribute(), source, + new String[] { "kind", "attribute", "name", "sizeAttribute" } ); + addAnnotation( getTDataAttribute_Type(), source, new String[] { "kind", "attribute", "name", "type" } ); + addAnnotation( getTDataAttribute_TypeKind(), source, new String[] { "kind", "attribute", "name", "typeKind" } ); + addAnnotation( tDataObjectEClass, source, new String[] { "name", "tDataObject", "kind", "empty" } ); + addAnnotation( getTDataObject_DsPresCond(), source, + new String[] { "kind", "attribute", "name", "dsPresCond" } ); + addAnnotation( getTDataObject_DsPresCondArgs(), source, + new String[] { "kind", "attribute", "name", "dsPresCondArgs" } ); + addAnnotation( getTDataObject_DsPresCondArgsID(), source, + new String[] { "kind", "attribute", "name", "dsPresCondArgsID" } ); + addAnnotation( getTDataObject_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( getTDataObject_PresCond(), source, new String[] { "kind", "attribute", "name", "presCond" } ); + addAnnotation( getTDataObject_PresCondArgs(), source, + new String[] { "kind", "attribute", "name", "presCondArgs" } ); + addAnnotation( getTDataObject_PresCondArgsID(), source, + new String[] { "kind", "attribute", "name", "presCondArgsID" } ); + addAnnotation( getTDataObject_Transient(), source, new String[] { "kind", "attribute", "name", "transient" } ); + addAnnotation( getTDataObject_Type(), source, new String[] { "kind", "attribute", "name", "type" } ); + addAnnotation( getTDataObject_UnderlyingType(), source, + new String[] { "kind", "attribute", "name", "underlyingType" } ); + addAnnotation( getTDataObject_UnderlyingTypeKind(), source, + new String[] { "kind", "attribute", "name", "underlyingTypeKind" } ); + addAnnotation( tDataObjectNameEDataType, source, + new String[] { "name", "tDataObjectName", "baseType", "tIec61850Name", "maxLength", "12" } ); + addAnnotation( tDataSetMemberOfEClass, source, new String[] { "name", "tDataSetMemberOf", "kind", "empty" } ); + addAnnotation( getTDataSetMemberOf_Cb(), source, new String[] { "kind", "attribute", "name", "cb" } ); + addAnnotation( tDefinedAttributeTypeKindEEnum, source, new String[] { "name", "tDefinedAttributeTypeKind" } ); + addAnnotation( tDefinedAttributeTypeKindObjectEDataType, source, + new String[] { "name", "tDefinedAttributeTypeKind:Object", "baseType", "tDefinedAttributeTypeKind" } ); + addAnnotation( tDocEClass, source, new String[] { "name", "tDoc", "kind", "mixed" } ); + addAnnotation( getTDoc_Mixed(), source, new String[] { "kind", "elementWildcard", "name", ":mixed" } ); + addAnnotation( getTDoc_Group(), source, new String[] { "kind", "group", "name", "group:1" } ); + addAnnotation( getTDoc_Any(), source, new String[] { "kind", "elementWildcard", "wildcards", "##any", "name", + ":2", "processing", "lax", "group", "#group:1" } ); + addAnnotation( getTDoc_Id(), source, new String[] { "kind", "attribute", "name", "id" } ); + addAnnotation( tDocIDEDataType, source, new String[] { "name", "tDocID", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#normalizedString", "minLength", "1" } ); + addAnnotation( tDocumentedClassEClass, source, new String[] { "name", "tDocumentedClass", "kind", "empty" } ); + addAnnotation( getTDocumentedClass_Deprecated(), source, + new String[] { "kind", "attribute", "name", "deprecated" } ); + addAnnotation( getTDocumentedClass_DescID(), source, new String[] { "kind", "attribute", "name", "descID" } ); + addAnnotation( getTDocumentedClass_Informative(), source, + new String[] { "kind", "attribute", "name", "informative" } ); + addAnnotation( tEmptyStringEDataType, source, new String[] { "name", "tEmptyString", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#normalizedString", "maxLength", "0" } ); + addAnnotation( tEnumerationEClass, source, new String[] { "name", "tEnumeration", "kind", "elementOnly" } ); + addAnnotation( getTEnumeration_Literal(), source, + new String[] { "kind", "element", "name", "Literal", "namespace", "##targetNamespace" } ); + addAnnotation( getTEnumeration_InheritedFrom(), source, + new String[] { "kind", "attribute", "name", "inheritedFrom" } ); + addAnnotation( getTEnumeration_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( tEnumerationsEClass, source, new String[] { "name", "tEnumerations", "kind", "elementOnly" } ); + addAnnotation( getTEnumerations_Enumeration(), source, + new String[] { "kind", "element", "name", "Enumeration", "namespace", "##targetNamespace" } ); + addAnnotation( tfcAbbreviationEDataType, source, + new String[] { "name", "tFCAbbreviation", "baseType", "http://www.eclipse.org/emf/2003/XMLType#token", + "minLength", "1", "pattern", "[\\p{IsBasicLatin}]+" } ); + addAnnotation( tFunctionalConstraintEClass, source, + new String[] { "name", "tFunctionalConstraint", "kind", "elementOnly" } ); + addAnnotation( getTFunctionalConstraint_ApplicableServices(), source, + new String[] { "kind", "element", "name", "ApplicableServices", "namespace", "##targetNamespace" } ); + addAnnotation( getTFunctionalConstraint_Abbreviation(), source, + new String[] { "kind", "attribute", "name", "abbreviation" } ); + addAnnotation( getTFunctionalConstraint_DescID(), source, + new String[] { "kind", "attribute", "name", "descID" } ); + addAnnotation( getTFunctionalConstraint_TitleID(), source, + new String[] { "kind", "attribute", "name", "titleID" } ); + addAnnotation( tFunctionalConstraintsEClass, source, + new String[] { "name", "tFunctionalConstraints", "kind", "elementOnly" } ); + addAnnotation( getTFunctionalConstraints_FunctionalConstraint(), source, + new String[] { "kind", "element", "name", "FunctionalConstraint", "namespace", "##targetNamespace" } ); + addAnnotation( tIec61850NameEDataType, source, + new String[] { "name", "tIec61850Name", "baseType", "http://www.eclipse.org/emf/2003/XMLType#Name", + "minLength", "1", "pattern", "[\\p{IsBasicLatin}\\p{IsLatin-1Supplement}]+" } ); + addAnnotation( tIec61850NameStringEDataType, source, + new String[] { "name", "tIec61850NameString", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#normalizedString", "pattern", + "[\\p{IsBasicLatin}\\p{IsLatin-1Supplement}]+" } ); + addAnnotation( tissuesTypeEDataType, source, new String[] { "name", "tissues_._type", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#normalizedString", "minLength", "1" } ); + addAnnotation( tLicenseEClass, source, new String[] { "name", "tLicense", "kind", "mixed" } ); + addAnnotation( getTLicense_Mixed(), source, new String[] { "kind", "elementWildcard", "name", ":mixed" } ); + addAnnotation( getTLicense_Kind(), source, new String[] { "kind", "attribute", "name", "kind" } ); + addAnnotation( getTLicense_Uri(), source, new String[] { "kind", "attribute", "name", "uri" } ); + addAnnotation( tLicenseKindEEnum, source, new String[] { "name", "tLicenseKind" } ); + addAnnotation( tLicenseKindObjectEDataType, source, + new String[] { "name", "tLicenseKind:Object", "baseType", "tLicenseKind" } ); + addAnnotation( tLiteralEClass, source, new String[] { "name", "tLiteral", "kind", "empty" } ); + addAnnotation( getTLiteral_LiteralVal(), source, new String[] { "kind", "attribute", "name", "literalVal" } ); + addAnnotation( getTLiteral_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( tLiteralNameEDataType, source, + new String[] { "name", "tLiteralName", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#normalizedString", "maxLength", "127", "pattern", + "[\\p{IsBasicLatin}\\p{IsLatin-1Supplement}]*" } ); + addAnnotation( tlnClassEClass, source, new String[] { "name", "tLNClass", "kind", "elementOnly" } ); + addAnnotation( getTLNClass_CanHaveLOG(), source, new String[] { "kind", "attribute", "name", "canHaveLOG" } ); + addAnnotation( getTLNClass_IsExtension(), source, new String[] { "kind", "attribute", "name", "isExtension" } ); + addAnnotation( getTLNClass_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( tlnClassesEClass, source, new String[] { "name", "tLNClasses", "kind", "elementOnly" } ); + addAnnotation( getTLNClasses_AbstractLNClass(), source, + new String[] { "kind", "element", "name", "AbstractLNClass", "namespace", "##targetNamespace" } ); + addAnnotation( getTLNClasses_LNClass(), source, + new String[] { "kind", "element", "name", "LNClass", "namespace", "##targetNamespace" } ); + addAnnotation( tlnClassNameEDataType, source, new String[] { "name", "tLNClassName", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#Name", "pattern", "LLN0 [A-Z]{4}" } ); + addAnnotation( tNoticeEClass, source, new String[] { "name", "tNotice", "kind", "mixed" } ); + addAnnotation( getTNotice_Mixed(), source, new String[] { "kind", "elementWildcard", "name", ":mixed" } ); + addAnnotation( tnsEClass, source, new String[] { "name", "tNS", "kind", "elementOnly" } ); + addAnnotation( getTNS_Changes(), source, + new String[] { "kind", "element", "name", "Changes", "namespace", "##targetNamespace" } ); + addAnnotation( getTNS_DependsOn(), source, + new String[] { "kind", "element", "name", "DependsOn", "namespace", "##targetNamespace" } ); + addAnnotation( getTNS_BasicTypes(), source, + new String[] { "kind", "element", "name", "BasicTypes", "namespace", "##targetNamespace" } ); + addAnnotation( getTNS_FunctionalConstraints(), source, + new String[] { "kind", "element", "name", "FunctionalConstraints", "namespace", "##targetNamespace" } ); + addAnnotation( getTNS_PresenceConditions(), source, + new String[] { "kind", "element", "name", "PresenceConditions", "namespace", "##targetNamespace" } ); + addAnnotation( getTNS_Abbreviations(), source, + new String[] { "kind", "element", "name", "Abbreviations", "namespace", "##targetNamespace" } ); + addAnnotation( getTNS_Enumerations(), source, + new String[] { "kind", "element", "name", "Enumerations", "namespace", "##targetNamespace" } ); + addAnnotation( getTNS_ConstructedAttributes(), source, + new String[] { "kind", "element", "name", "ConstructedAttributes", "namespace", "##targetNamespace" } ); + addAnnotation( getTNS_CDCs(), source, + new String[] { "kind", "element", "name", "CDCs", "namespace", "##targetNamespace" } ); + addAnnotation( getTNS_LNClasses(), source, + new String[] { "kind", "element", "name", "LNClasses", "namespace", "##targetNamespace" } ); + addAnnotation( getTNS_DescID(), source, new String[] { "kind", "attribute", "name", "descID" } ); + addAnnotation( getTNS_Id(), source, new String[] { "kind", "attribute", "name", "id" } ); + addAnnotation( getTNS_PublicationStage(), source, + new String[] { "kind", "attribute", "name", "publicationStage" } ); + addAnnotation( getTNS_Release(), source, new String[] { "kind", "attribute", "name", "release" } ); + addAnnotation( getTNS_Revision(), source, new String[] { "kind", "attribute", "name", "revision" } ); + addAnnotation( getTNS_UmlDate(), source, new String[] { "kind", "attribute", "name", "umlDate" } ); + addAnnotation( getTNS_UmlVersion(), source, new String[] { "kind", "attribute", "name", "umlVersion" } ); + addAnnotation( getTNS_Version(), source, new String[] { "kind", "attribute", "name", "version" } ); + addAnnotation( tnsDocEClass, source, new String[] { "name", "tNSDoc", "kind", "elementOnly" } ); + addAnnotation( getTNSDoc_Doc(), source, + new String[] { "kind", "element", "name", "Doc", "namespace", "##targetNamespace" } ); + addAnnotation( getTNSDoc_Id(), source, new String[] { "kind", "attribute", "name", "id" } ); + addAnnotation( getTNSDoc_Lang(), source, new String[] { "kind", "attribute", "name", "lang" } ); + addAnnotation( getTNSDoc_PublicationStage(), source, + new String[] { "kind", "attribute", "name", "publicationStage" } ); + addAnnotation( getTNSDoc_Release(), source, new String[] { "kind", "attribute", "name", "release" } ); + addAnnotation( getTNSDoc_Revision(), source, new String[] { "kind", "attribute", "name", "revision" } ); + addAnnotation( getTNSDoc_UmlDate(), source, new String[] { "kind", "attribute", "name", "umlDate" } ); + addAnnotation( getTNSDoc_UmlVersion(), source, new String[] { "kind", "attribute", "name", "umlVersion" } ); + addAnnotation( getTNSDoc_Version(), source, new String[] { "kind", "attribute", "name", "version" } ); + addAnnotation( tnsIdentifierEDataType, source, new String[] { "name", "tNSIdentifier", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#normalizedString", "pattern", "\\p{IsBasicLatin}+" } ); + addAnnotation( tnsReleaseEDataType, source, new String[] { "name", "tNSRelease", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#unsignedByte", "minExclusive", "0" } ); + addAnnotation( tnsReleaseObjectEDataType, source, + new String[] { "name", "tNSRelease:Object", "baseType", "tNSRelease" } ); + addAnnotation( tnsRevisionEDataType, source, new String[] { "name", "tNSRevision", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#token", "pattern", "[A-Z]" } ); + addAnnotation( tnsVersionEDataType, source, + new String[] { "name", "tNSVersion", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#unsignedShort", "minInclusive", "2002", "maxInclusive", + "2099" } ); + addAnnotation( tnsVersionObjectEDataType, source, + new String[] { "name", "tNSVersion:Object", "baseType", "tNSVersion" } ); + addAnnotation( tPresenceConditionEClass, source, + new String[] { "name", "tPresenceCondition", "kind", "empty" } ); + addAnnotation( getTPresenceCondition_Argument(), source, + new String[] { "kind", "attribute", "name", "argument" } ); + addAnnotation( getTPresenceCondition_DescID(), source, new String[] { "kind", "attribute", "name", "descID" } ); + addAnnotation( getTPresenceCondition_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( getTPresenceCondition_TitleID(), source, + new String[] { "kind", "attribute", "name", "titleID" } ); + addAnnotation( tPresenceConditionArgumentEDataType, source, new String[] { "name", "tPresenceConditionArgument", + "baseType", "http://www.eclipse.org/emf/2003/XMLType#normalizedString" } ); + addAnnotation( tPresenceConditionNameEDataType, source, new String[] { "name", "tPresenceConditionName", + "baseType", "http://www.eclipse.org/emf/2003/XMLType#normalizedString" } ); + addAnnotation( tPresenceConditionsEClass, source, + new String[] { "name", "tPresenceConditions", "kind", "elementOnly" } ); + addAnnotation( getTPresenceConditions_PresenceCondition(), source, + new String[] { "kind", "element", "name", "PresenceCondition", "namespace", "##targetNamespace" } ); + addAnnotation( tPubStageEEnum, source, new String[] { "name", "tPubStage" } ); + addAnnotation( tPubStageObjectEDataType, source, + new String[] { "name", "tPubStage:Object", "baseType", "tPubStage" } ); + addAnnotation( tServiceCDCEClass, source, new String[] { "name", "tServiceCDC", "kind", "elementOnly" } ); + addAnnotation( getTServiceCDC_ServiceDataAttribute(), source, + new String[] { "kind", "element", "name", "ServiceDataAttribute", "namespace", "##targetNamespace" } ); + addAnnotation( getTServiceCDC_Cdc(), source, new String[] { "kind", "attribute", "name", "cdc" } ); + addAnnotation( getTServiceCDC_Variant(), source, new String[] { "kind", "attribute", "name", "variant" } ); + addAnnotation( tServiceCDCsEClass, source, new String[] { "name", "tServiceCDCs", "kind", "elementOnly" } ); + addAnnotation( getTServiceCDCs_ServiceCDC(), source, + new String[] { "kind", "element", "name", "ServiceCDC", "namespace", "##targetNamespace" } ); + addAnnotation( tServiceConstructedAttributeEClass, source, + new String[] { "name", "tServiceConstructedAttribute", "kind", "elementOnly" } ); + addAnnotation( getTServiceConstructedAttribute_TypeKindParameterized(), source, + new String[] { "kind", "attribute", "name", "typeKindParameterized" } ); + addAnnotation( tServiceConstructedAttributesEClass, source, + new String[] { "name", "tServiceConstructedAttributes", "kind", "elementOnly" } ); + addAnnotation( getTServiceConstructedAttributes_ServiceConstructedAttribute(), source, new String[] { "kind", + "element", "name", "ServiceConstructedAttribute", "namespace", "##targetNamespace" } ); + addAnnotation( tServiceDataAttributeEClass, source, + new String[] { "name", "tServiceDataAttribute", "kind", "empty" } ); + addAnnotation( getTServiceDataAttribute_Fc(), source, new String[] { "kind", "attribute", "name", "fc" } ); + addAnnotation( getTServiceDataAttribute_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( getTServiceDataAttribute_PresCond(), source, + new String[] { "kind", "attribute", "name", "presCond" } ); + addAnnotation( getTServiceDataAttribute_PresCondArgs(), source, + new String[] { "kind", "attribute", "name", "presCondArgs" } ); + addAnnotation( getTServiceDataAttribute_PresCondArgsID(), source, + new String[] { "kind", "attribute", "name", "presCondArgsID" } ); + addAnnotation( getTServiceDataAttribute_Type(), source, new String[] { "kind", "attribute", "name", "type" } ); + addAnnotation( getTServiceDataAttribute_TypeKind(), source, + new String[] { "kind", "attribute", "name", "typeKind" } ); + addAnnotation( getTServiceDataAttribute_UnderlyingType(), source, + new String[] { "kind", "attribute", "name", "underlyingType" } ); + addAnnotation( getTServiceDataAttribute_UnderlyingTypeKind(), source, + new String[] { "kind", "attribute", "name", "underlyingTypeKind" } ); + addAnnotation( tServiceNSEClass, source, new String[] { "name", "tServiceNS", "kind", "elementOnly" } ); + addAnnotation( getTServiceNS_Changes(), source, + new String[] { "kind", "element", "name", "Changes", "namespace", "##targetNamespace" } ); + addAnnotation( getTServiceNS_FunctionalConstraints(), source, + new String[] { "kind", "element", "name", "FunctionalConstraints", "namespace", "##targetNamespace" } ); + addAnnotation( getTServiceNS_PresenceConditions(), source, + new String[] { "kind", "element", "name", "PresenceConditions", "namespace", "##targetNamespace" } ); + addAnnotation( getTServiceNS_Abbreviations(), source, + new String[] { "kind", "element", "name", "Abbreviations", "namespace", "##targetNamespace" } ); + addAnnotation( getTServiceNS_ServiceTypeRealizations(), source, new String[] { "kind", "element", "name", + "ServiceTypeRealizations", "namespace", "##targetNamespace" } ); + addAnnotation( getTServiceNS_ServiceConstructedAttributes(), source, new String[] { "kind", "element", "name", + "ServiceConstructedAttributes", "namespace", "##targetNamespace" } ); + addAnnotation( getTServiceNS_ServiceCDCs(), source, + new String[] { "kind", "element", "name", "ServiceCDCs", "namespace", "##targetNamespace" } ); + addAnnotation( getTServiceNS_DescID(), source, new String[] { "kind", "attribute", "name", "descID" } ); + addAnnotation( getTServiceNS_Id(), source, new String[] { "kind", "attribute", "name", "id" } ); + addAnnotation( getTServiceNS_PublicationStage(), source, + new String[] { "kind", "attribute", "name", "publicationStage" } ); + addAnnotation( getTServiceNS_Release(), source, new String[] { "kind", "attribute", "name", "release" } ); + addAnnotation( getTServiceNS_Revision(), source, new String[] { "kind", "attribute", "name", "revision" } ); + addAnnotation( getTServiceNS_UmlDate(), source, new String[] { "kind", "attribute", "name", "umlDate" } ); + addAnnotation( getTServiceNS_UmlVersion(), source, new String[] { "kind", "attribute", "name", "umlVersion" } ); + addAnnotation( getTServiceNS_Version(), source, new String[] { "kind", "attribute", "name", "version" } ); + addAnnotation( tServiceNsUsageEClass, source, + new String[] { "name", "tServiceNsUsage", "kind", "elementOnly" } ); + addAnnotation( getTServiceNsUsage_AppliesTo(), source, + new String[] { "kind", "element", "name", "AppliesTo", "namespace", "##targetNamespace" } ); + addAnnotation( getTServiceNsUsage_Id(), source, new String[] { "kind", "attribute", "name", "id" } ); + addAnnotation( getTServiceNsUsage_PublicationStage(), source, + new String[] { "kind", "attribute", "name", "publicationStage" } ); + addAnnotation( getTServiceNsUsage_Release(), source, new String[] { "kind", "attribute", "name", "release" } ); + addAnnotation( getTServiceNsUsage_Revision(), source, + new String[] { "kind", "attribute", "name", "revision" } ); + addAnnotation( getTServiceNsUsage_Version(), source, new String[] { "kind", "attribute", "name", "version" } ); + addAnnotation( tServiceParameterEClass, source, new String[] { "name", "tServiceParameter", "kind", "empty" } ); + addAnnotation( getTServiceParameter_DefaultValue(), source, + new String[] { "kind", "attribute", "name", "defaultValue" } ); + addAnnotation( getTServiceParameter_MaxValue(), source, + new String[] { "kind", "attribute", "name", "maxValue" } ); + addAnnotation( getTServiceParameter_MinValue(), source, + new String[] { "kind", "attribute", "name", "minValue" } ); + addAnnotation( getTServiceParameter_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( getTServiceParameter_Type(), source, new String[] { "kind", "attribute", "name", "type" } ); + addAnnotation( getTServiceParameter_TypeKind(), source, + new String[] { "kind", "attribute", "name", "typeKind" } ); + addAnnotation( tServiceTypeRealizationEClass, source, + new String[] { "name", "tServiceTypeRealization", "kind", "empty" } ); + addAnnotation( getTServiceTypeRealization_Fc(), source, new String[] { "kind", "attribute", "name", "fc" } ); + addAnnotation( getTServiceTypeRealization_Name(), source, + new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( getTServiceTypeRealization_PresCond(), source, + new String[] { "kind", "attribute", "name", "presCond" } ); + addAnnotation( getTServiceTypeRealization_PresCondArgs(), source, + new String[] { "kind", "attribute", "name", "presCondArgs" } ); + addAnnotation( getTServiceTypeRealization_PresCondArgsID(), source, + new String[] { "kind", "attribute", "name", "presCondArgsID" } ); + addAnnotation( getTServiceTypeRealization_Type(), source, + new String[] { "kind", "attribute", "name", "type" } ); + addAnnotation( getTServiceTypeRealization_TypeKind(), source, + new String[] { "kind", "attribute", "name", "typeKind" } ); + addAnnotation( tServiceTypeRealizationsEClass, source, + new String[] { "name", "tServiceTypeRealizations", "kind", "elementOnly" } ); + addAnnotation( getTServiceTypeRealizations_ServiceTypeRealization(), source, new String[] { "kind", "element", + "name", "ServiceTypeRealization", "namespace", "##targetNamespace" } ); + addAnnotation( tSubDataAttributeEClass, source, new String[] { "name", "tSubDataAttribute", "kind", "empty" } ); + addAnnotation( getTSubDataAttribute_DefaultValue(), source, + new String[] { "kind", "attribute", "name", "defaultValue" } ); + addAnnotation( getTSubDataAttribute_IsArray(), source, + new String[] { "kind", "attribute", "name", "isArray" } ); + addAnnotation( getTSubDataAttribute_MaxIndexAttribute(), source, + new String[] { "kind", "attribute", "name", "maxIndexAttribute" } ); + addAnnotation( getTSubDataAttribute_MaxValue(), source, + new String[] { "kind", "attribute", "name", "maxValue" } ); + addAnnotation( getTSubDataAttribute_MinIndex(), source, + new String[] { "kind", "attribute", "name", "minIndex" } ); + addAnnotation( getTSubDataAttribute_MinValue(), source, + new String[] { "kind", "attribute", "name", "minValue" } ); + addAnnotation( getTSubDataAttribute_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( getTSubDataAttribute_PresCond(), source, + new String[] { "kind", "attribute", "name", "presCond" } ); + addAnnotation( getTSubDataAttribute_PresCondArgs(), source, + new String[] { "kind", "attribute", "name", "presCondArgs" } ); + addAnnotation( getTSubDataAttribute_PresCondArgsID(), source, + new String[] { "kind", "attribute", "name", "presCondArgsID" } ); + addAnnotation( getTSubDataAttribute_SizeAttribute(), source, + new String[] { "kind", "attribute", "name", "sizeAttribute" } ); + addAnnotation( getTSubDataAttribute_Type(), source, new String[] { "kind", "attribute", "name", "type" } ); + addAnnotation( getTSubDataAttribute_TypeKind(), source, + new String[] { "kind", "attribute", "name", "typeKind" } ); + addAnnotation( tSubDataObjectEClass, source, new String[] { "name", "tSubDataObject", "kind", "empty" } ); + addAnnotation( getTSubDataObject_IsArray(), source, new String[] { "kind", "attribute", "name", "isArray" } ); + addAnnotation( getTSubDataObject_MaxIndexAttribute(), source, + new String[] { "kind", "attribute", "name", "maxIndexAttribute" } ); + addAnnotation( getTSubDataObject_MinIndex(), source, new String[] { "kind", "attribute", "name", "minIndex" } ); + addAnnotation( getTSubDataObject_Name(), source, new String[] { "kind", "attribute", "name", "name" } ); + addAnnotation( getTSubDataObject_PresCond(), source, new String[] { "kind", "attribute", "name", "presCond" } ); + addAnnotation( getTSubDataObject_PresCondArgs(), source, + new String[] { "kind", "attribute", "name", "presCondArgs" } ); + addAnnotation( getTSubDataObject_PresCondArgsID(), source, + new String[] { "kind", "attribute", "name", "presCondArgsID" } ); + addAnnotation( getTSubDataObject_SizeAttribute(), source, + new String[] { "kind", "attribute", "name", "sizeAttribute" } ); + addAnnotation( getTSubDataObject_Type(), source, new String[] { "kind", "attribute", "name", "type" } ); + addAnnotation( getTSubDataObject_UnderlyingType(), source, + new String[] { "kind", "attribute", "name", "underlyingType" } ); + addAnnotation( getTSubDataObject_UnderlyingTypeKind(), source, + new String[] { "kind", "attribute", "name", "underlyingTypeKind" } ); + addAnnotation( tSubDataObjectNameEDataType, source, + new String[] { "name", "tSubDataObjectName", "baseType", "tIec61850Name" } ); + addAnnotation( tTitledClassEClass, source, new String[] { "name", "tTitledClass", "kind", "empty" } ); + addAnnotation( getTTitledClass_TitleID(), source, new String[] { "kind", "attribute", "name", "titleID" } ); + addAnnotation( tumlVersionEDataType, source, new String[] { "name", "tUMLVersion", "baseType", + "http://www.eclipse.org/emf/2003/XMLType#Name", "minLength", "1" } ); + addAnnotation( tUndefinedAttributeTypeKindEEnum, source, + new String[] { "name", "tUndefinedAttributeTypeKind" } ); + addAnnotation( tUndefinedAttributeTypeKindObjectEDataType, source, new String[] { "name", + "tUndefinedAttributeTypeKind:Object", "baseType", "tUndefinedAttributeTypeKind" } ); + } + +} //NsdPackageImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceTypeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceTypeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..b16abc874fe6b2eaa958a372ee7ac7d6d7a083ba --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceTypeImpl.java @@ -0,0 +1,222 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TACSIServicesKind; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Service Type</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceTypeImpl#getName <em>Name</em>}</li> + * </ul> + * + * @generated + */ +public class ServiceTypeImpl extends MinimalEObjectImpl.Container implements ServiceType { + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final TACSIServicesKind NAME_EDEFAULT = TACSIServicesKind.ASSOCIATE; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected TACSIServicesKind name = NAME_EDEFAULT; + + /** + * This is true if the Name attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean nameESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ServiceTypeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.SERVICE_TYPE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TACSIServicesKind getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( TACSIServicesKind newName ) { + TACSIServicesKind oldName = name; + name = newName == null ? NAME_EDEFAULT : newName; + boolean oldNameESet = nameESet; + nameESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.SERVICE_TYPE__NAME, oldName, name, !oldNameESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetName() { + TACSIServicesKind oldName = name; + boolean oldNameESet = nameESet; + name = NAME_EDEFAULT; + nameESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.SERVICE_TYPE__NAME, oldName, NAME_EDEFAULT, oldNameESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetName() { + return nameESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.SERVICE_TYPE__NAME: + return getName(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.SERVICE_TYPE__NAME: + setName( ( TACSIServicesKind ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.SERVICE_TYPE__NAME: + unsetName(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.SERVICE_TYPE__NAME: + return isSetName(); + } + return super.eIsSet( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if( eIsProxy() ) return super.toString(); + + StringBuilder result = new StringBuilder( super.toString() ); + result.append( " (name: " ); + if( nameESet ) + result.append( name ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //ServiceTypeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAbbreviationImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAbbreviationImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..5918e7f96d17cc00377498c8f942f2869e755be3 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAbbreviationImpl.java @@ -0,0 +1,238 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TAbbreviation</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationImpl#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationImpl#getName <em>Name</em>}</li> + * </ul> + * + * @generated + */ +public class TAbbreviationImpl extends MinimalEObjectImpl.Container implements TAbbreviation { + /** + * The default value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected static final String DESC_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected String descID = DESC_ID_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TAbbreviationImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TABBREVIATION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDescID() { + return descID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDescID( String newDescID ) { + String oldDescID = descID; + descID = newDescID; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TABBREVIATION__DESC_ID, oldDescID, descID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TABBREVIATION__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TABBREVIATION__DESC_ID: + return getDescID(); + case NsdPackage.TABBREVIATION__NAME: + return getName(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TABBREVIATION__DESC_ID: + setDescID( ( String ) newValue ); + return; + case NsdPackage.TABBREVIATION__NAME: + setName( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TABBREVIATION__DESC_ID: + setDescID( DESC_ID_EDEFAULT ); + return; + case NsdPackage.TABBREVIATION__NAME: + setName( NAME_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TABBREVIATION__DESC_ID: + return DESC_ID_EDEFAULT == null ? descID != null : !DESC_ID_EDEFAULT.equals( descID ); + case NsdPackage.TABBREVIATION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + } + 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( " (descID: " ); + result.append( descID ); + result.append( ", name: " ); + result.append( name ); + result.append( ')' ); + return result.toString(); + } + +} //TAbbreviationImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAbbreviationsImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAbbreviationsImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..d61cb7753f4de08a700642c41f55d766f2624a34 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAbbreviationsImpl.java @@ -0,0 +1,171 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TAbbreviations</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbbreviationsImpl#getAbbreviation <em>Abbreviation</em>}</li> + * </ul> + * + * @generated + */ +public class TAbbreviationsImpl extends MinimalEObjectImpl.Container implements TAbbreviations { + /** + * The cached value of the '{@link #getAbbreviation() <em>Abbreviation</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAbbreviation() + * @generated + * @ordered + */ + protected EList< TAbbreviation > abbreviation; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TAbbreviationsImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TABBREVIATIONS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TAbbreviation > getAbbreviation() { + if( abbreviation == null ) { + abbreviation = new EObjectContainmentEList< TAbbreviation >( TAbbreviation.class, this, + NsdPackage.TABBREVIATIONS__ABBREVIATION ); + } + return abbreviation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TABBREVIATIONS__ABBREVIATION: + return ( ( InternalEList< ? > ) getAbbreviation() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TABBREVIATIONS__ABBREVIATION: + return getAbbreviation(); + } + 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 NsdPackage.TABBREVIATIONS__ABBREVIATION: + getAbbreviation().clear(); + getAbbreviation().addAll( ( Collection< ? extends TAbbreviation > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TABBREVIATIONS__ABBREVIATION: + getAbbreviation().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TABBREVIATIONS__ABBREVIATION: + return abbreviation != null && !abbreviation.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TAbbreviationsImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAbstractLNClassImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAbstractLNClassImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..742ec4bdc0f8624a5c43c64e4b61276e106622e6 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAbstractLNClassImpl.java @@ -0,0 +1,181 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TAbstract LN Class</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAbstractLNClassImpl#getName <em>Name</em>}</li> + * </ul> + * + * @generated + */ +public class TAbstractLNClassImpl extends TAnyLNClassImpl implements TAbstractLNClass { + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TAbstractLNClassImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TABSTRACT_LN_CLASS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TABSTRACT_LN_CLASS__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TABSTRACT_LN_CLASS__NAME: + return getName(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TABSTRACT_LN_CLASS__NAME: + setName( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TABSTRACT_LN_CLASS__NAME: + setName( NAME_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TABSTRACT_LN_CLASS__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + } + return super.eIsSet( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if( eIsProxy() ) return super.toString(); + + StringBuilder result = new StringBuilder( super.toString() ); + result.append( " (name: " ); + result.append( name ); + result.append( ')' ); + return result.toString(); + } + +} //TAbstractLNClassImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAnyLNClassImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAnyLNClassImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..0c0148ea7a0aa5a2d6db043b1476c72e538ffe1e --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TAnyLNClassImpl.java @@ -0,0 +1,242 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TAny LN Class</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAnyLNClassImpl#getDataObject <em>Data Object</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TAnyLNClassImpl#getBase <em>Base</em>}</li> + * </ul> + * + * @generated + */ +public abstract class TAnyLNClassImpl extends TTitledClassImpl implements TAnyLNClass { + /** + * The cached value of the '{@link #getDataObject() <em>Data Object</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDataObject() + * @generated + * @ordered + */ + protected EList< TDataObject > dataObject; + + /** + * The default value of the '{@link #getBase() <em>Base</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBase() + * @generated + * @ordered + */ + protected static final String BASE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getBase() <em>Base</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBase() + * @generated + * @ordered + */ + protected String base = BASE_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TAnyLNClassImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TANY_LN_CLASS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TDataObject > getDataObject() { + if( dataObject == null ) { + dataObject = new EObjectContainmentEList< TDataObject >( TDataObject.class, this, + NsdPackage.TANY_LN_CLASS__DATA_OBJECT ); + } + return dataObject; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getBase() { + return base; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setBase( String newBase ) { + String oldBase = base; + base = newBase; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TANY_LN_CLASS__BASE, oldBase, base ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TANY_LN_CLASS__DATA_OBJECT: + return ( ( InternalEList< ? > ) getDataObject() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TANY_LN_CLASS__DATA_OBJECT: + return getDataObject(); + case NsdPackage.TANY_LN_CLASS__BASE: + return getBase(); + } + 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 NsdPackage.TANY_LN_CLASS__DATA_OBJECT: + getDataObject().clear(); + getDataObject().addAll( ( Collection< ? extends TDataObject > ) newValue ); + return; + case NsdPackage.TANY_LN_CLASS__BASE: + setBase( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TANY_LN_CLASS__DATA_OBJECT: + getDataObject().clear(); + return; + case NsdPackage.TANY_LN_CLASS__BASE: + setBase( BASE_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TANY_LN_CLASS__DATA_OBJECT: + return dataObject != null && !dataObject.isEmpty(); + case NsdPackage.TANY_LN_CLASS__BASE: + return BASE_EDEFAULT == null ? base != null : !BASE_EDEFAULT.equals( base ); + } + 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( " (base: " ); + result.append( base ); + result.append( ')' ); + return result.toString(); + } + +} //TAnyLNClassImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TApplicableServiceNSImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TApplicableServiceNSImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..c1d3403b2f3a2570b08cee7542c357a0bfbaa7b3 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TApplicableServiceNSImpl.java @@ -0,0 +1,339 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage; + +import java.util.Collection; + +import javax.xml.datatype.XMLGregorianCalendar; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +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.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TApplicable Service NS</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServiceNSImpl#getServiceNsUsage <em>Service Ns Usage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServiceNSImpl#getDate <em>Date</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServiceNSImpl#getVersion <em>Version</em>}</li> + * </ul> + * + * @generated + */ +public class TApplicableServiceNSImpl extends TCopyrightedImpl implements TApplicableServiceNS { + /** + * The cached value of the '{@link #getServiceNsUsage() <em>Service Ns Usage</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getServiceNsUsage() + * @generated + * @ordered + */ + protected EList< TServiceNsUsage > serviceNsUsage; + + /** + * The default value of the '{@link #getDate() <em>Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDate() + * @generated + * @ordered + */ + protected static final XMLGregorianCalendar DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDate() <em>Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDate() + * @generated + * @ordered + */ + protected XMLGregorianCalendar date = DATE_EDEFAULT; + + /** + * The default value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected static final long VERSION_EDEFAULT = 0L; + + /** + * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected long version = VERSION_EDEFAULT; + + /** + * This is true if the Version attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean versionESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TApplicableServiceNSImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TAPPLICABLE_SERVICE_NS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TServiceNsUsage > getServiceNsUsage() { + if( serviceNsUsage == null ) { + serviceNsUsage = new EObjectContainmentEList< TServiceNsUsage >( TServiceNsUsage.class, this, + NsdPackage.TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE ); + } + return serviceNsUsage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public XMLGregorianCalendar getDate() { + return date; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDate( XMLGregorianCalendar newDate ) { + XMLGregorianCalendar oldDate = date; + date = newDate; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TAPPLICABLE_SERVICE_NS__DATE, oldDate, date ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public long getVersion() { + return version; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVersion( long newVersion ) { + long oldVersion = version; + version = newVersion; + boolean oldVersionESet = versionESet; + versionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TAPPLICABLE_SERVICE_NS__VERSION, oldVersion, version, !oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetVersion() { + long oldVersion = version; + boolean oldVersionESet = versionESet; + version = VERSION_EDEFAULT; + versionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TAPPLICABLE_SERVICE_NS__VERSION, oldVersion, VERSION_EDEFAULT, oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetVersion() { + return versionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE: + return ( ( InternalEList< ? > ) getServiceNsUsage() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE: + return getServiceNsUsage(); + case NsdPackage.TAPPLICABLE_SERVICE_NS__DATE: + return getDate(); + case NsdPackage.TAPPLICABLE_SERVICE_NS__VERSION: + return getVersion(); + } + 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 NsdPackage.TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE: + getServiceNsUsage().clear(); + getServiceNsUsage().addAll( ( Collection< ? extends TServiceNsUsage > ) newValue ); + return; + case NsdPackage.TAPPLICABLE_SERVICE_NS__DATE: + setDate( ( XMLGregorianCalendar ) newValue ); + return; + case NsdPackage.TAPPLICABLE_SERVICE_NS__VERSION: + setVersion( ( Long ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE: + getServiceNsUsage().clear(); + return; + case NsdPackage.TAPPLICABLE_SERVICE_NS__DATE: + setDate( DATE_EDEFAULT ); + return; + case NsdPackage.TAPPLICABLE_SERVICE_NS__VERSION: + unsetVersion(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TAPPLICABLE_SERVICE_NS__SERVICE_NS_USAGE: + return serviceNsUsage != null && !serviceNsUsage.isEmpty(); + case NsdPackage.TAPPLICABLE_SERVICE_NS__DATE: + return DATE_EDEFAULT == null ? date != null : !DATE_EDEFAULT.equals( date ); + case NsdPackage.TAPPLICABLE_SERVICE_NS__VERSION: + return isSetVersion(); + } + 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( " (date: " ); + result.append( date ); + result.append( ", version: " ); + if( versionESet ) + result.append( version ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TApplicableServiceNSImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TApplicableServicesImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TApplicableServicesImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..d5dbe7b7c437126ee2b74753fdc551564d99714f --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TApplicableServicesImpl.java @@ -0,0 +1,210 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TApplicable Services</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServicesImpl#getService <em>Service</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TApplicableServicesImpl#getDataSetMemberOf <em>Data Set Member Of</em>}</li> + * </ul> + * + * @generated + */ +public class TApplicableServicesImpl extends MinimalEObjectImpl.Container implements TApplicableServices { + /** + * The cached value of the '{@link #getService() <em>Service</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getService() + * @generated + * @ordered + */ + protected EList< ServiceType > service; + + /** + * The cached value of the '{@link #getDataSetMemberOf() <em>Data Set Member Of</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDataSetMemberOf() + * @generated + * @ordered + */ + protected EList< TDataSetMemberOf > dataSetMemberOf; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TApplicableServicesImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TAPPLICABLE_SERVICES; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< ServiceType > getService() { + if( service == null ) { + service = new EObjectContainmentEList< ServiceType >( ServiceType.class, this, + NsdPackage.TAPPLICABLE_SERVICES__SERVICE ); + } + return service; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TDataSetMemberOf > getDataSetMemberOf() { + if( dataSetMemberOf == null ) { + dataSetMemberOf = new EObjectContainmentEList< TDataSetMemberOf >( TDataSetMemberOf.class, this, + NsdPackage.TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF ); + } + return dataSetMemberOf; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TAPPLICABLE_SERVICES__SERVICE: + return ( ( InternalEList< ? > ) getService() ).basicRemove( otherEnd, msgs ); + case NsdPackage.TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF: + return ( ( InternalEList< ? > ) getDataSetMemberOf() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TAPPLICABLE_SERVICES__SERVICE: + return getService(); + case NsdPackage.TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF: + return getDataSetMemberOf(); + } + 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 NsdPackage.TAPPLICABLE_SERVICES__SERVICE: + getService().clear(); + getService().addAll( ( Collection< ? extends ServiceType > ) newValue ); + return; + case NsdPackage.TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF: + getDataSetMemberOf().clear(); + getDataSetMemberOf().addAll( ( Collection< ? extends TDataSetMemberOf > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TAPPLICABLE_SERVICES__SERVICE: + getService().clear(); + return; + case NsdPackage.TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF: + getDataSetMemberOf().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TAPPLICABLE_SERVICES__SERVICE: + return service != null && !service.isEmpty(); + case NsdPackage.TAPPLICABLE_SERVICES__DATA_SET_MEMBER_OF: + return dataSetMemberOf != null && !dataSetMemberOf.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TApplicableServicesImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TBasicTypeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TBasicTypeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..f6e997cc9a6ea04621fa3612532f604551ba3c6d --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TBasicTypeImpl.java @@ -0,0 +1,238 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TBasic Type</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypeImpl#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypeImpl#getName <em>Name</em>}</li> + * </ul> + * + * @generated + */ +public class TBasicTypeImpl extends MinimalEObjectImpl.Container implements TBasicType { + /** + * The default value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected static final String DESC_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected String descID = DESC_ID_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TBasicTypeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TBASIC_TYPE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDescID() { + return descID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDescID( String newDescID ) { + String oldDescID = descID; + descID = newDescID; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TBASIC_TYPE__DESC_ID, oldDescID, descID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TBASIC_TYPE__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TBASIC_TYPE__DESC_ID: + return getDescID(); + case NsdPackage.TBASIC_TYPE__NAME: + return getName(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TBASIC_TYPE__DESC_ID: + setDescID( ( String ) newValue ); + return; + case NsdPackage.TBASIC_TYPE__NAME: + setName( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TBASIC_TYPE__DESC_ID: + setDescID( DESC_ID_EDEFAULT ); + return; + case NsdPackage.TBASIC_TYPE__NAME: + setName( NAME_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TBASIC_TYPE__DESC_ID: + return DESC_ID_EDEFAULT == null ? descID != null : !DESC_ID_EDEFAULT.equals( descID ); + case NsdPackage.TBASIC_TYPE__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + } + 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( " (descID: " ); + result.append( descID ); + result.append( ", name: " ); + result.append( name ); + result.append( ')' ); + return result.toString(); + } + +} //TBasicTypeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TBasicTypesImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TBasicTypesImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..fd61ebb845927b1fb918909061d82c68b94e3d0e --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TBasicTypesImpl.java @@ -0,0 +1,171 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TBasic Types</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TBasicTypesImpl#getBasicType <em>Basic Type</em>}</li> + * </ul> + * + * @generated + */ +public class TBasicTypesImpl extends MinimalEObjectImpl.Container implements TBasicTypes { + /** + * The cached value of the '{@link #getBasicType() <em>Basic Type</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBasicType() + * @generated + * @ordered + */ + protected EList< TBasicType > basicType; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TBasicTypesImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TBASIC_TYPES; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TBasicType > getBasicType() { + if( basicType == null ) { + basicType = new EObjectContainmentEList< TBasicType >( TBasicType.class, this, + NsdPackage.TBASIC_TYPES__BASIC_TYPE ); + } + return basicType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TBASIC_TYPES__BASIC_TYPE: + return ( ( InternalEList< ? > ) getBasicType() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TBASIC_TYPES__BASIC_TYPE: + return getBasicType(); + } + 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 NsdPackage.TBASIC_TYPES__BASIC_TYPE: + getBasicType().clear(); + getBasicType().addAll( ( Collection< ? extends TBasicType > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TBASIC_TYPES__BASIC_TYPE: + getBasicType().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TBASIC_TYPES__BASIC_TYPE: + return basicType != null && !basicType.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TBasicTypesImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCDCImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCDCImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..090629e1cec51442babf4c74094aedaabe1158b2 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCDCImpl.java @@ -0,0 +1,699 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TCDC</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl#getSubDataObject <em>Sub Data Object</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl#getDataAttribute <em>Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl#getServiceParameter <em>Service Parameter</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl#isEnumParameterized <em>Enum Parameterized</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl#isStatistics <em>Statistics</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl#isTypeKindParameterized <em>Type Kind Parameterized</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCImpl#getVariant <em>Variant</em>}</li> + * </ul> + * + * @generated + */ +public class TCDCImpl extends TTitledClassImpl implements TCDC { + /** + * The cached value of the '{@link #getSubDataObject() <em>Sub Data Object</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSubDataObject() + * @generated + * @ordered + */ + protected EList< TSubDataObject > subDataObject; + + /** + * The cached value of the '{@link #getDataAttribute() <em>Data Attribute</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDataAttribute() + * @generated + * @ordered + */ + protected EList< TDataAttribute > dataAttribute; + + /** + * The cached value of the '{@link #getServiceParameter() <em>Service Parameter</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getServiceParameter() + * @generated + * @ordered + */ + protected TServiceParameter serviceParameter; + + /** + * The default value of the '{@link #isEnumParameterized() <em>Enum Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isEnumParameterized() + * @generated + * @ordered + */ + protected static final boolean ENUM_PARAMETERIZED_EDEFAULT = false; + + /** + * The cached value of the '{@link #isEnumParameterized() <em>Enum Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isEnumParameterized() + * @generated + * @ordered + */ + protected boolean enumParameterized = ENUM_PARAMETERIZED_EDEFAULT; + + /** + * This is true if the Enum Parameterized attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean enumParameterizedESet; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #isStatistics() <em>Statistics</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isStatistics() + * @generated + * @ordered + */ + protected static final boolean STATISTICS_EDEFAULT = false; + + /** + * The cached value of the '{@link #isStatistics() <em>Statistics</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isStatistics() + * @generated + * @ordered + */ + protected boolean statistics = STATISTICS_EDEFAULT; + + /** + * This is true if the Statistics attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean statisticsESet; + + /** + * The default value of the '{@link #isTypeKindParameterized() <em>Type Kind Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isTypeKindParameterized() + * @generated + * @ordered + */ + protected static final boolean TYPE_KIND_PARAMETERIZED_EDEFAULT = false; + + /** + * The cached value of the '{@link #isTypeKindParameterized() <em>Type Kind Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isTypeKindParameterized() + * @generated + * @ordered + */ + protected boolean typeKindParameterized = TYPE_KIND_PARAMETERIZED_EDEFAULT; + + /** + * This is true if the Type Kind Parameterized attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean typeKindParameterizedESet; + + /** + * The default value of the '{@link #getVariant() <em>Variant</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVariant() + * @generated + * @ordered + */ + protected static final String VARIANT_EDEFAULT = null; + + /** + * The cached value of the '{@link #getVariant() <em>Variant</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVariant() + * @generated + * @ordered + */ + protected String variant = VARIANT_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TCDCImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TCDC; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TSubDataObject > getSubDataObject() { + if( subDataObject == null ) { + subDataObject = new EObjectContainmentEList< TSubDataObject >( TSubDataObject.class, this, + NsdPackage.TCDC__SUB_DATA_OBJECT ); + } + return subDataObject; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TDataAttribute > getDataAttribute() { + if( dataAttribute == null ) { + dataAttribute = new EObjectContainmentEList< TDataAttribute >( TDataAttribute.class, this, + NsdPackage.TCDC__DATA_ATTRIBUTE ); + } + return dataAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceParameter getServiceParameter() { + return serviceParameter; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetServiceParameter( TServiceParameter newServiceParameter, NotificationChain msgs ) { + TServiceParameter oldServiceParameter = serviceParameter; + serviceParameter = newServiceParameter; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TCDC__SERVICE_PARAMETER, oldServiceParameter, newServiceParameter ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setServiceParameter( TServiceParameter newServiceParameter ) { + if( newServiceParameter != serviceParameter ) { + NotificationChain msgs = null; + if( serviceParameter != null ) msgs = ( ( InternalEObject ) serviceParameter ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TCDC__SERVICE_PARAMETER, null, msgs ); + if( newServiceParameter != null ) msgs = ( ( InternalEObject ) newServiceParameter ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TCDC__SERVICE_PARAMETER, null, msgs ); + msgs = basicSetServiceParameter( newServiceParameter, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TCDC__SERVICE_PARAMETER, newServiceParameter, newServiceParameter ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isEnumParameterized() { + return enumParameterized; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setEnumParameterized( boolean newEnumParameterized ) { + boolean oldEnumParameterized = enumParameterized; + enumParameterized = newEnumParameterized; + boolean oldEnumParameterizedESet = enumParameterizedESet; + enumParameterizedESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TCDC__ENUM_PARAMETERIZED, + oldEnumParameterized, enumParameterized, !oldEnumParameterizedESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetEnumParameterized() { + boolean oldEnumParameterized = enumParameterized; + boolean oldEnumParameterizedESet = enumParameterizedESet; + enumParameterized = ENUM_PARAMETERIZED_EDEFAULT; + enumParameterizedESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.TCDC__ENUM_PARAMETERIZED, + oldEnumParameterized, ENUM_PARAMETERIZED_EDEFAULT, oldEnumParameterizedESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetEnumParameterized() { + return enumParameterizedESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TCDC__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isStatistics() { + return statistics; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setStatistics( boolean newStatistics ) { + boolean oldStatistics = statistics; + statistics = newStatistics; + boolean oldStatisticsESet = statisticsESet; + statisticsESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TCDC__STATISTICS, oldStatistics, statistics, !oldStatisticsESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetStatistics() { + boolean oldStatistics = statistics; + boolean oldStatisticsESet = statisticsESet; + statistics = STATISTICS_EDEFAULT; + statisticsESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TCDC__STATISTICS, oldStatistics, STATISTICS_EDEFAULT, oldStatisticsESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetStatistics() { + return statisticsESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isTypeKindParameterized() { + return typeKindParameterized; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTypeKindParameterized( boolean newTypeKindParameterized ) { + boolean oldTypeKindParameterized = typeKindParameterized; + typeKindParameterized = newTypeKindParameterized; + boolean oldTypeKindParameterizedESet = typeKindParameterizedESet; + typeKindParameterizedESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TCDC__TYPE_KIND_PARAMETERIZED, + oldTypeKindParameterized, typeKindParameterized, !oldTypeKindParameterizedESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetTypeKindParameterized() { + boolean oldTypeKindParameterized = typeKindParameterized; + boolean oldTypeKindParameterizedESet = typeKindParameterizedESet; + typeKindParameterized = TYPE_KIND_PARAMETERIZED_EDEFAULT; + typeKindParameterizedESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.TCDC__TYPE_KIND_PARAMETERIZED, + oldTypeKindParameterized, TYPE_KIND_PARAMETERIZED_EDEFAULT, oldTypeKindParameterizedESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetTypeKindParameterized() { + return typeKindParameterizedESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getVariant() { + return variant; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVariant( String newVariant ) { + String oldVariant = variant; + variant = newVariant; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TCDC__VARIANT, oldVariant, variant ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TCDC__SUB_DATA_OBJECT: + return ( ( InternalEList< ? > ) getSubDataObject() ).basicRemove( otherEnd, msgs ); + case NsdPackage.TCDC__DATA_ATTRIBUTE: + return ( ( InternalEList< ? > ) getDataAttribute() ).basicRemove( otherEnd, msgs ); + case NsdPackage.TCDC__SERVICE_PARAMETER: + return basicSetServiceParameter( null, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TCDC__SUB_DATA_OBJECT: + return getSubDataObject(); + case NsdPackage.TCDC__DATA_ATTRIBUTE: + return getDataAttribute(); + case NsdPackage.TCDC__SERVICE_PARAMETER: + return getServiceParameter(); + case NsdPackage.TCDC__ENUM_PARAMETERIZED: + return isEnumParameterized(); + case NsdPackage.TCDC__NAME: + return getName(); + case NsdPackage.TCDC__STATISTICS: + return isStatistics(); + case NsdPackage.TCDC__TYPE_KIND_PARAMETERIZED: + return isTypeKindParameterized(); + case NsdPackage.TCDC__VARIANT: + return getVariant(); + } + 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 NsdPackage.TCDC__SUB_DATA_OBJECT: + getSubDataObject().clear(); + getSubDataObject().addAll( ( Collection< ? extends TSubDataObject > ) newValue ); + return; + case NsdPackage.TCDC__DATA_ATTRIBUTE: + getDataAttribute().clear(); + getDataAttribute().addAll( ( Collection< ? extends TDataAttribute > ) newValue ); + return; + case NsdPackage.TCDC__SERVICE_PARAMETER: + setServiceParameter( ( TServiceParameter ) newValue ); + return; + case NsdPackage.TCDC__ENUM_PARAMETERIZED: + setEnumParameterized( ( Boolean ) newValue ); + return; + case NsdPackage.TCDC__NAME: + setName( ( String ) newValue ); + return; + case NsdPackage.TCDC__STATISTICS: + setStatistics( ( Boolean ) newValue ); + return; + case NsdPackage.TCDC__TYPE_KIND_PARAMETERIZED: + setTypeKindParameterized( ( Boolean ) newValue ); + return; + case NsdPackage.TCDC__VARIANT: + setVariant( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TCDC__SUB_DATA_OBJECT: + getSubDataObject().clear(); + return; + case NsdPackage.TCDC__DATA_ATTRIBUTE: + getDataAttribute().clear(); + return; + case NsdPackage.TCDC__SERVICE_PARAMETER: + setServiceParameter( ( TServiceParameter ) null ); + return; + case NsdPackage.TCDC__ENUM_PARAMETERIZED: + unsetEnumParameterized(); + return; + case NsdPackage.TCDC__NAME: + setName( NAME_EDEFAULT ); + return; + case NsdPackage.TCDC__STATISTICS: + unsetStatistics(); + return; + case NsdPackage.TCDC__TYPE_KIND_PARAMETERIZED: + unsetTypeKindParameterized(); + return; + case NsdPackage.TCDC__VARIANT: + setVariant( VARIANT_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TCDC__SUB_DATA_OBJECT: + return subDataObject != null && !subDataObject.isEmpty(); + case NsdPackage.TCDC__DATA_ATTRIBUTE: + return dataAttribute != null && !dataAttribute.isEmpty(); + case NsdPackage.TCDC__SERVICE_PARAMETER: + return serviceParameter != null; + case NsdPackage.TCDC__ENUM_PARAMETERIZED: + return isSetEnumParameterized(); + case NsdPackage.TCDC__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + case NsdPackage.TCDC__STATISTICS: + return isSetStatistics(); + case NsdPackage.TCDC__TYPE_KIND_PARAMETERIZED: + return isSetTypeKindParameterized(); + case NsdPackage.TCDC__VARIANT: + return VARIANT_EDEFAULT == null ? variant != null : !VARIANT_EDEFAULT.equals( variant ); + } + 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( " (enumParameterized: " ); + if( enumParameterizedESet ) + result.append( enumParameterized ); + else + result.append( "<unset>" ); + result.append( ", name: " ); + result.append( name ); + result.append( ", statistics: " ); + if( statisticsESet ) + result.append( statistics ); + else + result.append( "<unset>" ); + result.append( ", typeKindParameterized: " ); + if( typeKindParameterizedESet ) + result.append( typeKindParameterized ); + else + result.append( "<unset>" ); + result.append( ", variant: " ); + result.append( variant ); + result.append( ')' ); + return result.toString(); + } + +} //TCDCImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCDCsImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCDCsImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..54e3c389a5f428cec9980695f8b403f09797e49f --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCDCsImpl.java @@ -0,0 +1,170 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TCD Cs</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCDCsImpl#getCDC <em>CDC</em>}</li> + * </ul> + * + * @generated + */ +public class TCDCsImpl extends MinimalEObjectImpl.Container implements TCDCs { + /** + * The cached value of the '{@link #getCDC() <em>CDC</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCDC() + * @generated + * @ordered + */ + protected EList< TCDC > cDC; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TCDCsImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TCD_CS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TCDC > getCDC() { + if( cDC == null ) { + cDC = new EObjectContainmentEList< TCDC >( TCDC.class, this, NsdPackage.TCD_CS__CDC ); + } + return cDC; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TCD_CS__CDC: + return ( ( InternalEList< ? > ) getCDC() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TCD_CS__CDC: + return getCDC(); + } + 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 NsdPackage.TCD_CS__CDC: + getCDC().clear(); + getCDC().addAll( ( Collection< ? extends TCDC > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TCD_CS__CDC: + getCDC().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TCD_CS__CDC: + return cDC != null && !cDC.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TCDCsImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TChangesImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TChangesImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..765a9a314cfe2402a692d4b43c220029993b5285 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TChangesImpl.java @@ -0,0 +1,581 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges; + +import javax.xml.datatype.XMLGregorianCalendar; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TChanges</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TChangesImpl#getChangesID <em>Changes ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TChangesImpl#getDate <em>Date</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TChangesImpl#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TChangesImpl#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TChangesImpl#getTissues <em>Tissues</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TChangesImpl#getVersion <em>Version</em>}</li> + * </ul> + * + * @generated + */ +public class TChangesImpl extends MinimalEObjectImpl.Container implements TChanges { + /** + * The default value of the '{@link #getChangesID() <em>Changes ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getChangesID() + * @generated + * @ordered + */ + protected static final String CHANGES_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getChangesID() <em>Changes ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getChangesID() + * @generated + * @ordered + */ + protected String changesID = CHANGES_ID_EDEFAULT; + + /** + * The default value of the '{@link #getDate() <em>Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDate() + * @generated + * @ordered + */ + protected static final XMLGregorianCalendar DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDate() <em>Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDate() + * @generated + * @ordered + */ + protected XMLGregorianCalendar date = DATE_EDEFAULT; + + /** + * The default value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected static final short RELEASE_EDEFAULT = 1; + + /** + * The cached value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected short release = RELEASE_EDEFAULT; + + /** + * This is true if the Release attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean releaseESet; + + /** + * The default value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected static final String REVISION_EDEFAULT = "A"; + + /** + * The cached value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected String revision = REVISION_EDEFAULT; + + /** + * This is true if the Revision attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean revisionESet; + + /** + * The default value of the '{@link #getTissues() <em>Tissues</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTissues() + * @generated + * @ordered + */ + protected static final String TISSUES_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTissues() <em>Tissues</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTissues() + * @generated + * @ordered + */ + protected String tissues = TISSUES_EDEFAULT; + + /** + * The default value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected static final int VERSION_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected int version = VERSION_EDEFAULT; + + /** + * This is true if the Version attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean versionESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TChangesImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TCHANGES; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getChangesID() { + return changesID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setChangesID( String newChangesID ) { + String oldChangesID = changesID; + changesID = newChangesID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TCHANGES__CHANGES_ID, oldChangesID, changesID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public XMLGregorianCalendar getDate() { + return date; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDate( XMLGregorianCalendar newDate ) { + XMLGregorianCalendar oldDate = date; + date = newDate; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TCHANGES__DATE, oldDate, date ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public short getRelease() { + return release; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRelease( short newRelease ) { + short oldRelease = release; + release = newRelease; + boolean oldReleaseESet = releaseESet; + releaseESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TCHANGES__RELEASE, oldRelease, release, !oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRelease() { + short oldRelease = release; + boolean oldReleaseESet = releaseESet; + release = RELEASE_EDEFAULT; + releaseESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TCHANGES__RELEASE, oldRelease, RELEASE_EDEFAULT, oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRelease() { + return releaseESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getRevision() { + return revision; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRevision( String newRevision ) { + String oldRevision = revision; + revision = newRevision; + boolean oldRevisionESet = revisionESet; + revisionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TCHANGES__REVISION, oldRevision, revision, !oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRevision() { + String oldRevision = revision; + boolean oldRevisionESet = revisionESet; + revision = REVISION_EDEFAULT; + revisionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TCHANGES__REVISION, oldRevision, REVISION_EDEFAULT, oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRevision() { + return revisionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getTissues() { + return tissues; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTissues( String newTissues ) { + String oldTissues = tissues; + tissues = newTissues; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TCHANGES__TISSUES, oldTissues, tissues ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getVersion() { + return version; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVersion( int newVersion ) { + int oldVersion = version; + version = newVersion; + boolean oldVersionESet = versionESet; + versionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TCHANGES__VERSION, oldVersion, version, !oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetVersion() { + int oldVersion = version; + boolean oldVersionESet = versionESet; + version = VERSION_EDEFAULT; + versionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TCHANGES__VERSION, oldVersion, VERSION_EDEFAULT, oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetVersion() { + return versionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TCHANGES__CHANGES_ID: + return getChangesID(); + case NsdPackage.TCHANGES__DATE: + return getDate(); + case NsdPackage.TCHANGES__RELEASE: + return getRelease(); + case NsdPackage.TCHANGES__REVISION: + return getRevision(); + case NsdPackage.TCHANGES__TISSUES: + return getTissues(); + case NsdPackage.TCHANGES__VERSION: + return getVersion(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TCHANGES__CHANGES_ID: + setChangesID( ( String ) newValue ); + return; + case NsdPackage.TCHANGES__DATE: + setDate( ( XMLGregorianCalendar ) newValue ); + return; + case NsdPackage.TCHANGES__RELEASE: + setRelease( ( Short ) newValue ); + return; + case NsdPackage.TCHANGES__REVISION: + setRevision( ( String ) newValue ); + return; + case NsdPackage.TCHANGES__TISSUES: + setTissues( ( String ) newValue ); + return; + case NsdPackage.TCHANGES__VERSION: + setVersion( ( Integer ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TCHANGES__CHANGES_ID: + setChangesID( CHANGES_ID_EDEFAULT ); + return; + case NsdPackage.TCHANGES__DATE: + setDate( DATE_EDEFAULT ); + return; + case NsdPackage.TCHANGES__RELEASE: + unsetRelease(); + return; + case NsdPackage.TCHANGES__REVISION: + unsetRevision(); + return; + case NsdPackage.TCHANGES__TISSUES: + setTissues( TISSUES_EDEFAULT ); + return; + case NsdPackage.TCHANGES__VERSION: + unsetVersion(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TCHANGES__CHANGES_ID: + return CHANGES_ID_EDEFAULT == null ? changesID != null : !CHANGES_ID_EDEFAULT.equals( changesID ); + case NsdPackage.TCHANGES__DATE: + return DATE_EDEFAULT == null ? date != null : !DATE_EDEFAULT.equals( date ); + case NsdPackage.TCHANGES__RELEASE: + return isSetRelease(); + case NsdPackage.TCHANGES__REVISION: + return isSetRevision(); + case NsdPackage.TCHANGES__TISSUES: + return TISSUES_EDEFAULT == null ? tissues != null : !TISSUES_EDEFAULT.equals( tissues ); + case NsdPackage.TCHANGES__VERSION: + return isSetVersion(); + } + 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( " (changesID: " ); + result.append( changesID ); + result.append( ", date: " ); + result.append( date ); + result.append( ", release: " ); + if( releaseESet ) + result.append( release ); + else + result.append( "<unset>" ); + result.append( ", revision: " ); + if( revisionESet ) + result.append( revision ); + else + result.append( "<unset>" ); + result.append( ", tissues: " ); + result.append( tissues ); + result.append( ", version: " ); + if( versionESet ) + result.append( version ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TChangesImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TConstructedAttributeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TConstructedAttributeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..322e00bb15742b5441049f1089666fbf906c2046 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TConstructedAttributeImpl.java @@ -0,0 +1,242 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TConstructed Attribute</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributeImpl#getSubDataAttribute <em>Sub Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributeImpl#getName <em>Name</em>}</li> + * </ul> + * + * @generated + */ +public class TConstructedAttributeImpl extends TTitledClassImpl implements TConstructedAttribute { + /** + * The cached value of the '{@link #getSubDataAttribute() <em>Sub Data Attribute</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSubDataAttribute() + * @generated + * @ordered + */ + protected EList< TSubDataAttribute > subDataAttribute; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TConstructedAttributeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TCONSTRUCTED_ATTRIBUTE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TSubDataAttribute > getSubDataAttribute() { + if( subDataAttribute == null ) { + subDataAttribute = new EObjectContainmentEList< TSubDataAttribute >( TSubDataAttribute.class, this, + NsdPackage.TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE ); + } + return subDataAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TCONSTRUCTED_ATTRIBUTE__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE: + return ( ( InternalEList< ? > ) getSubDataAttribute() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE: + return getSubDataAttribute(); + case NsdPackage.TCONSTRUCTED_ATTRIBUTE__NAME: + return getName(); + } + 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 NsdPackage.TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE: + getSubDataAttribute().clear(); + getSubDataAttribute().addAll( ( Collection< ? extends TSubDataAttribute > ) newValue ); + return; + case NsdPackage.TCONSTRUCTED_ATTRIBUTE__NAME: + setName( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE: + getSubDataAttribute().clear(); + return; + case NsdPackage.TCONSTRUCTED_ATTRIBUTE__NAME: + setName( NAME_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TCONSTRUCTED_ATTRIBUTE__SUB_DATA_ATTRIBUTE: + return subDataAttribute != null && !subDataAttribute.isEmpty(); + case NsdPackage.TCONSTRUCTED_ATTRIBUTE__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + } + return super.eIsSet( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if( eIsProxy() ) return super.toString(); + + StringBuilder result = new StringBuilder( super.toString() ); + result.append( " (name: " ); + result.append( name ); + result.append( ')' ); + return result.toString(); + } + +} //TConstructedAttributeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TConstructedAttributesImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TConstructedAttributesImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..f2e450f071efe06693e6847be2a273a03739bc3d --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TConstructedAttributesImpl.java @@ -0,0 +1,171 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TConstructed Attributes</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TConstructedAttributesImpl#getConstructedAttribute <em>Constructed Attribute</em>}</li> + * </ul> + * + * @generated + */ +public class TConstructedAttributesImpl extends MinimalEObjectImpl.Container implements TConstructedAttributes { + /** + * The cached value of the '{@link #getConstructedAttribute() <em>Constructed Attribute</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getConstructedAttribute() + * @generated + * @ordered + */ + protected EList< TConstructedAttribute > constructedAttribute; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TConstructedAttributesImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TCONSTRUCTED_ATTRIBUTES; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TConstructedAttribute > getConstructedAttribute() { + if( constructedAttribute == null ) { + constructedAttribute = new EObjectContainmentEList< TConstructedAttribute >( TConstructedAttribute.class, + this, NsdPackage.TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE ); + } + return constructedAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE: + return ( ( InternalEList< ? > ) getConstructedAttribute() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE: + return getConstructedAttribute(); + } + 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 NsdPackage.TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE: + getConstructedAttribute().clear(); + getConstructedAttribute().addAll( ( Collection< ? extends TConstructedAttribute > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE: + getConstructedAttribute().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TCONSTRUCTED_ATTRIBUTES__CONSTRUCTED_ATTRIBUTE: + return constructedAttribute != null && !constructedAttribute.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TConstructedAttributesImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCopyrightNoticeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCopyrightNoticeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..6e42c9a5d26d3063d627226dd95ad78005acf730 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCopyrightNoticeImpl.java @@ -0,0 +1,272 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TCopyright Notice</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightNoticeImpl#getNotice <em>Notice</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightNoticeImpl#getLicense <em>License</em>}</li> + * </ul> + * + * @generated + */ +public class TCopyrightNoticeImpl extends MinimalEObjectImpl.Container implements TCopyrightNotice { + /** + * The cached value of the '{@link #getNotice() <em>Notice</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNotice() + * @generated + * @ordered + */ + protected TNotice notice; + + /** + * The cached value of the '{@link #getLicense() <em>License</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLicense() + * @generated + * @ordered + */ + protected TLicense license; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TCopyrightNoticeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TCOPYRIGHT_NOTICE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TNotice getNotice() { + return notice; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetNotice( TNotice newNotice, NotificationChain msgs ) { + TNotice oldNotice = notice; + notice = newNotice; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TCOPYRIGHT_NOTICE__NOTICE, oldNotice, newNotice ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setNotice( TNotice newNotice ) { + if( newNotice != notice ) { + NotificationChain msgs = null; + if( notice != null ) msgs = ( ( InternalEObject ) notice ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TCOPYRIGHT_NOTICE__NOTICE, null, msgs ); + if( newNotice != null ) msgs = ( ( InternalEObject ) newNotice ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TCOPYRIGHT_NOTICE__NOTICE, null, msgs ); + msgs = basicSetNotice( newNotice, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TCOPYRIGHT_NOTICE__NOTICE, newNotice, newNotice ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TLicense getLicense() { + return license; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetLicense( TLicense newLicense, NotificationChain msgs ) { + TLicense oldLicense = license; + license = newLicense; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TCOPYRIGHT_NOTICE__LICENSE, oldLicense, newLicense ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setLicense( TLicense newLicense ) { + if( newLicense != license ) { + NotificationChain msgs = null; + if( license != null ) msgs = ( ( InternalEObject ) license ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TCOPYRIGHT_NOTICE__LICENSE, null, msgs ); + if( newLicense != null ) msgs = ( ( InternalEObject ) newLicense ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TCOPYRIGHT_NOTICE__LICENSE, null, msgs ); + msgs = basicSetLicense( newLicense, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TCOPYRIGHT_NOTICE__LICENSE, newLicense, newLicense ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TCOPYRIGHT_NOTICE__NOTICE: + return basicSetNotice( null, msgs ); + case NsdPackage.TCOPYRIGHT_NOTICE__LICENSE: + return basicSetLicense( null, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TCOPYRIGHT_NOTICE__NOTICE: + return getNotice(); + case NsdPackage.TCOPYRIGHT_NOTICE__LICENSE: + return getLicense(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TCOPYRIGHT_NOTICE__NOTICE: + setNotice( ( TNotice ) newValue ); + return; + case NsdPackage.TCOPYRIGHT_NOTICE__LICENSE: + setLicense( ( TLicense ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TCOPYRIGHT_NOTICE__NOTICE: + setNotice( ( TNotice ) null ); + return; + case NsdPackage.TCOPYRIGHT_NOTICE__LICENSE: + setLicense( ( TLicense ) null ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TCOPYRIGHT_NOTICE__NOTICE: + return notice != null; + case NsdPackage.TCOPYRIGHT_NOTICE__LICENSE: + return license != null; + } + return super.eIsSet( featureID ); + } + +} //TCopyrightNoticeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCopyrightedImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCopyrightedImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..ff2e8ee46cb8e56ee33e5f959ec51c8fcf670706 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TCopyrightedImpl.java @@ -0,0 +1,199 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TCopyrighted</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TCopyrightedImpl#getCopyright <em>Copyright</em>}</li> + * </ul> + * + * @generated + */ +public class TCopyrightedImpl extends MinimalEObjectImpl.Container implements TCopyrighted { + /** + * The cached value of the '{@link #getCopyright() <em>Copyright</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCopyright() + * @generated + * @ordered + */ + protected TCopyrightNotice copyright; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TCopyrightedImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TCOPYRIGHTED; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TCopyrightNotice getCopyright() { + return copyright; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetCopyright( TCopyrightNotice newCopyright, NotificationChain msgs ) { + TCopyrightNotice oldCopyright = copyright; + copyright = newCopyright; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TCOPYRIGHTED__COPYRIGHT, oldCopyright, newCopyright ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setCopyright( TCopyrightNotice newCopyright ) { + if( newCopyright != copyright ) { + NotificationChain msgs = null; + if( copyright != null ) msgs = ( ( InternalEObject ) copyright ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TCOPYRIGHTED__COPYRIGHT, null, msgs ); + if( newCopyright != null ) msgs = ( ( InternalEObject ) newCopyright ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TCOPYRIGHTED__COPYRIGHT, null, msgs ); + msgs = basicSetCopyright( newCopyright, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TCOPYRIGHTED__COPYRIGHT, newCopyright, newCopyright ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TCOPYRIGHTED__COPYRIGHT: + return basicSetCopyright( null, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TCOPYRIGHTED__COPYRIGHT: + return getCopyright(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TCOPYRIGHTED__COPYRIGHT: + setCopyright( ( TCopyrightNotice ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TCOPYRIGHTED__COPYRIGHT: + setCopyright( ( TCopyrightNotice ) null ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TCOPYRIGHTED__COPYRIGHT: + return copyright != null; + } + return super.eIsSet( featureID ); + } + +} //TCopyrightedImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDataAttributeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDataAttributeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..e7d53be22a5a576d8cbf5df3f7e22b59ed46a162 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDataAttributeImpl.java @@ -0,0 +1,1361 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute; + +import java.math.BigDecimal; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.Enumerator; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TData Attribute</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#isDchg <em>Dchg</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getDefaultValue <em>Default Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#isDupd <em>Dupd</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getFc <em>Fc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#isIsArray <em>Is Array</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getMaxIndexAttribute <em>Max Index Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getMaxValue <em>Max Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getMinIndex <em>Min Index</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getMinValue <em>Min Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#isQchg <em>Qchg</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getSizeAttribute <em>Size Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataAttributeImpl#getTypeKind <em>Type Kind</em>}</li> + * </ul> + * + * @generated + */ +public class TDataAttributeImpl extends TDocumentedClassImpl implements TDataAttribute { + /** + * The default value of the '{@link #isDchg() <em>Dchg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isDchg() + * @generated + * @ordered + */ + protected static final boolean DCHG_EDEFAULT = false; + + /** + * The cached value of the '{@link #isDchg() <em>Dchg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isDchg() + * @generated + * @ordered + */ + protected boolean dchg = DCHG_EDEFAULT; + + /** + * This is true if the Dchg attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean dchgESet; + + /** + * The default value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefaultValue() + * @generated + * @ordered + */ + protected static final String DEFAULT_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefaultValue() + * @generated + * @ordered + */ + protected String defaultValue = DEFAULT_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #isDupd() <em>Dupd</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isDupd() + * @generated + * @ordered + */ + protected static final boolean DUPD_EDEFAULT = false; + + /** + * The cached value of the '{@link #isDupd() <em>Dupd</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isDupd() + * @generated + * @ordered + */ + protected boolean dupd = DUPD_EDEFAULT; + + /** + * This is true if the Dupd attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean dupdESet; + + /** + * The default value of the '{@link #getFc() <em>Fc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFc() + * @generated + * @ordered + */ + protected static final String FC_EDEFAULT = null; + + /** + * The cached value of the '{@link #getFc() <em>Fc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFc() + * @generated + * @ordered + */ + protected String fc = FC_EDEFAULT; + + /** + * The default value of the '{@link #isIsArray() <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isIsArray() + * @generated + * @ordered + */ + protected static final boolean IS_ARRAY_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIsArray() <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isIsArray() + * @generated + * @ordered + */ + protected boolean isArray = IS_ARRAY_EDEFAULT; + + /** + * This is true if the Is Array attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean isArrayESet; + + /** + * The default value of the '{@link #getMaxIndexAttribute() <em>Max Index Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxIndexAttribute() + * @generated + * @ordered + */ + protected static final String MAX_INDEX_ATTRIBUTE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMaxIndexAttribute() <em>Max Index Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxIndexAttribute() + * @generated + * @ordered + */ + protected String maxIndexAttribute = MAX_INDEX_ATTRIBUTE_EDEFAULT; + + /** + * The default value of the '{@link #getMaxValue() <em>Max Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxValue() + * @generated + * @ordered + */ + protected static final BigDecimal MAX_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMaxValue() <em>Max Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxValue() + * @generated + * @ordered + */ + protected BigDecimal maxValue = MAX_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #getMinIndex() <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinIndex() + * @generated + * @ordered + */ + protected static final long MIN_INDEX_EDEFAULT = 0L; + + /** + * The cached value of the '{@link #getMinIndex() <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinIndex() + * @generated + * @ordered + */ + protected long minIndex = MIN_INDEX_EDEFAULT; + + /** + * This is true if the Min Index attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean minIndexESet; + + /** + * The default value of the '{@link #getMinValue() <em>Min Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinValue() + * @generated + * @ordered + */ + protected static final BigDecimal MIN_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMinValue() <em>Min Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinValue() + * @generated + * @ordered + */ + protected BigDecimal minValue = MIN_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected static final String PRES_COND_EDEFAULT = "M"; + + /** + * The cached value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected String presCond = PRES_COND_EDEFAULT; + + /** + * This is true if the Pres Cond attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean presCondESet; + + /** + * The default value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected String presCondArgs = PRES_COND_ARGS_EDEFAULT; + + /** + * The default value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected String presCondArgsID = PRES_COND_ARGS_ID_EDEFAULT; + + /** + * The default value of the '{@link #isQchg() <em>Qchg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isQchg() + * @generated + * @ordered + */ + protected static final boolean QCHG_EDEFAULT = false; + + /** + * The cached value of the '{@link #isQchg() <em>Qchg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isQchg() + * @generated + * @ordered + */ + protected boolean qchg = QCHG_EDEFAULT; + + /** + * This is true if the Qchg attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean qchgESet; + + /** + * The default value of the '{@link #getSizeAttribute() <em>Size Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSizeAttribute() + * @generated + * @ordered + */ + protected static final String SIZE_ATTRIBUTE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSizeAttribute() <em>Size Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSizeAttribute() + * @generated + * @ordered + */ + protected String sizeAttribute = SIZE_ATTRIBUTE_EDEFAULT; + + /** + * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected static final String TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected String type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getTypeKind() <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTypeKind() + * @generated + * @ordered + */ + protected static final Enumerator TYPE_KIND_EDEFAULT = ( Enumerator ) NsdFactory.eINSTANCE + .createFromString( NsdPackage.eINSTANCE.getTAttributeTypeKind(), "BASIC" ); + + /** + * The cached value of the '{@link #getTypeKind() <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTypeKind() + * @generated + * @ordered + */ + protected Enumerator typeKind = TYPE_KIND_EDEFAULT; + + /** + * This is true if the Type Kind attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean typeKindESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TDataAttributeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TDATA_ATTRIBUTE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isDchg() { + return dchg; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDchg( boolean newDchg ) { + boolean oldDchg = dchg; + dchg = newDchg; + boolean oldDchgESet = dchgESet; + dchgESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__DCHG, oldDchg, dchg, !oldDchgESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetDchg() { + boolean oldDchg = dchg; + boolean oldDchgESet = dchgESet; + dchg = DCHG_EDEFAULT; + dchgESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_ATTRIBUTE__DCHG, oldDchg, DCHG_EDEFAULT, oldDchgESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetDchg() { + return dchgESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDefaultValue() { + return defaultValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDefaultValue( String newDefaultValue ) { + String oldDefaultValue = defaultValue; + defaultValue = newDefaultValue; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__DEFAULT_VALUE, oldDefaultValue, defaultValue ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isDupd() { + return dupd; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDupd( boolean newDupd ) { + boolean oldDupd = dupd; + dupd = newDupd; + boolean oldDupdESet = dupdESet; + dupdESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__DUPD, oldDupd, dupd, !oldDupdESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetDupd() { + boolean oldDupd = dupd; + boolean oldDupdESet = dupdESet; + dupd = DUPD_EDEFAULT; + dupdESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_ATTRIBUTE__DUPD, oldDupd, DUPD_EDEFAULT, oldDupdESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetDupd() { + return dupdESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getFc() { + return fc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFc( String newFc ) { + String oldFc = fc; + fc = newFc; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TDATA_ATTRIBUTE__FC, oldFc, fc ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isIsArray() { + return isArray; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setIsArray( boolean newIsArray ) { + boolean oldIsArray = isArray; + isArray = newIsArray; + boolean oldIsArrayESet = isArrayESet; + isArrayESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__IS_ARRAY, oldIsArray, isArray, !oldIsArrayESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetIsArray() { + boolean oldIsArray = isArray; + boolean oldIsArrayESet = isArrayESet; + isArray = IS_ARRAY_EDEFAULT; + isArrayESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_ATTRIBUTE__IS_ARRAY, oldIsArray, IS_ARRAY_EDEFAULT, oldIsArrayESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetIsArray() { + return isArrayESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getMaxIndexAttribute() { + return maxIndexAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMaxIndexAttribute( String newMaxIndexAttribute ) { + String oldMaxIndexAttribute = maxIndexAttribute; + maxIndexAttribute = newMaxIndexAttribute; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE, oldMaxIndexAttribute, maxIndexAttribute ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public BigDecimal getMaxValue() { + return maxValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMaxValue( BigDecimal newMaxValue ) { + BigDecimal oldMaxValue = maxValue; + maxValue = newMaxValue; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__MAX_VALUE, oldMaxValue, maxValue ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public long getMinIndex() { + return minIndex; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMinIndex( long newMinIndex ) { + long oldMinIndex = minIndex; + minIndex = newMinIndex; + boolean oldMinIndexESet = minIndexESet; + minIndexESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__MIN_INDEX, oldMinIndex, minIndex, !oldMinIndexESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetMinIndex() { + long oldMinIndex = minIndex; + boolean oldMinIndexESet = minIndexESet; + minIndex = MIN_INDEX_EDEFAULT; + minIndexESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_ATTRIBUTE__MIN_INDEX, oldMinIndex, MIN_INDEX_EDEFAULT, oldMinIndexESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetMinIndex() { + return minIndexESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public BigDecimal getMinValue() { + return minValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMinValue( BigDecimal newMinValue ) { + BigDecimal oldMinValue = minValue; + minValue = newMinValue; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__MIN_VALUE, oldMinValue, minValue ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TDATA_ATTRIBUTE__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCond() { + return presCond; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCond( String newPresCond ) { + String oldPresCond = presCond; + presCond = newPresCond; + boolean oldPresCondESet = presCondESet; + presCondESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__PRES_COND, oldPresCond, presCond, !oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPresCond() { + String oldPresCond = presCond; + boolean oldPresCondESet = presCondESet; + presCond = PRES_COND_EDEFAULT; + presCondESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_ATTRIBUTE__PRES_COND, oldPresCond, PRES_COND_EDEFAULT, oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPresCond() { + return presCondESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgs() { + return presCondArgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgs( String newPresCondArgs ) { + String oldPresCondArgs = presCondArgs; + presCondArgs = newPresCondArgs; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS, oldPresCondArgs, presCondArgs ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgsID() { + return presCondArgsID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgsID( String newPresCondArgsID ) { + String oldPresCondArgsID = presCondArgsID; + presCondArgsID = newPresCondArgsID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS_ID, oldPresCondArgsID, presCondArgsID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isQchg() { + return qchg; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setQchg( boolean newQchg ) { + boolean oldQchg = qchg; + qchg = newQchg; + boolean oldQchgESet = qchgESet; + qchgESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__QCHG, oldQchg, qchg, !oldQchgESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetQchg() { + boolean oldQchg = qchg; + boolean oldQchgESet = qchgESet; + qchg = QCHG_EDEFAULT; + qchgESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_ATTRIBUTE__QCHG, oldQchg, QCHG_EDEFAULT, oldQchgESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetQchg() { + return qchgESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getSizeAttribute() { + return sizeAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setSizeAttribute( String newSizeAttribute ) { + String oldSizeAttribute = sizeAttribute; + sizeAttribute = newSizeAttribute; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__SIZE_ATTRIBUTE, oldSizeAttribute, sizeAttribute ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getType() { + return type; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setType( String newType ) { + String oldType = type; + type = newType; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TDATA_ATTRIBUTE__TYPE, oldType, type ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Enumerator getTypeKind() { + return typeKind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTypeKind( Enumerator newTypeKind ) { + Enumerator oldTypeKind = typeKind; + typeKind = newTypeKind; + boolean oldTypeKindESet = typeKindESet; + typeKindESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_ATTRIBUTE__TYPE_KIND, oldTypeKind, typeKind, !oldTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetTypeKind() { + Enumerator oldTypeKind = typeKind; + boolean oldTypeKindESet = typeKindESet; + typeKind = TYPE_KIND_EDEFAULT; + typeKindESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_ATTRIBUTE__TYPE_KIND, oldTypeKind, TYPE_KIND_EDEFAULT, oldTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetTypeKind() { + return typeKindESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TDATA_ATTRIBUTE__DCHG: + return isDchg(); + case NsdPackage.TDATA_ATTRIBUTE__DEFAULT_VALUE: + return getDefaultValue(); + case NsdPackage.TDATA_ATTRIBUTE__DUPD: + return isDupd(); + case NsdPackage.TDATA_ATTRIBUTE__FC: + return getFc(); + case NsdPackage.TDATA_ATTRIBUTE__IS_ARRAY: + return isIsArray(); + case NsdPackage.TDATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: + return getMaxIndexAttribute(); + case NsdPackage.TDATA_ATTRIBUTE__MAX_VALUE: + return getMaxValue(); + case NsdPackage.TDATA_ATTRIBUTE__MIN_INDEX: + return getMinIndex(); + case NsdPackage.TDATA_ATTRIBUTE__MIN_VALUE: + return getMinValue(); + case NsdPackage.TDATA_ATTRIBUTE__NAME: + return getName(); + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND: + return getPresCond(); + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS: + return getPresCondArgs(); + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS_ID: + return getPresCondArgsID(); + case NsdPackage.TDATA_ATTRIBUTE__QCHG: + return isQchg(); + case NsdPackage.TDATA_ATTRIBUTE__SIZE_ATTRIBUTE: + return getSizeAttribute(); + case NsdPackage.TDATA_ATTRIBUTE__TYPE: + return getType(); + case NsdPackage.TDATA_ATTRIBUTE__TYPE_KIND: + return getTypeKind(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TDATA_ATTRIBUTE__DCHG: + setDchg( ( Boolean ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__DEFAULT_VALUE: + setDefaultValue( ( String ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__DUPD: + setDupd( ( Boolean ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__FC: + setFc( ( String ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__IS_ARRAY: + setIsArray( ( Boolean ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: + setMaxIndexAttribute( ( String ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__MAX_VALUE: + setMaxValue( ( BigDecimal ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__MIN_INDEX: + setMinIndex( ( Long ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__MIN_VALUE: + setMinValue( ( BigDecimal ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__NAME: + setName( ( String ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND: + setPresCond( ( String ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS: + setPresCondArgs( ( String ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS_ID: + setPresCondArgsID( ( String ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__QCHG: + setQchg( ( Boolean ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__SIZE_ATTRIBUTE: + setSizeAttribute( ( String ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__TYPE: + setType( ( String ) newValue ); + return; + case NsdPackage.TDATA_ATTRIBUTE__TYPE_KIND: + setTypeKind( ( Enumerator ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TDATA_ATTRIBUTE__DCHG: + unsetDchg(); + return; + case NsdPackage.TDATA_ATTRIBUTE__DEFAULT_VALUE: + setDefaultValue( DEFAULT_VALUE_EDEFAULT ); + return; + case NsdPackage.TDATA_ATTRIBUTE__DUPD: + unsetDupd(); + return; + case NsdPackage.TDATA_ATTRIBUTE__FC: + setFc( FC_EDEFAULT ); + return; + case NsdPackage.TDATA_ATTRIBUTE__IS_ARRAY: + unsetIsArray(); + return; + case NsdPackage.TDATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: + setMaxIndexAttribute( MAX_INDEX_ATTRIBUTE_EDEFAULT ); + return; + case NsdPackage.TDATA_ATTRIBUTE__MAX_VALUE: + setMaxValue( MAX_VALUE_EDEFAULT ); + return; + case NsdPackage.TDATA_ATTRIBUTE__MIN_INDEX: + unsetMinIndex(); + return; + case NsdPackage.TDATA_ATTRIBUTE__MIN_VALUE: + setMinValue( MIN_VALUE_EDEFAULT ); + return; + case NsdPackage.TDATA_ATTRIBUTE__NAME: + setName( NAME_EDEFAULT ); + return; + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND: + unsetPresCond(); + return; + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS: + setPresCondArgs( PRES_COND_ARGS_EDEFAULT ); + return; + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS_ID: + setPresCondArgsID( PRES_COND_ARGS_ID_EDEFAULT ); + return; + case NsdPackage.TDATA_ATTRIBUTE__QCHG: + unsetQchg(); + return; + case NsdPackage.TDATA_ATTRIBUTE__SIZE_ATTRIBUTE: + setSizeAttribute( SIZE_ATTRIBUTE_EDEFAULT ); + return; + case NsdPackage.TDATA_ATTRIBUTE__TYPE: + setType( TYPE_EDEFAULT ); + return; + case NsdPackage.TDATA_ATTRIBUTE__TYPE_KIND: + unsetTypeKind(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TDATA_ATTRIBUTE__DCHG: + return isSetDchg(); + case NsdPackage.TDATA_ATTRIBUTE__DEFAULT_VALUE: + return DEFAULT_VALUE_EDEFAULT == null ? defaultValue != null + : !DEFAULT_VALUE_EDEFAULT.equals( defaultValue ); + case NsdPackage.TDATA_ATTRIBUTE__DUPD: + return isSetDupd(); + case NsdPackage.TDATA_ATTRIBUTE__FC: + return FC_EDEFAULT == null ? fc != null : !FC_EDEFAULT.equals( fc ); + case NsdPackage.TDATA_ATTRIBUTE__IS_ARRAY: + return isSetIsArray(); + case NsdPackage.TDATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: + return MAX_INDEX_ATTRIBUTE_EDEFAULT == null ? maxIndexAttribute != null + : !MAX_INDEX_ATTRIBUTE_EDEFAULT.equals( maxIndexAttribute ); + case NsdPackage.TDATA_ATTRIBUTE__MAX_VALUE: + return MAX_VALUE_EDEFAULT == null ? maxValue != null : !MAX_VALUE_EDEFAULT.equals( maxValue ); + case NsdPackage.TDATA_ATTRIBUTE__MIN_INDEX: + return isSetMinIndex(); + case NsdPackage.TDATA_ATTRIBUTE__MIN_VALUE: + return MIN_VALUE_EDEFAULT == null ? minValue != null : !MIN_VALUE_EDEFAULT.equals( minValue ); + case NsdPackage.TDATA_ATTRIBUTE__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND: + return isSetPresCond(); + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS: + return PRES_COND_ARGS_EDEFAULT == null ? presCondArgs != null + : !PRES_COND_ARGS_EDEFAULT.equals( presCondArgs ); + case NsdPackage.TDATA_ATTRIBUTE__PRES_COND_ARGS_ID: + return PRES_COND_ARGS_ID_EDEFAULT == null ? presCondArgsID != null + : !PRES_COND_ARGS_ID_EDEFAULT.equals( presCondArgsID ); + case NsdPackage.TDATA_ATTRIBUTE__QCHG: + return isSetQchg(); + case NsdPackage.TDATA_ATTRIBUTE__SIZE_ATTRIBUTE: + return SIZE_ATTRIBUTE_EDEFAULT == null ? sizeAttribute != null + : !SIZE_ATTRIBUTE_EDEFAULT.equals( sizeAttribute ); + case NsdPackage.TDATA_ATTRIBUTE__TYPE: + return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals( type ); + case NsdPackage.TDATA_ATTRIBUTE__TYPE_KIND: + return isSetTypeKind(); + } + 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( " (dchg: " ); + if( dchgESet ) + result.append( dchg ); + else + result.append( "<unset>" ); + result.append( ", defaultValue: " ); + result.append( defaultValue ); + result.append( ", dupd: " ); + if( dupdESet ) + result.append( dupd ); + else + result.append( "<unset>" ); + result.append( ", fc: " ); + result.append( fc ); + result.append( ", isArray: " ); + if( isArrayESet ) + result.append( isArray ); + else + result.append( "<unset>" ); + result.append( ", maxIndexAttribute: " ); + result.append( maxIndexAttribute ); + result.append( ", maxValue: " ); + result.append( maxValue ); + result.append( ", minIndex: " ); + if( minIndexESet ) + result.append( minIndex ); + else + result.append( "<unset>" ); + result.append( ", minValue: " ); + result.append( minValue ); + result.append( ", name: " ); + result.append( name ); + result.append( ", presCond: " ); + if( presCondESet ) + result.append( presCond ); + else + result.append( "<unset>" ); + result.append( ", presCondArgs: " ); + result.append( presCondArgs ); + result.append( ", presCondArgsID: " ); + result.append( presCondArgsID ); + result.append( ", qchg: " ); + if( qchgESet ) + result.append( qchg ); + else + result.append( "<unset>" ); + result.append( ", sizeAttribute: " ); + result.append( sizeAttribute ); + result.append( ", type: " ); + result.append( type ); + result.append( ", typeKind: " ); + if( typeKindESet ) + result.append( typeKind ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TDataAttributeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDataObjectImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDataObjectImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..002af69add3609201b8c6b0b7e78d86de86e4b5e --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDataObjectImpl.java @@ -0,0 +1,905 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TData Object</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#getDsPresCond <em>Ds Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#getDsPresCondArgs <em>Ds Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#getDsPresCondArgsID <em>Ds Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#isTransient <em>Transient</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#getUnderlyingType <em>Underlying Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataObjectImpl#getUnderlyingTypeKind <em>Underlying Type Kind</em>}</li> + * </ul> + * + * @generated + */ +public class TDataObjectImpl extends TDocumentedClassImpl implements TDataObject { + /** + * The default value of the '{@link #getDsPresCond() <em>Ds Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDsPresCond() + * @generated + * @ordered + */ + protected static final String DS_PRES_COND_EDEFAULT = "M"; + + /** + * The cached value of the '{@link #getDsPresCond() <em>Ds Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDsPresCond() + * @generated + * @ordered + */ + protected String dsPresCond = DS_PRES_COND_EDEFAULT; + + /** + * This is true if the Ds Pres Cond attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean dsPresCondESet; + + /** + * The default value of the '{@link #getDsPresCondArgs() <em>Ds Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDsPresCondArgs() + * @generated + * @ordered + */ + protected static final String DS_PRES_COND_ARGS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDsPresCondArgs() <em>Ds Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDsPresCondArgs() + * @generated + * @ordered + */ + protected String dsPresCondArgs = DS_PRES_COND_ARGS_EDEFAULT; + + /** + * The default value of the '{@link #getDsPresCondArgsID() <em>Ds Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDsPresCondArgsID() + * @generated + * @ordered + */ + protected static final String DS_PRES_COND_ARGS_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDsPresCondArgsID() <em>Ds Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDsPresCondArgsID() + * @generated + * @ordered + */ + protected String dsPresCondArgsID = DS_PRES_COND_ARGS_ID_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected static final String PRES_COND_EDEFAULT = "M"; + + /** + * The cached value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected String presCond = PRES_COND_EDEFAULT; + + /** + * This is true if the Pres Cond attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean presCondESet; + + /** + * The default value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected String presCondArgs = PRES_COND_ARGS_EDEFAULT; + + /** + * The default value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected String presCondArgsID = PRES_COND_ARGS_ID_EDEFAULT; + + /** + * The default value of the '{@link #isTransient() <em>Transient</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isTransient() + * @generated + * @ordered + */ + protected static final boolean TRANSIENT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isTransient() <em>Transient</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isTransient() + * @generated + * @ordered + */ + protected boolean transient_ = TRANSIENT_EDEFAULT; + + /** + * This is true if the Transient attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean transientESet; + + /** + * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected static final String TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected String type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getUnderlyingType() <em>Underlying Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingType() + * @generated + * @ordered + */ + protected static final String UNDERLYING_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUnderlyingType() <em>Underlying Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingType() + * @generated + * @ordered + */ + protected String underlyingType = UNDERLYING_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getUnderlyingTypeKind() <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingTypeKind() + * @generated + * @ordered + */ + protected static final TDefinedAttributeTypeKind UNDERLYING_TYPE_KIND_EDEFAULT = TDefinedAttributeTypeKind.BASIC; + + /** + * The cached value of the '{@link #getUnderlyingTypeKind() <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingTypeKind() + * @generated + * @ordered + */ + protected TDefinedAttributeTypeKind underlyingTypeKind = UNDERLYING_TYPE_KIND_EDEFAULT; + + /** + * This is true if the Underlying Type Kind attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean underlyingTypeKindESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TDataObjectImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TDATA_OBJECT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDsPresCond() { + return dsPresCond; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDsPresCond( String newDsPresCond ) { + String oldDsPresCond = dsPresCond; + dsPresCond = newDsPresCond; + boolean oldDsPresCondESet = dsPresCondESet; + dsPresCondESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_OBJECT__DS_PRES_COND, oldDsPresCond, dsPresCond, !oldDsPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetDsPresCond() { + String oldDsPresCond = dsPresCond; + boolean oldDsPresCondESet = dsPresCondESet; + dsPresCond = DS_PRES_COND_EDEFAULT; + dsPresCondESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_OBJECT__DS_PRES_COND, oldDsPresCond, DS_PRES_COND_EDEFAULT, oldDsPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetDsPresCond() { + return dsPresCondESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDsPresCondArgs() { + return dsPresCondArgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDsPresCondArgs( String newDsPresCondArgs ) { + String oldDsPresCondArgs = dsPresCondArgs; + dsPresCondArgs = newDsPresCondArgs; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS, oldDsPresCondArgs, dsPresCondArgs ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDsPresCondArgsID() { + return dsPresCondArgsID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDsPresCondArgsID( String newDsPresCondArgsID ) { + String oldDsPresCondArgsID = dsPresCondArgsID; + dsPresCondArgsID = newDsPresCondArgsID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS_ID, oldDsPresCondArgsID, dsPresCondArgsID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TDATA_OBJECT__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCond() { + return presCond; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCond( String newPresCond ) { + String oldPresCond = presCond; + presCond = newPresCond; + boolean oldPresCondESet = presCondESet; + presCondESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_OBJECT__PRES_COND, oldPresCond, presCond, !oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPresCond() { + String oldPresCond = presCond; + boolean oldPresCondESet = presCondESet; + presCond = PRES_COND_EDEFAULT; + presCondESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_OBJECT__PRES_COND, oldPresCond, PRES_COND_EDEFAULT, oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPresCond() { + return presCondESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgs() { + return presCondArgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgs( String newPresCondArgs ) { + String oldPresCondArgs = presCondArgs; + presCondArgs = newPresCondArgs; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_OBJECT__PRES_COND_ARGS, oldPresCondArgs, presCondArgs ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgsID() { + return presCondArgsID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgsID( String newPresCondArgsID ) { + String oldPresCondArgsID = presCondArgsID; + presCondArgsID = newPresCondArgsID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_OBJECT__PRES_COND_ARGS_ID, oldPresCondArgsID, presCondArgsID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isTransient() { + return transient_; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTransient( boolean newTransient ) { + boolean oldTransient = transient_; + transient_ = newTransient; + boolean oldTransientESet = transientESet; + transientESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_OBJECT__TRANSIENT, oldTransient, transient_, !oldTransientESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetTransient() { + boolean oldTransient = transient_; + boolean oldTransientESet = transientESet; + transient_ = TRANSIENT_EDEFAULT; + transientESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_OBJECT__TRANSIENT, oldTransient, TRANSIENT_EDEFAULT, oldTransientESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetTransient() { + return transientESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getType() { + return type; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setType( String newType ) { + String oldType = type; + type = newType; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TDATA_OBJECT__TYPE, oldType, type ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getUnderlyingType() { + return underlyingType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUnderlyingType( String newUnderlyingType ) { + String oldUnderlyingType = underlyingType; + underlyingType = newUnderlyingType; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE, oldUnderlyingType, underlyingType ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TDefinedAttributeTypeKind getUnderlyingTypeKind() { + return underlyingTypeKind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUnderlyingTypeKind( TDefinedAttributeTypeKind newUnderlyingTypeKind ) { + TDefinedAttributeTypeKind oldUnderlyingTypeKind = underlyingTypeKind; + underlyingTypeKind = newUnderlyingTypeKind == null ? UNDERLYING_TYPE_KIND_EDEFAULT : newUnderlyingTypeKind; + boolean oldUnderlyingTypeKindESet = underlyingTypeKindESet; + underlyingTypeKindESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE_KIND, + oldUnderlyingTypeKind, underlyingTypeKind, !oldUnderlyingTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetUnderlyingTypeKind() { + TDefinedAttributeTypeKind oldUnderlyingTypeKind = underlyingTypeKind; + boolean oldUnderlyingTypeKindESet = underlyingTypeKindESet; + underlyingTypeKind = UNDERLYING_TYPE_KIND_EDEFAULT; + underlyingTypeKindESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE_KIND, + oldUnderlyingTypeKind, UNDERLYING_TYPE_KIND_EDEFAULT, oldUnderlyingTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetUnderlyingTypeKind() { + return underlyingTypeKindESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TDATA_OBJECT__DS_PRES_COND: + return getDsPresCond(); + case NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS: + return getDsPresCondArgs(); + case NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS_ID: + return getDsPresCondArgsID(); + case NsdPackage.TDATA_OBJECT__NAME: + return getName(); + case NsdPackage.TDATA_OBJECT__PRES_COND: + return getPresCond(); + case NsdPackage.TDATA_OBJECT__PRES_COND_ARGS: + return getPresCondArgs(); + case NsdPackage.TDATA_OBJECT__PRES_COND_ARGS_ID: + return getPresCondArgsID(); + case NsdPackage.TDATA_OBJECT__TRANSIENT: + return isTransient(); + case NsdPackage.TDATA_OBJECT__TYPE: + return getType(); + case NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE: + return getUnderlyingType(); + case NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE_KIND: + return getUnderlyingTypeKind(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TDATA_OBJECT__DS_PRES_COND: + setDsPresCond( ( String ) newValue ); + return; + case NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS: + setDsPresCondArgs( ( String ) newValue ); + return; + case NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS_ID: + setDsPresCondArgsID( ( String ) newValue ); + return; + case NsdPackage.TDATA_OBJECT__NAME: + setName( ( String ) newValue ); + return; + case NsdPackage.TDATA_OBJECT__PRES_COND: + setPresCond( ( String ) newValue ); + return; + case NsdPackage.TDATA_OBJECT__PRES_COND_ARGS: + setPresCondArgs( ( String ) newValue ); + return; + case NsdPackage.TDATA_OBJECT__PRES_COND_ARGS_ID: + setPresCondArgsID( ( String ) newValue ); + return; + case NsdPackage.TDATA_OBJECT__TRANSIENT: + setTransient( ( Boolean ) newValue ); + return; + case NsdPackage.TDATA_OBJECT__TYPE: + setType( ( String ) newValue ); + return; + case NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE: + setUnderlyingType( ( String ) newValue ); + return; + case NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE_KIND: + setUnderlyingTypeKind( ( TDefinedAttributeTypeKind ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TDATA_OBJECT__DS_PRES_COND: + unsetDsPresCond(); + return; + case NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS: + setDsPresCondArgs( DS_PRES_COND_ARGS_EDEFAULT ); + return; + case NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS_ID: + setDsPresCondArgsID( DS_PRES_COND_ARGS_ID_EDEFAULT ); + return; + case NsdPackage.TDATA_OBJECT__NAME: + setName( NAME_EDEFAULT ); + return; + case NsdPackage.TDATA_OBJECT__PRES_COND: + unsetPresCond(); + return; + case NsdPackage.TDATA_OBJECT__PRES_COND_ARGS: + setPresCondArgs( PRES_COND_ARGS_EDEFAULT ); + return; + case NsdPackage.TDATA_OBJECT__PRES_COND_ARGS_ID: + setPresCondArgsID( PRES_COND_ARGS_ID_EDEFAULT ); + return; + case NsdPackage.TDATA_OBJECT__TRANSIENT: + unsetTransient(); + return; + case NsdPackage.TDATA_OBJECT__TYPE: + setType( TYPE_EDEFAULT ); + return; + case NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE: + setUnderlyingType( UNDERLYING_TYPE_EDEFAULT ); + return; + case NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE_KIND: + unsetUnderlyingTypeKind(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TDATA_OBJECT__DS_PRES_COND: + return isSetDsPresCond(); + case NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS: + return DS_PRES_COND_ARGS_EDEFAULT == null ? dsPresCondArgs != null + : !DS_PRES_COND_ARGS_EDEFAULT.equals( dsPresCondArgs ); + case NsdPackage.TDATA_OBJECT__DS_PRES_COND_ARGS_ID: + return DS_PRES_COND_ARGS_ID_EDEFAULT == null ? dsPresCondArgsID != null + : !DS_PRES_COND_ARGS_ID_EDEFAULT.equals( dsPresCondArgsID ); + case NsdPackage.TDATA_OBJECT__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + case NsdPackage.TDATA_OBJECT__PRES_COND: + return isSetPresCond(); + case NsdPackage.TDATA_OBJECT__PRES_COND_ARGS: + return PRES_COND_ARGS_EDEFAULT == null ? presCondArgs != null + : !PRES_COND_ARGS_EDEFAULT.equals( presCondArgs ); + case NsdPackage.TDATA_OBJECT__PRES_COND_ARGS_ID: + return PRES_COND_ARGS_ID_EDEFAULT == null ? presCondArgsID != null + : !PRES_COND_ARGS_ID_EDEFAULT.equals( presCondArgsID ); + case NsdPackage.TDATA_OBJECT__TRANSIENT: + return isSetTransient(); + case NsdPackage.TDATA_OBJECT__TYPE: + return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals( type ); + case NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE: + return UNDERLYING_TYPE_EDEFAULT == null ? underlyingType != null + : !UNDERLYING_TYPE_EDEFAULT.equals( underlyingType ); + case NsdPackage.TDATA_OBJECT__UNDERLYING_TYPE_KIND: + return isSetUnderlyingTypeKind(); + } + 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( " (dsPresCond: " ); + if( dsPresCondESet ) + result.append( dsPresCond ); + else + result.append( "<unset>" ); + result.append( ", dsPresCondArgs: " ); + result.append( dsPresCondArgs ); + result.append( ", dsPresCondArgsID: " ); + result.append( dsPresCondArgsID ); + result.append( ", name: " ); + result.append( name ); + result.append( ", presCond: " ); + if( presCondESet ) + result.append( presCond ); + else + result.append( "<unset>" ); + result.append( ", presCondArgs: " ); + result.append( presCondArgs ); + result.append( ", presCondArgsID: " ); + result.append( presCondArgsID ); + result.append( ", transient: " ); + if( transientESet ) + result.append( transient_ ); + else + result.append( "<unset>" ); + result.append( ", type: " ); + result.append( type ); + result.append( ", underlyingType: " ); + result.append( underlyingType ); + result.append( ", underlyingTypeKind: " ); + if( underlyingTypeKindESet ) + result.append( underlyingTypeKind ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TDataObjectImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDataSetMemberOfImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDataSetMemberOfImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..6195df85d35ef2c137e4ddc248290e91df17c522 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDataSetMemberOfImpl.java @@ -0,0 +1,222 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCBKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TData Set Member Of</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDataSetMemberOfImpl#getCb <em>Cb</em>}</li> + * </ul> + * + * @generated + */ +public class TDataSetMemberOfImpl extends MinimalEObjectImpl.Container implements TDataSetMemberOf { + /** + * The default value of the '{@link #getCb() <em>Cb</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCb() + * @generated + * @ordered + */ + protected static final TCBKind CB_EDEFAULT = TCBKind.RCB; + + /** + * The cached value of the '{@link #getCb() <em>Cb</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCb() + * @generated + * @ordered + */ + protected TCBKind cb = CB_EDEFAULT; + + /** + * This is true if the Cb attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean cbESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TDataSetMemberOfImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TDATA_SET_MEMBER_OF; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TCBKind getCb() { + return cb; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setCb( TCBKind newCb ) { + TCBKind oldCb = cb; + cb = newCb == null ? CB_EDEFAULT : newCb; + boolean oldCbESet = cbESet; + cbESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDATA_SET_MEMBER_OF__CB, oldCb, cb, !oldCbESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetCb() { + TCBKind oldCb = cb; + boolean oldCbESet = cbESet; + cb = CB_EDEFAULT; + cbESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDATA_SET_MEMBER_OF__CB, oldCb, CB_EDEFAULT, oldCbESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetCb() { + return cbESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TDATA_SET_MEMBER_OF__CB: + return getCb(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TDATA_SET_MEMBER_OF__CB: + setCb( ( TCBKind ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TDATA_SET_MEMBER_OF__CB: + unsetCb(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TDATA_SET_MEMBER_OF__CB: + return isSetCb(); + } + 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( " (cb: " ); + if( cbESet ) + result.append( cb ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TDataSetMemberOfImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDocImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDocImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..a4363bfb048b7d61c085b8f4abbef6153cdd1fa7 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDocImpl.java @@ -0,0 +1,287 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.BasicFeatureMap; +import org.eclipse.emf.ecore.util.FeatureMap; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TDoc</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocImpl#getMixed <em>Mixed</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocImpl#getGroup <em>Group</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocImpl#getAny <em>Any</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocImpl#getId <em>Id</em>}</li> + * </ul> + * + * @generated + */ +public class TDocImpl extends MinimalEObjectImpl.Container implements TDoc { + /** + * The cached value of the '{@link #getMixed() <em>Mixed</em>}' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMixed() + * @generated + * @ordered + */ + protected FeatureMap mixed; + + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TDocImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TDOC; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FeatureMap getMixed() { + if( mixed == null ) { + mixed = new BasicFeatureMap( this, NsdPackage.TDOC__MIXED ); + } + return mixed; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FeatureMap getGroup() { + return ( FeatureMap ) getMixed().< FeatureMap.Entry > list( NsdPackage.Literals.TDOC__GROUP ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FeatureMap getAny() { + return ( FeatureMap ) getGroup().< FeatureMap.Entry > list( NsdPackage.Literals.TDOC__ANY ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setId( String newId ) { + String oldId = id; + id = newId; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TDOC__ID, oldId, id ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TDOC__MIXED: + return ( ( InternalEList< ? > ) getMixed() ).basicRemove( otherEnd, msgs ); + case NsdPackage.TDOC__GROUP: + return ( ( InternalEList< ? > ) getGroup() ).basicRemove( otherEnd, msgs ); + case NsdPackage.TDOC__ANY: + return ( ( InternalEList< ? > ) getAny() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TDOC__MIXED: + if( coreType ) return getMixed(); + return ( ( FeatureMap.Internal ) getMixed() ).getWrapper(); + case NsdPackage.TDOC__GROUP: + if( coreType ) return getGroup(); + return ( ( FeatureMap.Internal ) getGroup() ).getWrapper(); + case NsdPackage.TDOC__ANY: + if( coreType ) return getAny(); + return ( ( FeatureMap.Internal ) getAny() ).getWrapper(); + case NsdPackage.TDOC__ID: + return getId(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TDOC__MIXED: + ( ( FeatureMap.Internal ) getMixed() ).set( newValue ); + return; + case NsdPackage.TDOC__GROUP: + ( ( FeatureMap.Internal ) getGroup() ).set( newValue ); + return; + case NsdPackage.TDOC__ANY: + ( ( FeatureMap.Internal ) getAny() ).set( newValue ); + return; + case NsdPackage.TDOC__ID: + setId( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TDOC__MIXED: + getMixed().clear(); + return; + case NsdPackage.TDOC__GROUP: + getGroup().clear(); + return; + case NsdPackage.TDOC__ANY: + getAny().clear(); + return; + case NsdPackage.TDOC__ID: + setId( ID_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TDOC__MIXED: + return mixed != null && !mixed.isEmpty(); + case NsdPackage.TDOC__GROUP: + return !getGroup().isEmpty(); + case NsdPackage.TDOC__ANY: + return !getAny().isEmpty(); + case NsdPackage.TDOC__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals( id ); + } + return super.eIsSet( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if( eIsProxy() ) return super.toString(); + + StringBuilder result = new StringBuilder( super.toString() ); + result.append( " (mixed: " ); + result.append( mixed ); + result.append( ", id: " ); + result.append( id ); + result.append( ')' ); + return result.toString(); + } + +} //TDocImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDocumentedClassImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDocumentedClassImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..813e95d90155fe1f345e84b5af4cbff14643ca8e --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TDocumentedClassImpl.java @@ -0,0 +1,372 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TDocumented Class</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocumentedClassImpl#isDeprecated <em>Deprecated</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocumentedClassImpl#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TDocumentedClassImpl#isInformative <em>Informative</em>}</li> + * </ul> + * + * @generated + */ +public class TDocumentedClassImpl extends MinimalEObjectImpl.Container implements TDocumentedClass { + /** + * The default value of the '{@link #isDeprecated() <em>Deprecated</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isDeprecated() + * @generated + * @ordered + */ + protected static final boolean DEPRECATED_EDEFAULT = false; + + /** + * The cached value of the '{@link #isDeprecated() <em>Deprecated</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isDeprecated() + * @generated + * @ordered + */ + protected boolean deprecated = DEPRECATED_EDEFAULT; + + /** + * This is true if the Deprecated attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean deprecatedESet; + + /** + * The default value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected static final String DESC_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected String descID = DESC_ID_EDEFAULT; + + /** + * The default value of the '{@link #isInformative() <em>Informative</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isInformative() + * @generated + * @ordered + */ + protected static final boolean INFORMATIVE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isInformative() <em>Informative</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isInformative() + * @generated + * @ordered + */ + protected boolean informative = INFORMATIVE_EDEFAULT; + + /** + * This is true if the Informative attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean informativeESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TDocumentedClassImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TDOCUMENTED_CLASS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isDeprecated() { + return deprecated; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDeprecated( boolean newDeprecated ) { + boolean oldDeprecated = deprecated; + deprecated = newDeprecated; + boolean oldDeprecatedESet = deprecatedESet; + deprecatedESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDOCUMENTED_CLASS__DEPRECATED, oldDeprecated, deprecated, !oldDeprecatedESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetDeprecated() { + boolean oldDeprecated = deprecated; + boolean oldDeprecatedESet = deprecatedESet; + deprecated = DEPRECATED_EDEFAULT; + deprecatedESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDOCUMENTED_CLASS__DEPRECATED, oldDeprecated, DEPRECATED_EDEFAULT, oldDeprecatedESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetDeprecated() { + return deprecatedESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDescID() { + return descID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDescID( String newDescID ) { + String oldDescID = descID; + descID = newDescID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDOCUMENTED_CLASS__DESC_ID, oldDescID, descID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isInformative() { + return informative; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setInformative( boolean newInformative ) { + boolean oldInformative = informative; + informative = newInformative; + boolean oldInformativeESet = informativeESet; + informativeESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TDOCUMENTED_CLASS__INFORMATIVE, oldInformative, informative, !oldInformativeESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetInformative() { + boolean oldInformative = informative; + boolean oldInformativeESet = informativeESet; + informative = INFORMATIVE_EDEFAULT; + informativeESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TDOCUMENTED_CLASS__INFORMATIVE, oldInformative, INFORMATIVE_EDEFAULT, oldInformativeESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetInformative() { + return informativeESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TDOCUMENTED_CLASS__DEPRECATED: + return isDeprecated(); + case NsdPackage.TDOCUMENTED_CLASS__DESC_ID: + return getDescID(); + case NsdPackage.TDOCUMENTED_CLASS__INFORMATIVE: + return isInformative(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TDOCUMENTED_CLASS__DEPRECATED: + setDeprecated( ( Boolean ) newValue ); + return; + case NsdPackage.TDOCUMENTED_CLASS__DESC_ID: + setDescID( ( String ) newValue ); + return; + case NsdPackage.TDOCUMENTED_CLASS__INFORMATIVE: + setInformative( ( Boolean ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TDOCUMENTED_CLASS__DEPRECATED: + unsetDeprecated(); + return; + case NsdPackage.TDOCUMENTED_CLASS__DESC_ID: + setDescID( DESC_ID_EDEFAULT ); + return; + case NsdPackage.TDOCUMENTED_CLASS__INFORMATIVE: + unsetInformative(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TDOCUMENTED_CLASS__DEPRECATED: + return isSetDeprecated(); + case NsdPackage.TDOCUMENTED_CLASS__DESC_ID: + return DESC_ID_EDEFAULT == null ? descID != null : !DESC_ID_EDEFAULT.equals( descID ); + case NsdPackage.TDOCUMENTED_CLASS__INFORMATIVE: + return isSetInformative(); + } + 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( " (deprecated: " ); + if( deprecatedESet ) + result.append( deprecated ); + else + result.append( "<unset>" ); + result.append( ", descID: " ); + result.append( descID ); + result.append( ", informative: " ); + if( informativeESet ) + result.append( informative ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TDocumentedClassImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TEnumerationImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TEnumerationImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..db5bff0a30ae14c9fcbbef820898f8a0b8ef7455 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TEnumerationImpl.java @@ -0,0 +1,298 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TEnumeration</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationImpl#getLiteral <em>Literal</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationImpl#getInheritedFrom <em>Inherited From</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationImpl#getName <em>Name</em>}</li> + * </ul> + * + * @generated + */ +public class TEnumerationImpl extends TTitledClassImpl implements TEnumeration { + /** + * The cached value of the '{@link #getLiteral() <em>Literal</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLiteral() + * @generated + * @ordered + */ + protected EList< TLiteral > literal; + + /** + * The default value of the '{@link #getInheritedFrom() <em>Inherited From</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInheritedFrom() + * @generated + * @ordered + */ + protected static final String INHERITED_FROM_EDEFAULT = null; + + /** + * The cached value of the '{@link #getInheritedFrom() <em>Inherited From</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInheritedFrom() + * @generated + * @ordered + */ + protected String inheritedFrom = INHERITED_FROM_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TEnumerationImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TENUMERATION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TLiteral > getLiteral() { + if( literal == null ) { + literal = new EObjectContainmentEList< TLiteral >( TLiteral.class, this, NsdPackage.TENUMERATION__LITERAL ); + } + return literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getInheritedFrom() { + return inheritedFrom; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setInheritedFrom( String newInheritedFrom ) { + String oldInheritedFrom = inheritedFrom; + inheritedFrom = newInheritedFrom; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TENUMERATION__INHERITED_FROM, oldInheritedFrom, inheritedFrom ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TENUMERATION__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TENUMERATION__LITERAL: + return ( ( InternalEList< ? > ) getLiteral() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TENUMERATION__LITERAL: + return getLiteral(); + case NsdPackage.TENUMERATION__INHERITED_FROM: + return getInheritedFrom(); + case NsdPackage.TENUMERATION__NAME: + return getName(); + } + 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 NsdPackage.TENUMERATION__LITERAL: + getLiteral().clear(); + getLiteral().addAll( ( Collection< ? extends TLiteral > ) newValue ); + return; + case NsdPackage.TENUMERATION__INHERITED_FROM: + setInheritedFrom( ( String ) newValue ); + return; + case NsdPackage.TENUMERATION__NAME: + setName( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TENUMERATION__LITERAL: + getLiteral().clear(); + return; + case NsdPackage.TENUMERATION__INHERITED_FROM: + setInheritedFrom( INHERITED_FROM_EDEFAULT ); + return; + case NsdPackage.TENUMERATION__NAME: + setName( NAME_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TENUMERATION__LITERAL: + return literal != null && !literal.isEmpty(); + case NsdPackage.TENUMERATION__INHERITED_FROM: + return INHERITED_FROM_EDEFAULT == null ? inheritedFrom != null + : !INHERITED_FROM_EDEFAULT.equals( inheritedFrom ); + case NsdPackage.TENUMERATION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + } + 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( " (inheritedFrom: " ); + result.append( inheritedFrom ); + result.append( ", name: " ); + result.append( name ); + result.append( ')' ); + return result.toString(); + } + +} //TEnumerationImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TEnumerationsImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TEnumerationsImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..57921ab8710d88443b544d1415a3e07dce546092 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TEnumerationsImpl.java @@ -0,0 +1,171 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TEnumerations</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TEnumerationsImpl#getEnumeration <em>Enumeration</em>}</li> + * </ul> + * + * @generated + */ +public class TEnumerationsImpl extends MinimalEObjectImpl.Container implements TEnumerations { + /** + * The cached value of the '{@link #getEnumeration() <em>Enumeration</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEnumeration() + * @generated + * @ordered + */ + protected EList< TEnumeration > enumeration; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TEnumerationsImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TENUMERATIONS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TEnumeration > getEnumeration() { + if( enumeration == null ) { + enumeration = new EObjectContainmentEList< TEnumeration >( TEnumeration.class, this, + NsdPackage.TENUMERATIONS__ENUMERATION ); + } + return enumeration; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TENUMERATIONS__ENUMERATION: + return ( ( InternalEList< ? > ) getEnumeration() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TENUMERATIONS__ENUMERATION: + return getEnumeration(); + } + 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 NsdPackage.TENUMERATIONS__ENUMERATION: + getEnumeration().clear(); + getEnumeration().addAll( ( Collection< ? extends TEnumeration > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TENUMERATIONS__ENUMERATION: + getEnumeration().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TENUMERATIONS__ENUMERATION: + return enumeration != null && !enumeration.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TEnumerationsImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TFunctionalConstraintImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TFunctionalConstraintImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..d6a1dac8107e096443b7800adb04ead45d1d2e51 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TFunctionalConstraintImpl.java @@ -0,0 +1,384 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TFunctional Constraint</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintImpl#getApplicableServices <em>Applicable Services</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintImpl#getAbbreviation <em>Abbreviation</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintImpl#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintImpl#getTitleID <em>Title ID</em>}</li> + * </ul> + * + * @generated + */ +public class TFunctionalConstraintImpl extends MinimalEObjectImpl.Container implements TFunctionalConstraint { + /** + * The cached value of the '{@link #getApplicableServices() <em>Applicable Services</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getApplicableServices() + * @generated + * @ordered + */ + protected TApplicableServices applicableServices; + + /** + * The default value of the '{@link #getAbbreviation() <em>Abbreviation</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAbbreviation() + * @generated + * @ordered + */ + protected static final String ABBREVIATION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAbbreviation() <em>Abbreviation</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAbbreviation() + * @generated + * @ordered + */ + protected String abbreviation = ABBREVIATION_EDEFAULT; + + /** + * The default value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected static final String DESC_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected String descID = DESC_ID_EDEFAULT; + + /** + * The default value of the '{@link #getTitleID() <em>Title ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTitleID() + * @generated + * @ordered + */ + protected static final String TITLE_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTitleID() <em>Title ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTitleID() + * @generated + * @ordered + */ + protected String titleID = TITLE_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TFunctionalConstraintImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TFUNCTIONAL_CONSTRAINT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TApplicableServices getApplicableServices() { + return applicableServices; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetApplicableServices( TApplicableServices newApplicableServices, + NotificationChain msgs ) { + TApplicableServices oldApplicableServices = applicableServices; + applicableServices = newApplicableServices; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES, oldApplicableServices, + newApplicableServices ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setApplicableServices( TApplicableServices newApplicableServices ) { + if( newApplicableServices != applicableServices ) { + NotificationChain msgs = null; + if( applicableServices != null ) msgs = ( ( InternalEObject ) applicableServices ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES, null, msgs ); + if( newApplicableServices != null ) msgs = ( ( InternalEObject ) newApplicableServices ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES, null, msgs ); + msgs = basicSetApplicableServices( newApplicableServices, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES, + newApplicableServices, newApplicableServices ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getAbbreviation() { + return abbreviation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setAbbreviation( String newAbbreviation ) { + String oldAbbreviation = abbreviation; + abbreviation = newAbbreviation; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TFUNCTIONAL_CONSTRAINT__ABBREVIATION, oldAbbreviation, abbreviation ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDescID() { + return descID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDescID( String newDescID ) { + String oldDescID = descID; + descID = newDescID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TFUNCTIONAL_CONSTRAINT__DESC_ID, oldDescID, descID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getTitleID() { + return titleID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTitleID( String newTitleID ) { + String oldTitleID = titleID; + titleID = newTitleID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TFUNCTIONAL_CONSTRAINT__TITLE_ID, oldTitleID, titleID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES: + return basicSetApplicableServices( null, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES: + return getApplicableServices(); + case NsdPackage.TFUNCTIONAL_CONSTRAINT__ABBREVIATION: + return getAbbreviation(); + case NsdPackage.TFUNCTIONAL_CONSTRAINT__DESC_ID: + return getDescID(); + case NsdPackage.TFUNCTIONAL_CONSTRAINT__TITLE_ID: + return getTitleID(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES: + setApplicableServices( ( TApplicableServices ) newValue ); + return; + case NsdPackage.TFUNCTIONAL_CONSTRAINT__ABBREVIATION: + setAbbreviation( ( String ) newValue ); + return; + case NsdPackage.TFUNCTIONAL_CONSTRAINT__DESC_ID: + setDescID( ( String ) newValue ); + return; + case NsdPackage.TFUNCTIONAL_CONSTRAINT__TITLE_ID: + setTitleID( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES: + setApplicableServices( ( TApplicableServices ) null ); + return; + case NsdPackage.TFUNCTIONAL_CONSTRAINT__ABBREVIATION: + setAbbreviation( ABBREVIATION_EDEFAULT ); + return; + case NsdPackage.TFUNCTIONAL_CONSTRAINT__DESC_ID: + setDescID( DESC_ID_EDEFAULT ); + return; + case NsdPackage.TFUNCTIONAL_CONSTRAINT__TITLE_ID: + setTitleID( TITLE_ID_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINT__APPLICABLE_SERVICES: + return applicableServices != null; + case NsdPackage.TFUNCTIONAL_CONSTRAINT__ABBREVIATION: + return ABBREVIATION_EDEFAULT == null ? abbreviation != null : !ABBREVIATION_EDEFAULT.equals( abbreviation ); + case NsdPackage.TFUNCTIONAL_CONSTRAINT__DESC_ID: + return DESC_ID_EDEFAULT == null ? descID != null : !DESC_ID_EDEFAULT.equals( descID ); + case NsdPackage.TFUNCTIONAL_CONSTRAINT__TITLE_ID: + return TITLE_ID_EDEFAULT == null ? titleID != null : !TITLE_ID_EDEFAULT.equals( titleID ); + } + 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( " (abbreviation: " ); + result.append( abbreviation ); + result.append( ", descID: " ); + result.append( descID ); + result.append( ", titleID: " ); + result.append( titleID ); + result.append( ')' ); + return result.toString(); + } + +} //TFunctionalConstraintImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TFunctionalConstraintsImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TFunctionalConstraintsImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..beaad00ab855f83c85186e96ec2b46178b7ebc07 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TFunctionalConstraintsImpl.java @@ -0,0 +1,171 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TFunctional Constraints</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TFunctionalConstraintsImpl#getFunctionalConstraint <em>Functional Constraint</em>}</li> + * </ul> + * + * @generated + */ +public class TFunctionalConstraintsImpl extends MinimalEObjectImpl.Container implements TFunctionalConstraints { + /** + * The cached value of the '{@link #getFunctionalConstraint() <em>Functional Constraint</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFunctionalConstraint() + * @generated + * @ordered + */ + protected EList< TFunctionalConstraint > functionalConstraint; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TFunctionalConstraintsImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TFUNCTIONAL_CONSTRAINTS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TFunctionalConstraint > getFunctionalConstraint() { + if( functionalConstraint == null ) { + functionalConstraint = new EObjectContainmentEList< TFunctionalConstraint >( TFunctionalConstraint.class, + this, NsdPackage.TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT ); + } + return functionalConstraint; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT: + return ( ( InternalEList< ? > ) getFunctionalConstraint() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT: + return getFunctionalConstraint(); + } + 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 NsdPackage.TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT: + getFunctionalConstraint().clear(); + getFunctionalConstraint().addAll( ( Collection< ? extends TFunctionalConstraint > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT: + getFunctionalConstraint().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TFUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT: + return functionalConstraint != null && !functionalConstraint.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TFunctionalConstraintsImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLNClassImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLNClassImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..fa863d968a50c944c6e35b73f666d6ec4fb51225 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLNClassImpl.java @@ -0,0 +1,371 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TLN Class</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassImpl#isCanHaveLOG <em>Can Have LOG</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassImpl#isIsExtension <em>Is Extension</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassImpl#getName <em>Name</em>}</li> + * </ul> + * + * @generated + */ +public class TLNClassImpl extends TAnyLNClassImpl implements TLNClass { + /** + * The default value of the '{@link #isCanHaveLOG() <em>Can Have LOG</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCanHaveLOG() + * @generated + * @ordered + */ + protected static final boolean CAN_HAVE_LOG_EDEFAULT = false; + + /** + * The cached value of the '{@link #isCanHaveLOG() <em>Can Have LOG</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCanHaveLOG() + * @generated + * @ordered + */ + protected boolean canHaveLOG = CAN_HAVE_LOG_EDEFAULT; + + /** + * This is true if the Can Have LOG attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean canHaveLOGESet; + + /** + * The default value of the '{@link #isIsExtension() <em>Is Extension</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isIsExtension() + * @generated + * @ordered + */ + protected static final boolean IS_EXTENSION_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIsExtension() <em>Is Extension</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isIsExtension() + * @generated + * @ordered + */ + protected boolean isExtension = IS_EXTENSION_EDEFAULT; + + /** + * This is true if the Is Extension attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean isExtensionESet; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TLNClassImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TLN_CLASS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isCanHaveLOG() { + return canHaveLOG; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setCanHaveLOG( boolean newCanHaveLOG ) { + boolean oldCanHaveLOG = canHaveLOG; + canHaveLOG = newCanHaveLOG; + boolean oldCanHaveLOGESet = canHaveLOGESet; + canHaveLOGESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TLN_CLASS__CAN_HAVE_LOG, oldCanHaveLOG, canHaveLOG, !oldCanHaveLOGESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetCanHaveLOG() { + boolean oldCanHaveLOG = canHaveLOG; + boolean oldCanHaveLOGESet = canHaveLOGESet; + canHaveLOG = CAN_HAVE_LOG_EDEFAULT; + canHaveLOGESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TLN_CLASS__CAN_HAVE_LOG, oldCanHaveLOG, CAN_HAVE_LOG_EDEFAULT, oldCanHaveLOGESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetCanHaveLOG() { + return canHaveLOGESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isIsExtension() { + return isExtension; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setIsExtension( boolean newIsExtension ) { + boolean oldIsExtension = isExtension; + isExtension = newIsExtension; + boolean oldIsExtensionESet = isExtensionESet; + isExtensionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TLN_CLASS__IS_EXTENSION, oldIsExtension, isExtension, !oldIsExtensionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetIsExtension() { + boolean oldIsExtension = isExtension; + boolean oldIsExtensionESet = isExtensionESet; + isExtension = IS_EXTENSION_EDEFAULT; + isExtensionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TLN_CLASS__IS_EXTENSION, oldIsExtension, IS_EXTENSION_EDEFAULT, oldIsExtensionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetIsExtension() { + return isExtensionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TLN_CLASS__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TLN_CLASS__CAN_HAVE_LOG: + return isCanHaveLOG(); + case NsdPackage.TLN_CLASS__IS_EXTENSION: + return isIsExtension(); + case NsdPackage.TLN_CLASS__NAME: + return getName(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TLN_CLASS__CAN_HAVE_LOG: + setCanHaveLOG( ( Boolean ) newValue ); + return; + case NsdPackage.TLN_CLASS__IS_EXTENSION: + setIsExtension( ( Boolean ) newValue ); + return; + case NsdPackage.TLN_CLASS__NAME: + setName( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TLN_CLASS__CAN_HAVE_LOG: + unsetCanHaveLOG(); + return; + case NsdPackage.TLN_CLASS__IS_EXTENSION: + unsetIsExtension(); + return; + case NsdPackage.TLN_CLASS__NAME: + setName( NAME_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TLN_CLASS__CAN_HAVE_LOG: + return isSetCanHaveLOG(); + case NsdPackage.TLN_CLASS__IS_EXTENSION: + return isSetIsExtension(); + case NsdPackage.TLN_CLASS__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + } + 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( " (canHaveLOG: " ); + if( canHaveLOGESet ) + result.append( canHaveLOG ); + else + result.append( "<unset>" ); + result.append( ", isExtension: " ); + if( isExtensionESet ) + result.append( isExtension ); + else + result.append( "<unset>" ); + result.append( ", name: " ); + result.append( name ); + result.append( ')' ); + return result.toString(); + } + +} //TLNClassImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLNClassesImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLNClassesImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..50d641913ff64c6418816364a7dad19508c776d0 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLNClassesImpl.java @@ -0,0 +1,209 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TLN Classes</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassesImpl#getAbstractLNClass <em>Abstract LN Class</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLNClassesImpl#getLNClass <em>LN Class</em>}</li> + * </ul> + * + * @generated + */ +public class TLNClassesImpl extends MinimalEObjectImpl.Container implements TLNClasses { + /** + * The cached value of the '{@link #getAbstractLNClass() <em>Abstract LN Class</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAbstractLNClass() + * @generated + * @ordered + */ + protected EList< TAbstractLNClass > abstractLNClass; + + /** + * The cached value of the '{@link #getLNClass() <em>LN Class</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLNClass() + * @generated + * @ordered + */ + protected EList< TLNClass > lNClass; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TLNClassesImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TLN_CLASSES; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TAbstractLNClass > getAbstractLNClass() { + if( abstractLNClass == null ) { + abstractLNClass = new EObjectContainmentEList< TAbstractLNClass >( TAbstractLNClass.class, this, + NsdPackage.TLN_CLASSES__ABSTRACT_LN_CLASS ); + } + return abstractLNClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TLNClass > getLNClass() { + if( lNClass == null ) { + lNClass = new EObjectContainmentEList< TLNClass >( TLNClass.class, this, NsdPackage.TLN_CLASSES__LN_CLASS ); + } + return lNClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TLN_CLASSES__ABSTRACT_LN_CLASS: + return ( ( InternalEList< ? > ) getAbstractLNClass() ).basicRemove( otherEnd, msgs ); + case NsdPackage.TLN_CLASSES__LN_CLASS: + return ( ( InternalEList< ? > ) getLNClass() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TLN_CLASSES__ABSTRACT_LN_CLASS: + return getAbstractLNClass(); + case NsdPackage.TLN_CLASSES__LN_CLASS: + return getLNClass(); + } + 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 NsdPackage.TLN_CLASSES__ABSTRACT_LN_CLASS: + getAbstractLNClass().clear(); + getAbstractLNClass().addAll( ( Collection< ? extends TAbstractLNClass > ) newValue ); + return; + case NsdPackage.TLN_CLASSES__LN_CLASS: + getLNClass().clear(); + getLNClass().addAll( ( Collection< ? extends TLNClass > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TLN_CLASSES__ABSTRACT_LN_CLASS: + getAbstractLNClass().clear(); + return; + case NsdPackage.TLN_CLASSES__LN_CLASS: + getLNClass().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TLN_CLASSES__ABSTRACT_LN_CLASS: + return abstractLNClass != null && !abstractLNClass.isEmpty(); + case NsdPackage.TLN_CLASSES__LN_CLASS: + return lNClass != null && !lNClass.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TLNClassesImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLicenseImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLicenseImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..c0febec305698859fcd4eba6a0232863f24d005f --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLicenseImpl.java @@ -0,0 +1,335 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicenseKind; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.BasicFeatureMap; +import org.eclipse.emf.ecore.util.FeatureMap; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TLicense</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLicenseImpl#getMixed <em>Mixed</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLicenseImpl#getKind <em>Kind</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLicenseImpl#getUri <em>Uri</em>}</li> + * </ul> + * + * @generated + */ +public class TLicenseImpl extends MinimalEObjectImpl.Container implements TLicense { + /** + * The cached value of the '{@link #getMixed() <em>Mixed</em>}' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMixed() + * @generated + * @ordered + */ + protected FeatureMap mixed; + + /** + * The default value of the '{@link #getKind() <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getKind() + * @generated + * @ordered + */ + protected static final TLicenseKind KIND_EDEFAULT = TLicenseKind.STANDARD; + + /** + * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getKind() + * @generated + * @ordered + */ + protected TLicenseKind kind = KIND_EDEFAULT; + + /** + * This is true if the Kind attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean kindESet; + + /** + * The default value of the '{@link #getUri() <em>Uri</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUri() + * @generated + * @ordered + */ + protected static final String URI_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUri() <em>Uri</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUri() + * @generated + * @ordered + */ + protected String uri = URI_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TLicenseImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TLICENSE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FeatureMap getMixed() { + if( mixed == null ) { + mixed = new BasicFeatureMap( this, NsdPackage.TLICENSE__MIXED ); + } + return mixed; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TLicenseKind getKind() { + return kind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setKind( TLicenseKind newKind ) { + TLicenseKind oldKind = kind; + kind = newKind == null ? KIND_EDEFAULT : newKind; + boolean oldKindESet = kindESet; + kindESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TLICENSE__KIND, + oldKind, kind, !oldKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetKind() { + TLicenseKind oldKind = kind; + boolean oldKindESet = kindESet; + kind = KIND_EDEFAULT; + kindESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TLICENSE__KIND, oldKind, KIND_EDEFAULT, oldKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetKind() { + return kindESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getUri() { + return uri; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUri( String newUri ) { + String oldUri = uri; + uri = newUri; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TLICENSE__URI, oldUri, uri ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TLICENSE__MIXED: + return ( ( InternalEList< ? > ) getMixed() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TLICENSE__MIXED: + if( coreType ) return getMixed(); + return ( ( FeatureMap.Internal ) getMixed() ).getWrapper(); + case NsdPackage.TLICENSE__KIND: + return getKind(); + case NsdPackage.TLICENSE__URI: + return getUri(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TLICENSE__MIXED: + ( ( FeatureMap.Internal ) getMixed() ).set( newValue ); + return; + case NsdPackage.TLICENSE__KIND: + setKind( ( TLicenseKind ) newValue ); + return; + case NsdPackage.TLICENSE__URI: + setUri( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TLICENSE__MIXED: + getMixed().clear(); + return; + case NsdPackage.TLICENSE__KIND: + unsetKind(); + return; + case NsdPackage.TLICENSE__URI: + setUri( URI_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TLICENSE__MIXED: + return mixed != null && !mixed.isEmpty(); + case NsdPackage.TLICENSE__KIND: + return isSetKind(); + case NsdPackage.TLICENSE__URI: + return URI_EDEFAULT == null ? uri != null : !URI_EDEFAULT.equals( uri ); + } + 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( " (mixed: " ); + result.append( mixed ); + result.append( ", kind: " ); + if( kindESet ) + result.append( kind ); + else + result.append( "<unset>" ); + result.append( ", uri: " ); + result.append( uri ); + result.append( ')' ); + return result.toString(); + } + +} //TLicenseImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLiteralImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLiteralImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..acec76cba6f6d77e14b10890df436f8b3def6567 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TLiteralImpl.java @@ -0,0 +1,276 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TLiteral</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLiteralImpl#getLiteralVal <em>Literal Val</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TLiteralImpl#getName <em>Name</em>}</li> + * </ul> + * + * @generated + */ +public class TLiteralImpl extends TDocumentedClassImpl implements TLiteral { + /** + * The default value of the '{@link #getLiteralVal() <em>Literal Val</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLiteralVal() + * @generated + * @ordered + */ + protected static final int LITERAL_VAL_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getLiteralVal() <em>Literal Val</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLiteralVal() + * @generated + * @ordered + */ + protected int literalVal = LITERAL_VAL_EDEFAULT; + + /** + * This is true if the Literal Val attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean literalValESet; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TLiteralImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TLITERAL; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getLiteralVal() { + return literalVal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setLiteralVal( int newLiteralVal ) { + int oldLiteralVal = literalVal; + literalVal = newLiteralVal; + boolean oldLiteralValESet = literalValESet; + literalValESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TLITERAL__LITERAL_VAL, oldLiteralVal, literalVal, !oldLiteralValESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetLiteralVal() { + int oldLiteralVal = literalVal; + boolean oldLiteralValESet = literalValESet; + literalVal = LITERAL_VAL_EDEFAULT; + literalValESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TLITERAL__LITERAL_VAL, oldLiteralVal, LITERAL_VAL_EDEFAULT, oldLiteralValESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetLiteralVal() { + return literalValESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TLITERAL__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TLITERAL__LITERAL_VAL: + return getLiteralVal(); + case NsdPackage.TLITERAL__NAME: + return getName(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TLITERAL__LITERAL_VAL: + setLiteralVal( ( Integer ) newValue ); + return; + case NsdPackage.TLITERAL__NAME: + setName( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TLITERAL__LITERAL_VAL: + unsetLiteralVal(); + return; + case NsdPackage.TLITERAL__NAME: + setName( NAME_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TLITERAL__LITERAL_VAL: + return isSetLiteralVal(); + case NsdPackage.TLITERAL__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + } + 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( " (literalVal: " ); + if( literalValESet ) + result.append( literalVal ); + else + result.append( "<unset>" ); + result.append( ", name: " ); + result.append( name ); + result.append( ')' ); + return result.toString(); + } + +} //TLiteralImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TNSDocImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TNSDocImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..f51c0f06231b8b9608e8b3ea3d0ffd128af26583 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TNSDocImpl.java @@ -0,0 +1,794 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage; + +import java.util.Collection; + +import javax.xml.datatype.XMLGregorianCalendar; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +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.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TNS Doc</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl#getDoc <em>Doc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl#getLang <em>Lang</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl#getUmlDate <em>Uml Date</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl#getUmlVersion <em>Uml Version</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSDocImpl#getVersion <em>Version</em>}</li> + * </ul> + * + * @generated + */ +public class TNSDocImpl extends TCopyrightedImpl implements TNSDoc { + /** + * The cached value of the '{@link #getDoc() <em>Doc</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDoc() + * @generated + * @ordered + */ + protected EList< TDoc > doc; + + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * The default value of the '{@link #getLang() <em>Lang</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLang() + * @generated + * @ordered + */ + protected static final String LANG_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLang() <em>Lang</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLang() + * @generated + * @ordered + */ + protected String lang = LANG_EDEFAULT; + + /** + * The default value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected static final TPubStage PUBLICATION_STAGE_EDEFAULT = TPubStage.IS; + + /** + * The cached value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected TPubStage publicationStage = PUBLICATION_STAGE_EDEFAULT; + + /** + * This is true if the Publication Stage attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean publicationStageESet; + + /** + * The default value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected static final short RELEASE_EDEFAULT = 1; + + /** + * The cached value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected short release = RELEASE_EDEFAULT; + + /** + * This is true if the Release attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean releaseESet; + + /** + * The default value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected static final String REVISION_EDEFAULT = "A"; + + /** + * The cached value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected String revision = REVISION_EDEFAULT; + + /** + * This is true if the Revision attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean revisionESet; + + /** + * The default value of the '{@link #getUmlDate() <em>Uml Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlDate() + * @generated + * @ordered + */ + protected static final XMLGregorianCalendar UML_DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUmlDate() <em>Uml Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlDate() + * @generated + * @ordered + */ + protected XMLGregorianCalendar umlDate = UML_DATE_EDEFAULT; + + /** + * The default value of the '{@link #getUmlVersion() <em>Uml Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlVersion() + * @generated + * @ordered + */ + protected static final String UML_VERSION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUmlVersion() <em>Uml Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlVersion() + * @generated + * @ordered + */ + protected String umlVersion = UML_VERSION_EDEFAULT; + + /** + * The default value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected static final int VERSION_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected int version = VERSION_EDEFAULT; + + /** + * This is true if the Version attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean versionESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TNSDocImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TNS_DOC; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TDoc > getDoc() { + if( doc == null ) { + doc = new EObjectContainmentEList< TDoc >( TDoc.class, this, NsdPackage.TNS_DOC__DOC ); + } + return doc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setId( String newId ) { + String oldId = id; + id = newId; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS_DOC__ID, oldId, id ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getLang() { + return lang; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setLang( String newLang ) { + String oldLang = lang; + lang = newLang; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS_DOC__LANG, oldLang, lang ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TPubStage getPublicationStage() { + return publicationStage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPublicationStage( TPubStage newPublicationStage ) { + TPubStage oldPublicationStage = publicationStage; + publicationStage = newPublicationStage == null ? PUBLICATION_STAGE_EDEFAULT : newPublicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStageESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS_DOC__PUBLICATION_STAGE, + oldPublicationStage, publicationStage, !oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPublicationStage() { + TPubStage oldPublicationStage = publicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStage = PUBLICATION_STAGE_EDEFAULT; + publicationStageESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.TNS_DOC__PUBLICATION_STAGE, + oldPublicationStage, PUBLICATION_STAGE_EDEFAULT, oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPublicationStage() { + return publicationStageESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public short getRelease() { + return release; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRelease( short newRelease ) { + short oldRelease = release; + release = newRelease; + boolean oldReleaseESet = releaseESet; + releaseESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS_DOC__RELEASE, oldRelease, release, !oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRelease() { + short oldRelease = release; + boolean oldReleaseESet = releaseESet; + release = RELEASE_EDEFAULT; + releaseESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TNS_DOC__RELEASE, oldRelease, RELEASE_EDEFAULT, oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRelease() { + return releaseESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getRevision() { + return revision; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRevision( String newRevision ) { + String oldRevision = revision; + revision = newRevision; + boolean oldRevisionESet = revisionESet; + revisionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS_DOC__REVISION, oldRevision, revision, !oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRevision() { + String oldRevision = revision; + boolean oldRevisionESet = revisionESet; + revision = REVISION_EDEFAULT; + revisionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TNS_DOC__REVISION, oldRevision, REVISION_EDEFAULT, oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRevision() { + return revisionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public XMLGregorianCalendar getUmlDate() { + return umlDate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUmlDate( XMLGregorianCalendar newUmlDate ) { + XMLGregorianCalendar oldUmlDate = umlDate; + umlDate = newUmlDate; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TNS_DOC__UML_DATE, oldUmlDate, umlDate ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getUmlVersion() { + return umlVersion; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUmlVersion( String newUmlVersion ) { + String oldUmlVersion = umlVersion; + umlVersion = newUmlVersion; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS_DOC__UML_VERSION, oldUmlVersion, umlVersion ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getVersion() { + return version; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVersion( int newVersion ) { + int oldVersion = version; + version = newVersion; + boolean oldVersionESet = versionESet; + versionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS_DOC__VERSION, oldVersion, version, !oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetVersion() { + int oldVersion = version; + boolean oldVersionESet = versionESet; + version = VERSION_EDEFAULT; + versionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TNS_DOC__VERSION, oldVersion, VERSION_EDEFAULT, oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetVersion() { + return versionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TNS_DOC__DOC: + return ( ( InternalEList< ? > ) getDoc() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TNS_DOC__DOC: + return getDoc(); + case NsdPackage.TNS_DOC__ID: + return getId(); + case NsdPackage.TNS_DOC__LANG: + return getLang(); + case NsdPackage.TNS_DOC__PUBLICATION_STAGE: + return getPublicationStage(); + case NsdPackage.TNS_DOC__RELEASE: + return getRelease(); + case NsdPackage.TNS_DOC__REVISION: + return getRevision(); + case NsdPackage.TNS_DOC__UML_DATE: + return getUmlDate(); + case NsdPackage.TNS_DOC__UML_VERSION: + return getUmlVersion(); + case NsdPackage.TNS_DOC__VERSION: + return getVersion(); + } + 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 NsdPackage.TNS_DOC__DOC: + getDoc().clear(); + getDoc().addAll( ( Collection< ? extends TDoc > ) newValue ); + return; + case NsdPackage.TNS_DOC__ID: + setId( ( String ) newValue ); + return; + case NsdPackage.TNS_DOC__LANG: + setLang( ( String ) newValue ); + return; + case NsdPackage.TNS_DOC__PUBLICATION_STAGE: + setPublicationStage( ( TPubStage ) newValue ); + return; + case NsdPackage.TNS_DOC__RELEASE: + setRelease( ( Short ) newValue ); + return; + case NsdPackage.TNS_DOC__REVISION: + setRevision( ( String ) newValue ); + return; + case NsdPackage.TNS_DOC__UML_DATE: + setUmlDate( ( XMLGregorianCalendar ) newValue ); + return; + case NsdPackage.TNS_DOC__UML_VERSION: + setUmlVersion( ( String ) newValue ); + return; + case NsdPackage.TNS_DOC__VERSION: + setVersion( ( Integer ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TNS_DOC__DOC: + getDoc().clear(); + return; + case NsdPackage.TNS_DOC__ID: + setId( ID_EDEFAULT ); + return; + case NsdPackage.TNS_DOC__LANG: + setLang( LANG_EDEFAULT ); + return; + case NsdPackage.TNS_DOC__PUBLICATION_STAGE: + unsetPublicationStage(); + return; + case NsdPackage.TNS_DOC__RELEASE: + unsetRelease(); + return; + case NsdPackage.TNS_DOC__REVISION: + unsetRevision(); + return; + case NsdPackage.TNS_DOC__UML_DATE: + setUmlDate( UML_DATE_EDEFAULT ); + return; + case NsdPackage.TNS_DOC__UML_VERSION: + setUmlVersion( UML_VERSION_EDEFAULT ); + return; + case NsdPackage.TNS_DOC__VERSION: + unsetVersion(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TNS_DOC__DOC: + return doc != null && !doc.isEmpty(); + case NsdPackage.TNS_DOC__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals( id ); + case NsdPackage.TNS_DOC__LANG: + return LANG_EDEFAULT == null ? lang != null : !LANG_EDEFAULT.equals( lang ); + case NsdPackage.TNS_DOC__PUBLICATION_STAGE: + return isSetPublicationStage(); + case NsdPackage.TNS_DOC__RELEASE: + return isSetRelease(); + case NsdPackage.TNS_DOC__REVISION: + return isSetRevision(); + case NsdPackage.TNS_DOC__UML_DATE: + return UML_DATE_EDEFAULT == null ? umlDate != null : !UML_DATE_EDEFAULT.equals( umlDate ); + case NsdPackage.TNS_DOC__UML_VERSION: + return UML_VERSION_EDEFAULT == null ? umlVersion != null : !UML_VERSION_EDEFAULT.equals( umlVersion ); + case NsdPackage.TNS_DOC__VERSION: + return isSetVersion(); + } + return super.eIsSet( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if( eIsProxy() ) return super.toString(); + + StringBuilder result = new StringBuilder( super.toString() ); + result.append( " (id: " ); + result.append( id ); + result.append( ", lang: " ); + result.append( lang ); + result.append( ", publicationStage: " ); + if( publicationStageESet ) + result.append( publicationStage ); + else + result.append( "<unset>" ); + result.append( ", release: " ); + if( releaseESet ) + result.append( release ); + else + result.append( "<unset>" ); + result.append( ", revision: " ); + if( revisionESet ) + result.append( revision ); + else + result.append( "<unset>" ); + result.append( ", umlDate: " ); + result.append( umlDate ); + result.append( ", umlVersion: " ); + result.append( umlVersion ); + result.append( ", version: " ); + if( versionESet ) + result.append( version ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TNSDocImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TNSImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TNSImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..f6092e3edbc60f547bf26ac27d24c90c593808d8 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TNSImpl.java @@ -0,0 +1,1482 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage; + +import javax.xml.datatype.XMLGregorianCalendar; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TNS</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getChanges <em>Changes</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getDependsOn <em>Depends On</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getBasicTypes <em>Basic Types</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getFunctionalConstraints <em>Functional Constraints</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getPresenceConditions <em>Presence Conditions</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getAbbreviations <em>Abbreviations</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getEnumerations <em>Enumerations</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getConstructedAttributes <em>Constructed Attributes</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getCDCs <em>CD Cs</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getLNClasses <em>LN Classes</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getUmlDate <em>Uml Date</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getUmlVersion <em>Uml Version</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNSImpl#getVersion <em>Version</em>}</li> + * </ul> + * + * @generated + */ +public class TNSImpl extends TCopyrightedImpl implements TNS { + /** + * The cached value of the '{@link #getChanges() <em>Changes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getChanges() + * @generated + * @ordered + */ + protected TChanges changes; + + /** + * The cached value of the '{@link #getDependsOn() <em>Depends On</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDependsOn() + * @generated + * @ordered + */ + protected DependsOnType dependsOn; + + /** + * The cached value of the '{@link #getBasicTypes() <em>Basic Types</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBasicTypes() + * @generated + * @ordered + */ + protected TBasicTypes basicTypes; + + /** + * The cached value of the '{@link #getFunctionalConstraints() <em>Functional Constraints</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFunctionalConstraints() + * @generated + * @ordered + */ + protected TFunctionalConstraints functionalConstraints; + + /** + * The cached value of the '{@link #getPresenceConditions() <em>Presence Conditions</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresenceConditions() + * @generated + * @ordered + */ + protected TPresenceConditions presenceConditions; + + /** + * The cached value of the '{@link #getAbbreviations() <em>Abbreviations</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAbbreviations() + * @generated + * @ordered + */ + protected TAbbreviations abbreviations; + + /** + * The cached value of the '{@link #getEnumerations() <em>Enumerations</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEnumerations() + * @generated + * @ordered + */ + protected TEnumerations enumerations; + + /** + * The cached value of the '{@link #getConstructedAttributes() <em>Constructed Attributes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getConstructedAttributes() + * @generated + * @ordered + */ + protected TConstructedAttributes constructedAttributes; + + /** + * The cached value of the '{@link #getCDCs() <em>CD Cs</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCDCs() + * @generated + * @ordered + */ + protected TCDCs cDCs; + + /** + * The cached value of the '{@link #getLNClasses() <em>LN Classes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLNClasses() + * @generated + * @ordered + */ + protected TLNClasses lNClasses; + + /** + * The default value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected static final String DESC_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected String descID = DESC_ID_EDEFAULT; + + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * The default value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected static final TPubStage PUBLICATION_STAGE_EDEFAULT = TPubStage.IS; + + /** + * The cached value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected TPubStage publicationStage = PUBLICATION_STAGE_EDEFAULT; + + /** + * This is true if the Publication Stage attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean publicationStageESet; + + /** + * The default value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected static final short RELEASE_EDEFAULT = 1; + + /** + * The cached value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected short release = RELEASE_EDEFAULT; + + /** + * This is true if the Release attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean releaseESet; + + /** + * The default value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected static final String REVISION_EDEFAULT = "A"; + + /** + * The cached value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected String revision = REVISION_EDEFAULT; + + /** + * This is true if the Revision attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean revisionESet; + + /** + * The default value of the '{@link #getUmlDate() <em>Uml Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlDate() + * @generated + * @ordered + */ + protected static final XMLGregorianCalendar UML_DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUmlDate() <em>Uml Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlDate() + * @generated + * @ordered + */ + protected XMLGregorianCalendar umlDate = UML_DATE_EDEFAULT; + + /** + * The default value of the '{@link #getUmlVersion() <em>Uml Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlVersion() + * @generated + * @ordered + */ + protected static final String UML_VERSION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUmlVersion() <em>Uml Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlVersion() + * @generated + * @ordered + */ + protected String umlVersion = UML_VERSION_EDEFAULT; + + /** + * The default value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected static final int VERSION_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected int version = VERSION_EDEFAULT; + + /** + * This is true if the Version attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean versionESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TNSImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TNS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TChanges getChanges() { + return changes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetChanges( TChanges newChanges, NotificationChain msgs ) { + TChanges oldChanges = changes; + changes = newChanges; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__CHANGES, + oldChanges, newChanges ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setChanges( TChanges newChanges ) { + if( newChanges != changes ) { + NotificationChain msgs = null; + if( changes != null ) msgs = ( ( InternalEObject ) changes ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__CHANGES, null, msgs ); + if( newChanges != null ) msgs = ( ( InternalEObject ) newChanges ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__CHANGES, null, msgs ); + msgs = basicSetChanges( newChanges, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__CHANGES, newChanges, newChanges ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public DependsOnType getDependsOn() { + return dependsOn; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetDependsOn( DependsOnType newDependsOn, NotificationChain msgs ) { + DependsOnType oldDependsOn = dependsOn; + dependsOn = newDependsOn; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__DEPENDS_ON, + oldDependsOn, newDependsOn ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDependsOn( DependsOnType newDependsOn ) { + if( newDependsOn != dependsOn ) { + NotificationChain msgs = null; + if( dependsOn != null ) msgs = ( ( InternalEObject ) dependsOn ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__DEPENDS_ON, null, msgs ); + if( newDependsOn != null ) msgs = ( ( InternalEObject ) newDependsOn ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__DEPENDS_ON, null, msgs ); + msgs = basicSetDependsOn( newDependsOn, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__DEPENDS_ON, newDependsOn, newDependsOn ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TBasicTypes getBasicTypes() { + return basicTypes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetBasicTypes( TBasicTypes newBasicTypes, NotificationChain msgs ) { + TBasicTypes oldBasicTypes = basicTypes; + basicTypes = newBasicTypes; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__BASIC_TYPES, + oldBasicTypes, newBasicTypes ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setBasicTypes( TBasicTypes newBasicTypes ) { + if( newBasicTypes != basicTypes ) { + NotificationChain msgs = null; + if( basicTypes != null ) msgs = ( ( InternalEObject ) basicTypes ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__BASIC_TYPES, null, msgs ); + if( newBasicTypes != null ) msgs = ( ( InternalEObject ) newBasicTypes ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__BASIC_TYPES, null, msgs ); + msgs = basicSetBasicTypes( newBasicTypes, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__BASIC_TYPES, newBasicTypes, newBasicTypes ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TFunctionalConstraints getFunctionalConstraints() { + return functionalConstraints; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetFunctionalConstraints( TFunctionalConstraints newFunctionalConstraints, + NotificationChain msgs ) { + TFunctionalConstraints oldFunctionalConstraints = functionalConstraints; + functionalConstraints = newFunctionalConstraints; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__FUNCTIONAL_CONSTRAINTS, oldFunctionalConstraints, newFunctionalConstraints ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFunctionalConstraints( TFunctionalConstraints newFunctionalConstraints ) { + if( newFunctionalConstraints != functionalConstraints ) { + NotificationChain msgs = null; + if( functionalConstraints != null ) + msgs = ( ( InternalEObject ) functionalConstraints ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__FUNCTIONAL_CONSTRAINTS, null, msgs ); + if( newFunctionalConstraints != null ) msgs = ( ( InternalEObject ) newFunctionalConstraints ) + .eInverseAdd( this, EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__FUNCTIONAL_CONSTRAINTS, null, msgs ); + msgs = basicSetFunctionalConstraints( newFunctionalConstraints, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__FUNCTIONAL_CONSTRAINTS, newFunctionalConstraints, newFunctionalConstraints ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TPresenceConditions getPresenceConditions() { + return presenceConditions; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPresenceConditions( TPresenceConditions newPresenceConditions, + NotificationChain msgs ) { + TPresenceConditions oldPresenceConditions = presenceConditions; + presenceConditions = newPresenceConditions; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__PRESENCE_CONDITIONS, oldPresenceConditions, newPresenceConditions ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresenceConditions( TPresenceConditions newPresenceConditions ) { + if( newPresenceConditions != presenceConditions ) { + NotificationChain msgs = null; + if( presenceConditions != null ) msgs = ( ( InternalEObject ) presenceConditions ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__PRESENCE_CONDITIONS, null, msgs ); + if( newPresenceConditions != null ) msgs = ( ( InternalEObject ) newPresenceConditions ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__PRESENCE_CONDITIONS, null, msgs ); + msgs = basicSetPresenceConditions( newPresenceConditions, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__PRESENCE_CONDITIONS, newPresenceConditions, newPresenceConditions ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TAbbreviations getAbbreviations() { + return abbreviations; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetAbbreviations( TAbbreviations newAbbreviations, NotificationChain msgs ) { + TAbbreviations oldAbbreviations = abbreviations; + abbreviations = newAbbreviations; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__ABBREVIATIONS, oldAbbreviations, newAbbreviations ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setAbbreviations( TAbbreviations newAbbreviations ) { + if( newAbbreviations != abbreviations ) { + NotificationChain msgs = null; + if( abbreviations != null ) msgs = ( ( InternalEObject ) abbreviations ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__ABBREVIATIONS, null, msgs ); + if( newAbbreviations != null ) msgs = ( ( InternalEObject ) newAbbreviations ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__ABBREVIATIONS, null, msgs ); + msgs = basicSetAbbreviations( newAbbreviations, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__ABBREVIATIONS, newAbbreviations, newAbbreviations ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TEnumerations getEnumerations() { + return enumerations; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetEnumerations( TEnumerations newEnumerations, NotificationChain msgs ) { + TEnumerations oldEnumerations = enumerations; + enumerations = newEnumerations; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__ENUMERATIONS, oldEnumerations, newEnumerations ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setEnumerations( TEnumerations newEnumerations ) { + if( newEnumerations != enumerations ) { + NotificationChain msgs = null; + if( enumerations != null ) msgs = ( ( InternalEObject ) enumerations ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__ENUMERATIONS, null, msgs ); + if( newEnumerations != null ) msgs = ( ( InternalEObject ) newEnumerations ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__ENUMERATIONS, null, msgs ); + msgs = basicSetEnumerations( newEnumerations, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__ENUMERATIONS, newEnumerations, newEnumerations ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TConstructedAttributes getConstructedAttributes() { + return constructedAttributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetConstructedAttributes( TConstructedAttributes newConstructedAttributes, + NotificationChain msgs ) { + TConstructedAttributes oldConstructedAttributes = constructedAttributes; + constructedAttributes = newConstructedAttributes; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__CONSTRUCTED_ATTRIBUTES, oldConstructedAttributes, newConstructedAttributes ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setConstructedAttributes( TConstructedAttributes newConstructedAttributes ) { + if( newConstructedAttributes != constructedAttributes ) { + NotificationChain msgs = null; + if( constructedAttributes != null ) + msgs = ( ( InternalEObject ) constructedAttributes ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__CONSTRUCTED_ATTRIBUTES, null, msgs ); + if( newConstructedAttributes != null ) msgs = ( ( InternalEObject ) newConstructedAttributes ) + .eInverseAdd( this, EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__CONSTRUCTED_ATTRIBUTES, null, msgs ); + msgs = basicSetConstructedAttributes( newConstructedAttributes, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__CONSTRUCTED_ATTRIBUTES, newConstructedAttributes, newConstructedAttributes ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TCDCs getCDCs() { + return cDCs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetCDCs( TCDCs newCDCs, NotificationChain msgs ) { + TCDCs oldCDCs = cDCs; + cDCs = newCDCs; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__CD_CS, + oldCDCs, newCDCs ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setCDCs( TCDCs newCDCs ) { + if( newCDCs != cDCs ) { + NotificationChain msgs = null; + if( cDCs != null ) msgs = ( ( InternalEObject ) cDCs ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__CD_CS, null, msgs ); + if( newCDCs != null ) msgs = ( ( InternalEObject ) newCDCs ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__CD_CS, null, msgs ); + msgs = basicSetCDCs( newCDCs, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__CD_CS, newCDCs, newCDCs ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TLNClasses getLNClasses() { + return lNClasses; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetLNClasses( TLNClasses newLNClasses, NotificationChain msgs ) { + TLNClasses oldLNClasses = lNClasses; + lNClasses = newLNClasses; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__LN_CLASSES, + oldLNClasses, newLNClasses ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setLNClasses( TLNClasses newLNClasses ) { + if( newLNClasses != lNClasses ) { + NotificationChain msgs = null; + if( lNClasses != null ) msgs = ( ( InternalEObject ) lNClasses ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__LN_CLASSES, null, msgs ); + if( newLNClasses != null ) msgs = ( ( InternalEObject ) newLNClasses ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TNS__LN_CLASSES, null, msgs ); + msgs = basicSetLNClasses( newLNClasses, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__LN_CLASSES, newLNClasses, newLNClasses ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDescID() { + return descID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDescID( String newDescID ) { + String oldDescID = descID; + descID = newDescID; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__DESC_ID, oldDescID, descID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setId( String newId ) { + String oldId = id; + id = newId; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__ID, oldId, id ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TPubStage getPublicationStage() { + return publicationStage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPublicationStage( TPubStage newPublicationStage ) { + TPubStage oldPublicationStage = publicationStage; + publicationStage = newPublicationStage == null ? PUBLICATION_STAGE_EDEFAULT : newPublicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStageESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__PUBLICATION_STAGE, oldPublicationStage, publicationStage, !oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPublicationStage() { + TPubStage oldPublicationStage = publicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStage = PUBLICATION_STAGE_EDEFAULT; + publicationStageESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.TNS__PUBLICATION_STAGE, + oldPublicationStage, PUBLICATION_STAGE_EDEFAULT, oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPublicationStage() { + return publicationStageESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public short getRelease() { + return release; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRelease( short newRelease ) { + short oldRelease = release; + release = newRelease; + boolean oldReleaseESet = releaseESet; + releaseESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__RELEASE, + oldRelease, release, !oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRelease() { + short oldRelease = release; + boolean oldReleaseESet = releaseESet; + release = RELEASE_EDEFAULT; + releaseESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.TNS__RELEASE, + oldRelease, RELEASE_EDEFAULT, oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRelease() { + return releaseESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getRevision() { + return revision; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRevision( String newRevision ) { + String oldRevision = revision; + revision = newRevision; + boolean oldRevisionESet = revisionESet; + revisionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__REVISION, + oldRevision, revision, !oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRevision() { + String oldRevision = revision; + boolean oldRevisionESet = revisionESet; + revision = REVISION_EDEFAULT; + revisionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TNS__REVISION, oldRevision, REVISION_EDEFAULT, oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRevision() { + return revisionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public XMLGregorianCalendar getUmlDate() { + return umlDate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUmlDate( XMLGregorianCalendar newUmlDate ) { + XMLGregorianCalendar oldUmlDate = umlDate; + umlDate = newUmlDate; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__UML_DATE, oldUmlDate, umlDate ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getUmlVersion() { + return umlVersion; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUmlVersion( String newUmlVersion ) { + String oldUmlVersion = umlVersion; + umlVersion = newUmlVersion; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TNS__UML_VERSION, oldUmlVersion, umlVersion ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getVersion() { + return version; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVersion( int newVersion ) { + int oldVersion = version; + version = newVersion; + boolean oldVersionESet = versionESet; + versionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TNS__VERSION, + oldVersion, version, !oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetVersion() { + int oldVersion = version; + boolean oldVersionESet = versionESet; + version = VERSION_EDEFAULT; + versionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.TNS__VERSION, + oldVersion, VERSION_EDEFAULT, oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetVersion() { + return versionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TNS__CHANGES: + return basicSetChanges( null, msgs ); + case NsdPackage.TNS__DEPENDS_ON: + return basicSetDependsOn( null, msgs ); + case NsdPackage.TNS__BASIC_TYPES: + return basicSetBasicTypes( null, msgs ); + case NsdPackage.TNS__FUNCTIONAL_CONSTRAINTS: + return basicSetFunctionalConstraints( null, msgs ); + case NsdPackage.TNS__PRESENCE_CONDITIONS: + return basicSetPresenceConditions( null, msgs ); + case NsdPackage.TNS__ABBREVIATIONS: + return basicSetAbbreviations( null, msgs ); + case NsdPackage.TNS__ENUMERATIONS: + return basicSetEnumerations( null, msgs ); + case NsdPackage.TNS__CONSTRUCTED_ATTRIBUTES: + return basicSetConstructedAttributes( null, msgs ); + case NsdPackage.TNS__CD_CS: + return basicSetCDCs( null, msgs ); + case NsdPackage.TNS__LN_CLASSES: + return basicSetLNClasses( null, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TNS__CHANGES: + return getChanges(); + case NsdPackage.TNS__DEPENDS_ON: + return getDependsOn(); + case NsdPackage.TNS__BASIC_TYPES: + return getBasicTypes(); + case NsdPackage.TNS__FUNCTIONAL_CONSTRAINTS: + return getFunctionalConstraints(); + case NsdPackage.TNS__PRESENCE_CONDITIONS: + return getPresenceConditions(); + case NsdPackage.TNS__ABBREVIATIONS: + return getAbbreviations(); + case NsdPackage.TNS__ENUMERATIONS: + return getEnumerations(); + case NsdPackage.TNS__CONSTRUCTED_ATTRIBUTES: + return getConstructedAttributes(); + case NsdPackage.TNS__CD_CS: + return getCDCs(); + case NsdPackage.TNS__LN_CLASSES: + return getLNClasses(); + case NsdPackage.TNS__DESC_ID: + return getDescID(); + case NsdPackage.TNS__ID: + return getId(); + case NsdPackage.TNS__PUBLICATION_STAGE: + return getPublicationStage(); + case NsdPackage.TNS__RELEASE: + return getRelease(); + case NsdPackage.TNS__REVISION: + return getRevision(); + case NsdPackage.TNS__UML_DATE: + return getUmlDate(); + case NsdPackage.TNS__UML_VERSION: + return getUmlVersion(); + case NsdPackage.TNS__VERSION: + return getVersion(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TNS__CHANGES: + setChanges( ( TChanges ) newValue ); + return; + case NsdPackage.TNS__DEPENDS_ON: + setDependsOn( ( DependsOnType ) newValue ); + return; + case NsdPackage.TNS__BASIC_TYPES: + setBasicTypes( ( TBasicTypes ) newValue ); + return; + case NsdPackage.TNS__FUNCTIONAL_CONSTRAINTS: + setFunctionalConstraints( ( TFunctionalConstraints ) newValue ); + return; + case NsdPackage.TNS__PRESENCE_CONDITIONS: + setPresenceConditions( ( TPresenceConditions ) newValue ); + return; + case NsdPackage.TNS__ABBREVIATIONS: + setAbbreviations( ( TAbbreviations ) newValue ); + return; + case NsdPackage.TNS__ENUMERATIONS: + setEnumerations( ( TEnumerations ) newValue ); + return; + case NsdPackage.TNS__CONSTRUCTED_ATTRIBUTES: + setConstructedAttributes( ( TConstructedAttributes ) newValue ); + return; + case NsdPackage.TNS__CD_CS: + setCDCs( ( TCDCs ) newValue ); + return; + case NsdPackage.TNS__LN_CLASSES: + setLNClasses( ( TLNClasses ) newValue ); + return; + case NsdPackage.TNS__DESC_ID: + setDescID( ( String ) newValue ); + return; + case NsdPackage.TNS__ID: + setId( ( String ) newValue ); + return; + case NsdPackage.TNS__PUBLICATION_STAGE: + setPublicationStage( ( TPubStage ) newValue ); + return; + case NsdPackage.TNS__RELEASE: + setRelease( ( Short ) newValue ); + return; + case NsdPackage.TNS__REVISION: + setRevision( ( String ) newValue ); + return; + case NsdPackage.TNS__UML_DATE: + setUmlDate( ( XMLGregorianCalendar ) newValue ); + return; + case NsdPackage.TNS__UML_VERSION: + setUmlVersion( ( String ) newValue ); + return; + case NsdPackage.TNS__VERSION: + setVersion( ( Integer ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TNS__CHANGES: + setChanges( ( TChanges ) null ); + return; + case NsdPackage.TNS__DEPENDS_ON: + setDependsOn( ( DependsOnType ) null ); + return; + case NsdPackage.TNS__BASIC_TYPES: + setBasicTypes( ( TBasicTypes ) null ); + return; + case NsdPackage.TNS__FUNCTIONAL_CONSTRAINTS: + setFunctionalConstraints( ( TFunctionalConstraints ) null ); + return; + case NsdPackage.TNS__PRESENCE_CONDITIONS: + setPresenceConditions( ( TPresenceConditions ) null ); + return; + case NsdPackage.TNS__ABBREVIATIONS: + setAbbreviations( ( TAbbreviations ) null ); + return; + case NsdPackage.TNS__ENUMERATIONS: + setEnumerations( ( TEnumerations ) null ); + return; + case NsdPackage.TNS__CONSTRUCTED_ATTRIBUTES: + setConstructedAttributes( ( TConstructedAttributes ) null ); + return; + case NsdPackage.TNS__CD_CS: + setCDCs( ( TCDCs ) null ); + return; + case NsdPackage.TNS__LN_CLASSES: + setLNClasses( ( TLNClasses ) null ); + return; + case NsdPackage.TNS__DESC_ID: + setDescID( DESC_ID_EDEFAULT ); + return; + case NsdPackage.TNS__ID: + setId( ID_EDEFAULT ); + return; + case NsdPackage.TNS__PUBLICATION_STAGE: + unsetPublicationStage(); + return; + case NsdPackage.TNS__RELEASE: + unsetRelease(); + return; + case NsdPackage.TNS__REVISION: + unsetRevision(); + return; + case NsdPackage.TNS__UML_DATE: + setUmlDate( UML_DATE_EDEFAULT ); + return; + case NsdPackage.TNS__UML_VERSION: + setUmlVersion( UML_VERSION_EDEFAULT ); + return; + case NsdPackage.TNS__VERSION: + unsetVersion(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TNS__CHANGES: + return changes != null; + case NsdPackage.TNS__DEPENDS_ON: + return dependsOn != null; + case NsdPackage.TNS__BASIC_TYPES: + return basicTypes != null; + case NsdPackage.TNS__FUNCTIONAL_CONSTRAINTS: + return functionalConstraints != null; + case NsdPackage.TNS__PRESENCE_CONDITIONS: + return presenceConditions != null; + case NsdPackage.TNS__ABBREVIATIONS: + return abbreviations != null; + case NsdPackage.TNS__ENUMERATIONS: + return enumerations != null; + case NsdPackage.TNS__CONSTRUCTED_ATTRIBUTES: + return constructedAttributes != null; + case NsdPackage.TNS__CD_CS: + return cDCs != null; + case NsdPackage.TNS__LN_CLASSES: + return lNClasses != null; + case NsdPackage.TNS__DESC_ID: + return DESC_ID_EDEFAULT == null ? descID != null : !DESC_ID_EDEFAULT.equals( descID ); + case NsdPackage.TNS__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals( id ); + case NsdPackage.TNS__PUBLICATION_STAGE: + return isSetPublicationStage(); + case NsdPackage.TNS__RELEASE: + return isSetRelease(); + case NsdPackage.TNS__REVISION: + return isSetRevision(); + case NsdPackage.TNS__UML_DATE: + return UML_DATE_EDEFAULT == null ? umlDate != null : !UML_DATE_EDEFAULT.equals( umlDate ); + case NsdPackage.TNS__UML_VERSION: + return UML_VERSION_EDEFAULT == null ? umlVersion != null : !UML_VERSION_EDEFAULT.equals( umlVersion ); + case NsdPackage.TNS__VERSION: + return isSetVersion(); + } + 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( " (descID: " ); + result.append( descID ); + result.append( ", id: " ); + result.append( id ); + result.append( ", publicationStage: " ); + if( publicationStageESet ) + result.append( publicationStage ); + else + result.append( "<unset>" ); + result.append( ", release: " ); + if( releaseESet ) + result.append( release ); + else + result.append( "<unset>" ); + result.append( ", revision: " ); + if( revisionESet ) + result.append( revision ); + else + result.append( "<unset>" ); + result.append( ", umlDate: " ); + result.append( umlDate ); + result.append( ", umlVersion: " ); + result.append( umlVersion ); + result.append( ", version: " ); + if( versionESet ) + result.append( version ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TNSImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TNoticeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TNoticeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..70620bf40827d3adef5c12af921fd02e7dafffc1 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TNoticeImpl.java @@ -0,0 +1,181 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.BasicFeatureMap; +import org.eclipse.emf.ecore.util.FeatureMap; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TNotice</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TNoticeImpl#getMixed <em>Mixed</em>}</li> + * </ul> + * + * @generated + */ +public class TNoticeImpl extends MinimalEObjectImpl.Container implements TNotice { + /** + * The cached value of the '{@link #getMixed() <em>Mixed</em>}' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMixed() + * @generated + * @ordered + */ + protected FeatureMap mixed; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TNoticeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TNOTICE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FeatureMap getMixed() { + if( mixed == null ) { + mixed = new BasicFeatureMap( this, NsdPackage.TNOTICE__MIXED ); + } + return mixed; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TNOTICE__MIXED: + return ( ( InternalEList< ? > ) getMixed() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TNOTICE__MIXED: + if( coreType ) return getMixed(); + return ( ( FeatureMap.Internal ) getMixed() ).getWrapper(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TNOTICE__MIXED: + ( ( FeatureMap.Internal ) getMixed() ).set( newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TNOTICE__MIXED: + getMixed().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TNOTICE__MIXED: + return mixed != null && !mixed.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( " (mixed: " ); + result.append( mixed ); + result.append( ')' ); + return result.toString(); + } + +} //TNoticeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TPresenceConditionImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TPresenceConditionImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..59e263b10c24b8880809aaaf5baa44023e1b36e9 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TPresenceConditionImpl.java @@ -0,0 +1,350 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TPresence Condition</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionImpl#getArgument <em>Argument</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionImpl#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionImpl#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionImpl#getTitleID <em>Title ID</em>}</li> + * </ul> + * + * @generated + */ +public class TPresenceConditionImpl extends MinimalEObjectImpl.Container implements TPresenceCondition { + /** + * The default value of the '{@link #getArgument() <em>Argument</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getArgument() + * @generated + * @ordered + */ + protected static final String ARGUMENT_EDEFAULT = null; + + /** + * The cached value of the '{@link #getArgument() <em>Argument</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getArgument() + * @generated + * @ordered + */ + protected String argument = ARGUMENT_EDEFAULT; + + /** + * The default value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected static final String DESC_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected String descID = DESC_ID_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getTitleID() <em>Title ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTitleID() + * @generated + * @ordered + */ + protected static final String TITLE_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTitleID() <em>Title ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTitleID() + * @generated + * @ordered + */ + protected String titleID = TITLE_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TPresenceConditionImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TPRESENCE_CONDITION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getArgument() { + return argument; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setArgument( String newArgument ) { + String oldArgument = argument; + argument = newArgument; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TPRESENCE_CONDITION__ARGUMENT, oldArgument, argument ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDescID() { + return descID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDescID( String newDescID ) { + String oldDescID = descID; + descID = newDescID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TPRESENCE_CONDITION__DESC_ID, oldDescID, descID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TPRESENCE_CONDITION__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getTitleID() { + return titleID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTitleID( String newTitleID ) { + String oldTitleID = titleID; + titleID = newTitleID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TPRESENCE_CONDITION__TITLE_ID, oldTitleID, titleID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TPRESENCE_CONDITION__ARGUMENT: + return getArgument(); + case NsdPackage.TPRESENCE_CONDITION__DESC_ID: + return getDescID(); + case NsdPackage.TPRESENCE_CONDITION__NAME: + return getName(); + case NsdPackage.TPRESENCE_CONDITION__TITLE_ID: + return getTitleID(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TPRESENCE_CONDITION__ARGUMENT: + setArgument( ( String ) newValue ); + return; + case NsdPackage.TPRESENCE_CONDITION__DESC_ID: + setDescID( ( String ) newValue ); + return; + case NsdPackage.TPRESENCE_CONDITION__NAME: + setName( ( String ) newValue ); + return; + case NsdPackage.TPRESENCE_CONDITION__TITLE_ID: + setTitleID( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TPRESENCE_CONDITION__ARGUMENT: + setArgument( ARGUMENT_EDEFAULT ); + return; + case NsdPackage.TPRESENCE_CONDITION__DESC_ID: + setDescID( DESC_ID_EDEFAULT ); + return; + case NsdPackage.TPRESENCE_CONDITION__NAME: + setName( NAME_EDEFAULT ); + return; + case NsdPackage.TPRESENCE_CONDITION__TITLE_ID: + setTitleID( TITLE_ID_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TPRESENCE_CONDITION__ARGUMENT: + return ARGUMENT_EDEFAULT == null ? argument != null : !ARGUMENT_EDEFAULT.equals( argument ); + case NsdPackage.TPRESENCE_CONDITION__DESC_ID: + return DESC_ID_EDEFAULT == null ? descID != null : !DESC_ID_EDEFAULT.equals( descID ); + case NsdPackage.TPRESENCE_CONDITION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + case NsdPackage.TPRESENCE_CONDITION__TITLE_ID: + return TITLE_ID_EDEFAULT == null ? titleID != null : !TITLE_ID_EDEFAULT.equals( titleID ); + } + 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( " (argument: " ); + result.append( argument ); + result.append( ", descID: " ); + result.append( descID ); + result.append( ", name: " ); + result.append( name ); + result.append( ", titleID: " ); + result.append( titleID ); + result.append( ')' ); + return result.toString(); + } + +} //TPresenceConditionImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TPresenceConditionsImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TPresenceConditionsImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..44e6718dc697f4ca4e4e89ef23b889c3f01f4125 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TPresenceConditionsImpl.java @@ -0,0 +1,171 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TPresence Conditions</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TPresenceConditionsImpl#getPresenceCondition <em>Presence Condition</em>}</li> + * </ul> + * + * @generated + */ +public class TPresenceConditionsImpl extends MinimalEObjectImpl.Container implements TPresenceConditions { + /** + * The cached value of the '{@link #getPresenceCondition() <em>Presence Condition</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresenceCondition() + * @generated + * @ordered + */ + protected EList< TPresenceCondition > presenceCondition; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TPresenceConditionsImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TPRESENCE_CONDITIONS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TPresenceCondition > getPresenceCondition() { + if( presenceCondition == null ) { + presenceCondition = new EObjectContainmentEList< TPresenceCondition >( TPresenceCondition.class, this, + NsdPackage.TPRESENCE_CONDITIONS__PRESENCE_CONDITION ); + } + return presenceCondition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TPRESENCE_CONDITIONS__PRESENCE_CONDITION: + return ( ( InternalEList< ? > ) getPresenceCondition() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TPRESENCE_CONDITIONS__PRESENCE_CONDITION: + return getPresenceCondition(); + } + 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 NsdPackage.TPRESENCE_CONDITIONS__PRESENCE_CONDITION: + getPresenceCondition().clear(); + getPresenceCondition().addAll( ( Collection< ? extends TPresenceCondition > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TPRESENCE_CONDITIONS__PRESENCE_CONDITION: + getPresenceCondition().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TPRESENCE_CONDITIONS__PRESENCE_CONDITION: + return presenceCondition != null && !presenceCondition.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TPresenceConditionsImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceCDCImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceCDCImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..9efad16279cc3cd099838a4cb9102113d0b6d151 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceCDCImpl.java @@ -0,0 +1,299 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TService CDC</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCImpl#getServiceDataAttribute <em>Service Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCImpl#getCdc <em>Cdc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCImpl#getVariant <em>Variant</em>}</li> + * </ul> + * + * @generated + */ +public class TServiceCDCImpl extends MinimalEObjectImpl.Container implements TServiceCDC { + /** + * The cached value of the '{@link #getServiceDataAttribute() <em>Service Data Attribute</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getServiceDataAttribute() + * @generated + * @ordered + */ + protected EList< TServiceDataAttribute > serviceDataAttribute; + + /** + * The default value of the '{@link #getCdc() <em>Cdc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCdc() + * @generated + * @ordered + */ + protected static final String CDC_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCdc() <em>Cdc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCdc() + * @generated + * @ordered + */ + protected String cdc = CDC_EDEFAULT; + + /** + * The default value of the '{@link #getVariant() <em>Variant</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVariant() + * @generated + * @ordered + */ + protected static final String VARIANT_EDEFAULT = null; + + /** + * The cached value of the '{@link #getVariant() <em>Variant</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVariant() + * @generated + * @ordered + */ + protected String variant = VARIANT_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceCDCImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSERVICE_CDC; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TServiceDataAttribute > getServiceDataAttribute() { + if( serviceDataAttribute == null ) { + serviceDataAttribute = new EObjectContainmentEList< TServiceDataAttribute >( TServiceDataAttribute.class, + this, NsdPackage.TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE ); + } + return serviceDataAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getCdc() { + return cdc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setCdc( String newCdc ) { + String oldCdc = cdc; + cdc = newCdc; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_CDC__CDC, oldCdc, cdc ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getVariant() { + return variant; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVariant( String newVariant ) { + String oldVariant = variant; + variant = newVariant; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_CDC__VARIANT, oldVariant, variant ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE: + return ( ( InternalEList< ? > ) getServiceDataAttribute() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE: + return getServiceDataAttribute(); + case NsdPackage.TSERVICE_CDC__CDC: + return getCdc(); + case NsdPackage.TSERVICE_CDC__VARIANT: + return getVariant(); + } + 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 NsdPackage.TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE: + getServiceDataAttribute().clear(); + getServiceDataAttribute().addAll( ( Collection< ? extends TServiceDataAttribute > ) newValue ); + return; + case NsdPackage.TSERVICE_CDC__CDC: + setCdc( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_CDC__VARIANT: + setVariant( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE: + getServiceDataAttribute().clear(); + return; + case NsdPackage.TSERVICE_CDC__CDC: + setCdc( CDC_EDEFAULT ); + return; + case NsdPackage.TSERVICE_CDC__VARIANT: + setVariant( VARIANT_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CDC__SERVICE_DATA_ATTRIBUTE: + return serviceDataAttribute != null && !serviceDataAttribute.isEmpty(); + case NsdPackage.TSERVICE_CDC__CDC: + return CDC_EDEFAULT == null ? cdc != null : !CDC_EDEFAULT.equals( cdc ); + case NsdPackage.TSERVICE_CDC__VARIANT: + return VARIANT_EDEFAULT == null ? variant != null : !VARIANT_EDEFAULT.equals( variant ); + } + 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( " (cdc: " ); + result.append( cdc ); + result.append( ", variant: " ); + result.append( variant ); + result.append( ')' ); + return result.toString(); + } + +} //TServiceCDCImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceCDCsImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceCDCsImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..ebb31d10ccad68f221ad80e22cab939b3ca3b969 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceCDCsImpl.java @@ -0,0 +1,171 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TService CD Cs</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceCDCsImpl#getServiceCDC <em>Service CDC</em>}</li> + * </ul> + * + * @generated + */ +public class TServiceCDCsImpl extends MinimalEObjectImpl.Container implements TServiceCDCs { + /** + * The cached value of the '{@link #getServiceCDC() <em>Service CDC</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getServiceCDC() + * @generated + * @ordered + */ + protected EList< TServiceCDC > serviceCDC; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceCDCsImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSERVICE_CD_CS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TServiceCDC > getServiceCDC() { + if( serviceCDC == null ) { + serviceCDC = new EObjectContainmentEList< TServiceCDC >( TServiceCDC.class, this, + NsdPackage.TSERVICE_CD_CS__SERVICE_CDC ); + } + return serviceCDC; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CD_CS__SERVICE_CDC: + return ( ( InternalEList< ? > ) getServiceCDC() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CD_CS__SERVICE_CDC: + return getServiceCDC(); + } + 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 NsdPackage.TSERVICE_CD_CS__SERVICE_CDC: + getServiceCDC().clear(); + getServiceCDC().addAll( ( Collection< ? extends TServiceCDC > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CD_CS__SERVICE_CDC: + getServiceCDC().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CD_CS__SERVICE_CDC: + return serviceCDC != null && !serviceCDC.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TServiceCDCsImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceConstructedAttributeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceConstructedAttributeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..af16e9b33ba69d2027dc1eb06ed976972804ac98 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceConstructedAttributeImpl.java @@ -0,0 +1,223 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TService Constructed Attribute</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceConstructedAttributeImpl#isTypeKindParameterized <em>Type Kind Parameterized</em>}</li> + * </ul> + * + * @generated + */ +public class TServiceConstructedAttributeImpl extends TConstructedAttributeImpl + implements TServiceConstructedAttribute { + /** + * The default value of the '{@link #isTypeKindParameterized() <em>Type Kind Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isTypeKindParameterized() + * @generated + * @ordered + */ + protected static final boolean TYPE_KIND_PARAMETERIZED_EDEFAULT = false; + + /** + * The cached value of the '{@link #isTypeKindParameterized() <em>Type Kind Parameterized</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isTypeKindParameterized() + * @generated + * @ordered + */ + protected boolean typeKindParameterized = TYPE_KIND_PARAMETERIZED_EDEFAULT; + + /** + * This is true if the Type Kind Parameterized attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean typeKindParameterizedESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceConstructedAttributeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSERVICE_CONSTRUCTED_ATTRIBUTE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isTypeKindParameterized() { + return typeKindParameterized; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTypeKindParameterized( boolean newTypeKindParameterized ) { + boolean oldTypeKindParameterized = typeKindParameterized; + typeKindParameterized = newTypeKindParameterized; + boolean oldTypeKindParameterizedESet = typeKindParameterizedESet; + typeKindParameterizedESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED, oldTypeKindParameterized, + typeKindParameterized, !oldTypeKindParameterizedESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetTypeKindParameterized() { + boolean oldTypeKindParameterized = typeKindParameterized; + boolean oldTypeKindParameterizedESet = typeKindParameterizedESet; + typeKindParameterized = TYPE_KIND_PARAMETERIZED_EDEFAULT; + typeKindParameterizedESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED, oldTypeKindParameterized, + TYPE_KIND_PARAMETERIZED_EDEFAULT, oldTypeKindParameterizedESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetTypeKindParameterized() { + return typeKindParameterizedESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED: + return isTypeKindParameterized(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED: + setTypeKindParameterized( ( Boolean ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED: + unsetTypeKindParameterized(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTE__TYPE_KIND_PARAMETERIZED: + return isSetTypeKindParameterized(); + } + 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( " (typeKindParameterized: " ); + if( typeKindParameterizedESet ) + result.append( typeKindParameterized ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TServiceConstructedAttributeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceConstructedAttributesImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceConstructedAttributesImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..38e53d2af49547a16a423dedb085efe6f629e927 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceConstructedAttributesImpl.java @@ -0,0 +1,174 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TService Constructed Attributes</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceConstructedAttributesImpl#getServiceConstructedAttribute <em>Service Constructed Attribute</em>}</li> + * </ul> + * + * @generated + */ +public class TServiceConstructedAttributesImpl extends MinimalEObjectImpl.Container + implements TServiceConstructedAttributes { + /** + * The cached value of the '{@link #getServiceConstructedAttribute() <em>Service Constructed Attribute</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getServiceConstructedAttribute() + * @generated + * @ordered + */ + protected EList< TServiceConstructedAttribute > serviceConstructedAttribute; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceConstructedAttributesImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSERVICE_CONSTRUCTED_ATTRIBUTES; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TServiceConstructedAttribute > getServiceConstructedAttribute() { + if( serviceConstructedAttribute == null ) { + serviceConstructedAttribute = new EObjectContainmentEList< TServiceConstructedAttribute >( + TServiceConstructedAttribute.class, this, + NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE ); + } + return serviceConstructedAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE: + return ( ( InternalEList< ? > ) getServiceConstructedAttribute() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE: + return getServiceConstructedAttribute(); + } + 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 NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE: + getServiceConstructedAttribute().clear(); + getServiceConstructedAttribute() + .addAll( ( Collection< ? extends TServiceConstructedAttribute > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE: + getServiceConstructedAttribute().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTES__SERVICE_CONSTRUCTED_ATTRIBUTE: + return serviceConstructedAttribute != null && !serviceConstructedAttribute.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TServiceConstructedAttributesImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceDataAttributeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceDataAttributeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..ca2cc0ea4c8ba220c2db282f4e8726e997cdf7dd --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceDataAttributeImpl.java @@ -0,0 +1,756 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.Enumerator; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TService Data Attribute</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl#getFc <em>Fc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl#getTypeKind <em>Type Kind</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl#getUnderlyingType <em>Underlying Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceDataAttributeImpl#getUnderlyingTypeKind <em>Underlying Type Kind</em>}</li> + * </ul> + * + * @generated + */ +public class TServiceDataAttributeImpl extends TDocumentedClassImpl implements TServiceDataAttribute { + /** + * The default value of the '{@link #getFc() <em>Fc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFc() + * @generated + * @ordered + */ + protected static final String FC_EDEFAULT = null; + + /** + * The cached value of the '{@link #getFc() <em>Fc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFc() + * @generated + * @ordered + */ + protected String fc = FC_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected static final String PRES_COND_EDEFAULT = "M"; + + /** + * The cached value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected String presCond = PRES_COND_EDEFAULT; + + /** + * This is true if the Pres Cond attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean presCondESet; + + /** + * The default value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected String presCondArgs = PRES_COND_ARGS_EDEFAULT; + + /** + * The default value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected String presCondArgsID = PRES_COND_ARGS_ID_EDEFAULT; + + /** + * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected static final String TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected String type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getTypeKind() <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTypeKind() + * @generated + * @ordered + */ + protected static final Enumerator TYPE_KIND_EDEFAULT = ( Enumerator ) NsdFactory.eINSTANCE + .createFromString( NsdPackage.eINSTANCE.getTAttributeTypeKind(), "BASIC" ); + + /** + * The cached value of the '{@link #getTypeKind() <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTypeKind() + * @generated + * @ordered + */ + protected Enumerator typeKind = TYPE_KIND_EDEFAULT; + + /** + * This is true if the Type Kind attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean typeKindESet; + + /** + * The default value of the '{@link #getUnderlyingType() <em>Underlying Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingType() + * @generated + * @ordered + */ + protected static final String UNDERLYING_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUnderlyingType() <em>Underlying Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingType() + * @generated + * @ordered + */ + protected String underlyingType = UNDERLYING_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getUnderlyingTypeKind() <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingTypeKind() + * @generated + * @ordered + */ + protected static final TDefinedAttributeTypeKind UNDERLYING_TYPE_KIND_EDEFAULT = TDefinedAttributeTypeKind.BASIC; + + /** + * The cached value of the '{@link #getUnderlyingTypeKind() <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingTypeKind() + * @generated + * @ordered + */ + protected TDefinedAttributeTypeKind underlyingTypeKind = UNDERLYING_TYPE_KIND_EDEFAULT; + + /** + * This is true if the Underlying Type Kind attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean underlyingTypeKindESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceDataAttributeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSERVICE_DATA_ATTRIBUTE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getFc() { + return fc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFc( String newFc ) { + String oldFc = fc; + fc = newFc; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_DATA_ATTRIBUTE__FC, oldFc, fc ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_DATA_ATTRIBUTE__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCond() { + return presCond; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCond( String newPresCond ) { + String oldPresCond = presCond; + presCond = newPresCond; + boolean oldPresCondESet = presCondESet; + presCondESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND, oldPresCond, presCond, !oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPresCond() { + String oldPresCond = presCond; + boolean oldPresCondESet = presCondESet; + presCond = PRES_COND_EDEFAULT; + presCondESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND, oldPresCond, PRES_COND_EDEFAULT, oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPresCond() { + return presCondESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgs() { + return presCondArgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgs( String newPresCondArgs ) { + String oldPresCondArgs = presCondArgs; + presCondArgs = newPresCondArgs; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS, oldPresCondArgs, presCondArgs ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgsID() { + return presCondArgsID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgsID( String newPresCondArgsID ) { + String oldPresCondArgsID = presCondArgsID; + presCondArgsID = newPresCondArgsID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID, oldPresCondArgsID, presCondArgsID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getType() { + return type; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setType( String newType ) { + String oldType = type; + type = newType; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE, oldType, type ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Enumerator getTypeKind() { + return typeKind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTypeKind( Enumerator newTypeKind ) { + Enumerator oldTypeKind = typeKind; + typeKind = newTypeKind; + boolean oldTypeKindESet = typeKindESet; + typeKindESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE_KIND, oldTypeKind, typeKind, !oldTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetTypeKind() { + Enumerator oldTypeKind = typeKind; + boolean oldTypeKindESet = typeKindESet; + typeKind = TYPE_KIND_EDEFAULT; + typeKindESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE_KIND, oldTypeKind, TYPE_KIND_EDEFAULT, oldTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetTypeKind() { + return typeKindESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getUnderlyingType() { + return underlyingType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUnderlyingType( String newUnderlyingType ) { + String oldUnderlyingType = underlyingType; + underlyingType = newUnderlyingType; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE, oldUnderlyingType, underlyingType ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TDefinedAttributeTypeKind getUnderlyingTypeKind() { + return underlyingTypeKind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUnderlyingTypeKind( TDefinedAttributeTypeKind newUnderlyingTypeKind ) { + TDefinedAttributeTypeKind oldUnderlyingTypeKind = underlyingTypeKind; + underlyingTypeKind = newUnderlyingTypeKind == null ? UNDERLYING_TYPE_KIND_EDEFAULT : newUnderlyingTypeKind; + boolean oldUnderlyingTypeKindESet = underlyingTypeKindESet; + underlyingTypeKindESet = true; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND, + oldUnderlyingTypeKind, underlyingTypeKind, !oldUnderlyingTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetUnderlyingTypeKind() { + TDefinedAttributeTypeKind oldUnderlyingTypeKind = underlyingTypeKind; + boolean oldUnderlyingTypeKindESet = underlyingTypeKindESet; + underlyingTypeKind = UNDERLYING_TYPE_KIND_EDEFAULT; + underlyingTypeKindESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND, oldUnderlyingTypeKind, + UNDERLYING_TYPE_KIND_EDEFAULT, oldUnderlyingTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetUnderlyingTypeKind() { + return underlyingTypeKindESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__FC: + return getFc(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__NAME: + return getName(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND: + return getPresCond(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS: + return getPresCondArgs(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: + return getPresCondArgsID(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE: + return getType(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE_KIND: + return getTypeKind(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE: + return getUnderlyingType(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND: + return getUnderlyingTypeKind(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__FC: + setFc( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__NAME: + setName( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND: + setPresCond( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS: + setPresCondArgs( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: + setPresCondArgsID( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE: + setType( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE_KIND: + setTypeKind( ( Enumerator ) newValue ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE: + setUnderlyingType( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND: + setUnderlyingTypeKind( ( TDefinedAttributeTypeKind ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__FC: + setFc( FC_EDEFAULT ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__NAME: + setName( NAME_EDEFAULT ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND: + unsetPresCond(); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS: + setPresCondArgs( PRES_COND_ARGS_EDEFAULT ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: + setPresCondArgsID( PRES_COND_ARGS_ID_EDEFAULT ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE: + setType( TYPE_EDEFAULT ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE_KIND: + unsetTypeKind(); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE: + setUnderlyingType( UNDERLYING_TYPE_EDEFAULT ); + return; + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND: + unsetUnderlyingTypeKind(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__FC: + return FC_EDEFAULT == null ? fc != null : !FC_EDEFAULT.equals( fc ); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND: + return isSetPresCond(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS: + return PRES_COND_ARGS_EDEFAULT == null ? presCondArgs != null + : !PRES_COND_ARGS_EDEFAULT.equals( presCondArgs ); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: + return PRES_COND_ARGS_ID_EDEFAULT == null ? presCondArgsID != null + : !PRES_COND_ARGS_ID_EDEFAULT.equals( presCondArgsID ); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE: + return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals( type ); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__TYPE_KIND: + return isSetTypeKind(); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE: + return UNDERLYING_TYPE_EDEFAULT == null ? underlyingType != null + : !UNDERLYING_TYPE_EDEFAULT.equals( underlyingType ); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND: + return isSetUnderlyingTypeKind(); + } + 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( " (fc: " ); + result.append( fc ); + result.append( ", name: " ); + result.append( name ); + result.append( ", presCond: " ); + if( presCondESet ) + result.append( presCond ); + else + result.append( "<unset>" ); + result.append( ", presCondArgs: " ); + result.append( presCondArgs ); + result.append( ", presCondArgsID: " ); + result.append( presCondArgsID ); + result.append( ", type: " ); + result.append( type ); + result.append( ", typeKind: " ); + if( typeKindESet ) + result.append( typeKind ); + else + result.append( "<unset>" ); + result.append( ", underlyingType: " ); + result.append( underlyingType ); + result.append( ", underlyingTypeKind: " ); + if( underlyingTypeKindESet ) + result.append( underlyingTypeKind ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TServiceDataAttributeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceNSImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceNSImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..340b75848acc8c840bbdfa22706e1c70becf1ab0 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceNSImpl.java @@ -0,0 +1,1274 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations; + +import javax.xml.datatype.XMLGregorianCalendar; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TService NS</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getChanges <em>Changes</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getFunctionalConstraints <em>Functional Constraints</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getPresenceConditions <em>Presence Conditions</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getAbbreviations <em>Abbreviations</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getServiceTypeRealizations <em>Service Type Realizations</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getServiceConstructedAttributes <em>Service Constructed Attributes</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getServiceCDCs <em>Service CD Cs</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getUmlDate <em>Uml Date</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getUmlVersion <em>Uml Version</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNSImpl#getVersion <em>Version</em>}</li> + * </ul> + * + * @generated + */ +public class TServiceNSImpl extends TCopyrightedImpl implements TServiceNS { + /** + * The cached value of the '{@link #getChanges() <em>Changes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getChanges() + * @generated + * @ordered + */ + protected TChanges changes; + + /** + * The cached value of the '{@link #getFunctionalConstraints() <em>Functional Constraints</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFunctionalConstraints() + * @generated + * @ordered + */ + protected TFunctionalConstraints functionalConstraints; + + /** + * The cached value of the '{@link #getPresenceConditions() <em>Presence Conditions</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresenceConditions() + * @generated + * @ordered + */ + protected TPresenceConditions presenceConditions; + + /** + * The cached value of the '{@link #getAbbreviations() <em>Abbreviations</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAbbreviations() + * @generated + * @ordered + */ + protected TAbbreviations abbreviations; + + /** + * The cached value of the '{@link #getServiceTypeRealizations() <em>Service Type Realizations</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getServiceTypeRealizations() + * @generated + * @ordered + */ + protected TServiceTypeRealizations serviceTypeRealizations; + + /** + * The cached value of the '{@link #getServiceConstructedAttributes() <em>Service Constructed Attributes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getServiceConstructedAttributes() + * @generated + * @ordered + */ + protected TServiceConstructedAttributes serviceConstructedAttributes; + + /** + * The cached value of the '{@link #getServiceCDCs() <em>Service CD Cs</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getServiceCDCs() + * @generated + * @ordered + */ + protected TServiceCDCs serviceCDCs; + + /** + * The default value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected static final String DESC_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescID() <em>Desc ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescID() + * @generated + * @ordered + */ + protected String descID = DESC_ID_EDEFAULT; + + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * The default value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected static final TPubStage PUBLICATION_STAGE_EDEFAULT = TPubStage.IS; + + /** + * The cached value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected TPubStage publicationStage = PUBLICATION_STAGE_EDEFAULT; + + /** + * This is true if the Publication Stage attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean publicationStageESet; + + /** + * The default value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected static final short RELEASE_EDEFAULT = 1; + + /** + * The cached value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected short release = RELEASE_EDEFAULT; + + /** + * This is true if the Release attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean releaseESet; + + /** + * The default value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected static final String REVISION_EDEFAULT = "A"; + + /** + * The cached value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected String revision = REVISION_EDEFAULT; + + /** + * This is true if the Revision attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean revisionESet; + + /** + * The default value of the '{@link #getUmlDate() <em>Uml Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlDate() + * @generated + * @ordered + */ + protected static final XMLGregorianCalendar UML_DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUmlDate() <em>Uml Date</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlDate() + * @generated + * @ordered + */ + protected XMLGregorianCalendar umlDate = UML_DATE_EDEFAULT; + + /** + * The default value of the '{@link #getUmlVersion() <em>Uml Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlVersion() + * @generated + * @ordered + */ + protected static final String UML_VERSION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUmlVersion() <em>Uml Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUmlVersion() + * @generated + * @ordered + */ + protected String umlVersion = UML_VERSION_EDEFAULT; + + /** + * The default value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected static final int VERSION_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected int version = VERSION_EDEFAULT; + + /** + * This is true if the Version attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean versionESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceNSImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSERVICE_NS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TChanges getChanges() { + return changes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetChanges( TChanges newChanges, NotificationChain msgs ) { + TChanges oldChanges = changes; + changes = newChanges; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__CHANGES, oldChanges, newChanges ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setChanges( TChanges newChanges ) { + if( newChanges != changes ) { + NotificationChain msgs = null; + if( changes != null ) msgs = ( ( InternalEObject ) changes ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__CHANGES, null, msgs ); + if( newChanges != null ) msgs = ( ( InternalEObject ) newChanges ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__CHANGES, null, msgs ); + msgs = basicSetChanges( newChanges, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__CHANGES, newChanges, newChanges ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TFunctionalConstraints getFunctionalConstraints() { + return functionalConstraints; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetFunctionalConstraints( TFunctionalConstraints newFunctionalConstraints, + NotificationChain msgs ) { + TFunctionalConstraints oldFunctionalConstraints = functionalConstraints; + functionalConstraints = newFunctionalConstraints; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS, oldFunctionalConstraints, + newFunctionalConstraints ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFunctionalConstraints( TFunctionalConstraints newFunctionalConstraints ) { + if( newFunctionalConstraints != functionalConstraints ) { + NotificationChain msgs = null; + if( functionalConstraints != null ) + msgs = ( ( InternalEObject ) functionalConstraints ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS, null, msgs ); + if( newFunctionalConstraints != null ) + msgs = ( ( InternalEObject ) newFunctionalConstraints ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS, null, msgs ); + msgs = basicSetFunctionalConstraints( newFunctionalConstraints, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS, newFunctionalConstraints, newFunctionalConstraints ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TPresenceConditions getPresenceConditions() { + return presenceConditions; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPresenceConditions( TPresenceConditions newPresenceConditions, + NotificationChain msgs ) { + TPresenceConditions oldPresenceConditions = presenceConditions; + presenceConditions = newPresenceConditions; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__PRESENCE_CONDITIONS, oldPresenceConditions, newPresenceConditions ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresenceConditions( TPresenceConditions newPresenceConditions ) { + if( newPresenceConditions != presenceConditions ) { + NotificationChain msgs = null; + if( presenceConditions != null ) msgs = ( ( InternalEObject ) presenceConditions ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__PRESENCE_CONDITIONS, null, msgs ); + if( newPresenceConditions != null ) msgs = ( ( InternalEObject ) newPresenceConditions ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__PRESENCE_CONDITIONS, null, msgs ); + msgs = basicSetPresenceConditions( newPresenceConditions, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__PRESENCE_CONDITIONS, newPresenceConditions, newPresenceConditions ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TAbbreviations getAbbreviations() { + return abbreviations; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetAbbreviations( TAbbreviations newAbbreviations, NotificationChain msgs ) { + TAbbreviations oldAbbreviations = abbreviations; + abbreviations = newAbbreviations; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__ABBREVIATIONS, oldAbbreviations, newAbbreviations ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setAbbreviations( TAbbreviations newAbbreviations ) { + if( newAbbreviations != abbreviations ) { + NotificationChain msgs = null; + if( abbreviations != null ) msgs = ( ( InternalEObject ) abbreviations ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__ABBREVIATIONS, null, msgs ); + if( newAbbreviations != null ) msgs = ( ( InternalEObject ) newAbbreviations ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__ABBREVIATIONS, null, msgs ); + msgs = basicSetAbbreviations( newAbbreviations, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__ABBREVIATIONS, newAbbreviations, newAbbreviations ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceTypeRealizations getServiceTypeRealizations() { + return serviceTypeRealizations; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetServiceTypeRealizations( TServiceTypeRealizations newServiceTypeRealizations, + NotificationChain msgs ) { + TServiceTypeRealizations oldServiceTypeRealizations = serviceTypeRealizations; + serviceTypeRealizations = newServiceTypeRealizations; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS, oldServiceTypeRealizations, + newServiceTypeRealizations ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setServiceTypeRealizations( TServiceTypeRealizations newServiceTypeRealizations ) { + if( newServiceTypeRealizations != serviceTypeRealizations ) { + NotificationChain msgs = null; + if( serviceTypeRealizations != null ) + msgs = ( ( InternalEObject ) serviceTypeRealizations ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS, null, msgs ); + if( newServiceTypeRealizations != null ) + msgs = ( ( InternalEObject ) newServiceTypeRealizations ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS, null, msgs ); + msgs = basicSetServiceTypeRealizations( newServiceTypeRealizations, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS, + newServiceTypeRealizations, newServiceTypeRealizations ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceConstructedAttributes getServiceConstructedAttributes() { + return serviceConstructedAttributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetServiceConstructedAttributes( + TServiceConstructedAttributes newServiceConstructedAttributes, NotificationChain msgs ) { + TServiceConstructedAttributes oldServiceConstructedAttributes = serviceConstructedAttributes; + serviceConstructedAttributes = newServiceConstructedAttributes; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES, oldServiceConstructedAttributes, + newServiceConstructedAttributes ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setServiceConstructedAttributes( TServiceConstructedAttributes newServiceConstructedAttributes ) { + if( newServiceConstructedAttributes != serviceConstructedAttributes ) { + NotificationChain msgs = null; + if( serviceConstructedAttributes != null ) + msgs = ( ( InternalEObject ) serviceConstructedAttributes ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES, null, msgs ); + if( newServiceConstructedAttributes != null ) + msgs = ( ( InternalEObject ) newServiceConstructedAttributes ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES, null, msgs ); + msgs = basicSetServiceConstructedAttributes( newServiceConstructedAttributes, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES, + newServiceConstructedAttributes, newServiceConstructedAttributes ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TServiceCDCs getServiceCDCs() { + return serviceCDCs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetServiceCDCs( TServiceCDCs newServiceCDCs, NotificationChain msgs ) { + TServiceCDCs oldServiceCDCs = serviceCDCs; + serviceCDCs = newServiceCDCs; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__SERVICE_CD_CS, oldServiceCDCs, newServiceCDCs ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setServiceCDCs( TServiceCDCs newServiceCDCs ) { + if( newServiceCDCs != serviceCDCs ) { + NotificationChain msgs = null; + if( serviceCDCs != null ) msgs = ( ( InternalEObject ) serviceCDCs ).eInverseRemove( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__SERVICE_CD_CS, null, msgs ); + if( newServiceCDCs != null ) msgs = ( ( InternalEObject ) newServiceCDCs ).eInverseAdd( this, + EOPPOSITE_FEATURE_BASE - NsdPackage.TSERVICE_NS__SERVICE_CD_CS, null, msgs ); + msgs = basicSetServiceCDCs( newServiceCDCs, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__SERVICE_CD_CS, newServiceCDCs, newServiceCDCs ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDescID() { + return descID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDescID( String newDescID ) { + String oldDescID = descID; + descID = newDescID; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_NS__DESC_ID, oldDescID, descID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setId( String newId ) { + String oldId = id; + id = newId; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_NS__ID, oldId, id ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TPubStage getPublicationStage() { + return publicationStage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPublicationStage( TPubStage newPublicationStage ) { + TPubStage oldPublicationStage = publicationStage; + publicationStage = newPublicationStage == null ? PUBLICATION_STAGE_EDEFAULT : newPublicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStageESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_NS__PUBLICATION_STAGE, + oldPublicationStage, publicationStage, !oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPublicationStage() { + TPubStage oldPublicationStage = publicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStage = PUBLICATION_STAGE_EDEFAULT; + publicationStageESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.TSERVICE_NS__PUBLICATION_STAGE, + oldPublicationStage, PUBLICATION_STAGE_EDEFAULT, oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPublicationStage() { + return publicationStageESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public short getRelease() { + return release; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRelease( short newRelease ) { + short oldRelease = release; + release = newRelease; + boolean oldReleaseESet = releaseESet; + releaseESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__RELEASE, oldRelease, release, !oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRelease() { + short oldRelease = release; + boolean oldReleaseESet = releaseESet; + release = RELEASE_EDEFAULT; + releaseESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_NS__RELEASE, oldRelease, RELEASE_EDEFAULT, oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRelease() { + return releaseESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getRevision() { + return revision; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRevision( String newRevision ) { + String oldRevision = revision; + revision = newRevision; + boolean oldRevisionESet = revisionESet; + revisionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__REVISION, oldRevision, revision, !oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRevision() { + String oldRevision = revision; + boolean oldRevisionESet = revisionESet; + revision = REVISION_EDEFAULT; + revisionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_NS__REVISION, oldRevision, REVISION_EDEFAULT, oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRevision() { + return revisionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public XMLGregorianCalendar getUmlDate() { + return umlDate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUmlDate( XMLGregorianCalendar newUmlDate ) { + XMLGregorianCalendar oldUmlDate = umlDate; + umlDate = newUmlDate; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__UML_DATE, oldUmlDate, umlDate ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getUmlVersion() { + return umlVersion; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUmlVersion( String newUmlVersion ) { + String oldUmlVersion = umlVersion; + umlVersion = newUmlVersion; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__UML_VERSION, oldUmlVersion, umlVersion ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getVersion() { + return version; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVersion( int newVersion ) { + int oldVersion = version; + version = newVersion; + boolean oldVersionESet = versionESet; + versionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS__VERSION, oldVersion, version, !oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetVersion() { + int oldVersion = version; + boolean oldVersionESet = versionESet; + version = VERSION_EDEFAULT; + versionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_NS__VERSION, oldVersion, VERSION_EDEFAULT, oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetVersion() { + return versionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TSERVICE_NS__CHANGES: + return basicSetChanges( null, msgs ); + case NsdPackage.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS: + return basicSetFunctionalConstraints( null, msgs ); + case NsdPackage.TSERVICE_NS__PRESENCE_CONDITIONS: + return basicSetPresenceConditions( null, msgs ); + case NsdPackage.TSERVICE_NS__ABBREVIATIONS: + return basicSetAbbreviations( null, msgs ); + case NsdPackage.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS: + return basicSetServiceTypeRealizations( null, msgs ); + case NsdPackage.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES: + return basicSetServiceConstructedAttributes( null, msgs ); + case NsdPackage.TSERVICE_NS__SERVICE_CD_CS: + return basicSetServiceCDCs( null, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSERVICE_NS__CHANGES: + return getChanges(); + case NsdPackage.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS: + return getFunctionalConstraints(); + case NsdPackage.TSERVICE_NS__PRESENCE_CONDITIONS: + return getPresenceConditions(); + case NsdPackage.TSERVICE_NS__ABBREVIATIONS: + return getAbbreviations(); + case NsdPackage.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS: + return getServiceTypeRealizations(); + case NsdPackage.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES: + return getServiceConstructedAttributes(); + case NsdPackage.TSERVICE_NS__SERVICE_CD_CS: + return getServiceCDCs(); + case NsdPackage.TSERVICE_NS__DESC_ID: + return getDescID(); + case NsdPackage.TSERVICE_NS__ID: + return getId(); + case NsdPackage.TSERVICE_NS__PUBLICATION_STAGE: + return getPublicationStage(); + case NsdPackage.TSERVICE_NS__RELEASE: + return getRelease(); + case NsdPackage.TSERVICE_NS__REVISION: + return getRevision(); + case NsdPackage.TSERVICE_NS__UML_DATE: + return getUmlDate(); + case NsdPackage.TSERVICE_NS__UML_VERSION: + return getUmlVersion(); + case NsdPackage.TSERVICE_NS__VERSION: + return getVersion(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TSERVICE_NS__CHANGES: + setChanges( ( TChanges ) newValue ); + return; + case NsdPackage.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS: + setFunctionalConstraints( ( TFunctionalConstraints ) newValue ); + return; + case NsdPackage.TSERVICE_NS__PRESENCE_CONDITIONS: + setPresenceConditions( ( TPresenceConditions ) newValue ); + return; + case NsdPackage.TSERVICE_NS__ABBREVIATIONS: + setAbbreviations( ( TAbbreviations ) newValue ); + return; + case NsdPackage.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS: + setServiceTypeRealizations( ( TServiceTypeRealizations ) newValue ); + return; + case NsdPackage.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES: + setServiceConstructedAttributes( ( TServiceConstructedAttributes ) newValue ); + return; + case NsdPackage.TSERVICE_NS__SERVICE_CD_CS: + setServiceCDCs( ( TServiceCDCs ) newValue ); + return; + case NsdPackage.TSERVICE_NS__DESC_ID: + setDescID( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_NS__ID: + setId( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_NS__PUBLICATION_STAGE: + setPublicationStage( ( TPubStage ) newValue ); + return; + case NsdPackage.TSERVICE_NS__RELEASE: + setRelease( ( Short ) newValue ); + return; + case NsdPackage.TSERVICE_NS__REVISION: + setRevision( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_NS__UML_DATE: + setUmlDate( ( XMLGregorianCalendar ) newValue ); + return; + case NsdPackage.TSERVICE_NS__UML_VERSION: + setUmlVersion( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_NS__VERSION: + setVersion( ( Integer ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_NS__CHANGES: + setChanges( ( TChanges ) null ); + return; + case NsdPackage.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS: + setFunctionalConstraints( ( TFunctionalConstraints ) null ); + return; + case NsdPackage.TSERVICE_NS__PRESENCE_CONDITIONS: + setPresenceConditions( ( TPresenceConditions ) null ); + return; + case NsdPackage.TSERVICE_NS__ABBREVIATIONS: + setAbbreviations( ( TAbbreviations ) null ); + return; + case NsdPackage.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS: + setServiceTypeRealizations( ( TServiceTypeRealizations ) null ); + return; + case NsdPackage.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES: + setServiceConstructedAttributes( ( TServiceConstructedAttributes ) null ); + return; + case NsdPackage.TSERVICE_NS__SERVICE_CD_CS: + setServiceCDCs( ( TServiceCDCs ) null ); + return; + case NsdPackage.TSERVICE_NS__DESC_ID: + setDescID( DESC_ID_EDEFAULT ); + return; + case NsdPackage.TSERVICE_NS__ID: + setId( ID_EDEFAULT ); + return; + case NsdPackage.TSERVICE_NS__PUBLICATION_STAGE: + unsetPublicationStage(); + return; + case NsdPackage.TSERVICE_NS__RELEASE: + unsetRelease(); + return; + case NsdPackage.TSERVICE_NS__REVISION: + unsetRevision(); + return; + case NsdPackage.TSERVICE_NS__UML_DATE: + setUmlDate( UML_DATE_EDEFAULT ); + return; + case NsdPackage.TSERVICE_NS__UML_VERSION: + setUmlVersion( UML_VERSION_EDEFAULT ); + return; + case NsdPackage.TSERVICE_NS__VERSION: + unsetVersion(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_NS__CHANGES: + return changes != null; + case NsdPackage.TSERVICE_NS__FUNCTIONAL_CONSTRAINTS: + return functionalConstraints != null; + case NsdPackage.TSERVICE_NS__PRESENCE_CONDITIONS: + return presenceConditions != null; + case NsdPackage.TSERVICE_NS__ABBREVIATIONS: + return abbreviations != null; + case NsdPackage.TSERVICE_NS__SERVICE_TYPE_REALIZATIONS: + return serviceTypeRealizations != null; + case NsdPackage.TSERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES: + return serviceConstructedAttributes != null; + case NsdPackage.TSERVICE_NS__SERVICE_CD_CS: + return serviceCDCs != null; + case NsdPackage.TSERVICE_NS__DESC_ID: + return DESC_ID_EDEFAULT == null ? descID != null : !DESC_ID_EDEFAULT.equals( descID ); + case NsdPackage.TSERVICE_NS__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals( id ); + case NsdPackage.TSERVICE_NS__PUBLICATION_STAGE: + return isSetPublicationStage(); + case NsdPackage.TSERVICE_NS__RELEASE: + return isSetRelease(); + case NsdPackage.TSERVICE_NS__REVISION: + return isSetRevision(); + case NsdPackage.TSERVICE_NS__UML_DATE: + return UML_DATE_EDEFAULT == null ? umlDate != null : !UML_DATE_EDEFAULT.equals( umlDate ); + case NsdPackage.TSERVICE_NS__UML_VERSION: + return UML_VERSION_EDEFAULT == null ? umlVersion != null : !UML_VERSION_EDEFAULT.equals( umlVersion ); + case NsdPackage.TSERVICE_NS__VERSION: + return isSetVersion(); + } + 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( " (descID: " ); + result.append( descID ); + result.append( ", id: " ); + result.append( id ); + result.append( ", publicationStage: " ); + if( publicationStageESet ) + result.append( publicationStage ); + else + result.append( "<unset>" ); + result.append( ", release: " ); + if( releaseESet ) + result.append( release ); + else + result.append( "<unset>" ); + result.append( ", revision: " ); + if( revisionESet ) + result.append( revision ); + else + result.append( "<unset>" ); + result.append( ", umlDate: " ); + result.append( umlDate ); + result.append( ", umlVersion: " ); + result.append( umlVersion ); + result.append( ", version: " ); + if( versionESet ) + result.append( version ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TServiceNSImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceNsUsageImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceNsUsageImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..135b3cac742920a4299b19fda7b1a8a6508c9073 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceNsUsageImpl.java @@ -0,0 +1,626 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPubStage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TService Ns Usage</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNsUsageImpl#getAppliesTo <em>Applies To</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNsUsageImpl#getId <em>Id</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNsUsageImpl#getPublicationStage <em>Publication Stage</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNsUsageImpl#getRelease <em>Release</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNsUsageImpl#getRevision <em>Revision</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceNsUsageImpl#getVersion <em>Version</em>}</li> + * </ul> + * + * @generated + */ +public class TServiceNsUsageImpl extends MinimalEObjectImpl.Container implements TServiceNsUsage { + /** + * The cached value of the '{@link #getAppliesTo() <em>Applies To</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAppliesTo() + * @generated + * @ordered + */ + protected EList< AppliesToType > appliesTo; + + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * The default value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected static final TPubStage PUBLICATION_STAGE_EDEFAULT = TPubStage.IS; + + /** + * The cached value of the '{@link #getPublicationStage() <em>Publication Stage</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPublicationStage() + * @generated + * @ordered + */ + protected TPubStage publicationStage = PUBLICATION_STAGE_EDEFAULT; + + /** + * This is true if the Publication Stage attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean publicationStageESet; + + /** + * The default value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected static final short RELEASE_EDEFAULT = 1; + + /** + * The cached value of the '{@link #getRelease() <em>Release</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRelease() + * @generated + * @ordered + */ + protected short release = RELEASE_EDEFAULT; + + /** + * This is true if the Release attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean releaseESet; + + /** + * The default value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected static final String REVISION_EDEFAULT = "A"; + + /** + * The cached value of the '{@link #getRevision() <em>Revision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRevision() + * @generated + * @ordered + */ + protected String revision = REVISION_EDEFAULT; + + /** + * This is true if the Revision attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean revisionESet; + + /** + * The default value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected static final int VERSION_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected int version = VERSION_EDEFAULT; + + /** + * This is true if the Version attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean versionESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceNsUsageImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSERVICE_NS_USAGE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< AppliesToType > getAppliesTo() { + if( appliesTo == null ) { + appliesTo = new EObjectContainmentEList< AppliesToType >( AppliesToType.class, this, + NsdPackage.TSERVICE_NS_USAGE__APPLIES_TO ); + } + return appliesTo; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setId( String newId ) { + String oldId = id; + id = newId; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_NS_USAGE__ID, oldId, id ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TPubStage getPublicationStage() { + return publicationStage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPublicationStage( TPubStage newPublicationStage ) { + TPubStage oldPublicationStage = publicationStage; + publicationStage = newPublicationStage == null ? PUBLICATION_STAGE_EDEFAULT : newPublicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStageESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_NS_USAGE__PUBLICATION_STAGE, + oldPublicationStage, publicationStage, !oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPublicationStage() { + TPubStage oldPublicationStage = publicationStage; + boolean oldPublicationStageESet = publicationStageESet; + publicationStage = PUBLICATION_STAGE_EDEFAULT; + publicationStageESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.TSERVICE_NS_USAGE__PUBLICATION_STAGE, + oldPublicationStage, PUBLICATION_STAGE_EDEFAULT, oldPublicationStageESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPublicationStage() { + return publicationStageESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public short getRelease() { + return release; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRelease( short newRelease ) { + short oldRelease = release; + release = newRelease; + boolean oldReleaseESet = releaseESet; + releaseESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS_USAGE__RELEASE, oldRelease, release, !oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRelease() { + short oldRelease = release; + boolean oldReleaseESet = releaseESet; + release = RELEASE_EDEFAULT; + releaseESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_NS_USAGE__RELEASE, oldRelease, RELEASE_EDEFAULT, oldReleaseESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRelease() { + return releaseESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getRevision() { + return revision; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRevision( String newRevision ) { + String oldRevision = revision; + revision = newRevision; + boolean oldRevisionESet = revisionESet; + revisionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS_USAGE__REVISION, oldRevision, revision, !oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRevision() { + String oldRevision = revision; + boolean oldRevisionESet = revisionESet; + revision = REVISION_EDEFAULT; + revisionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_NS_USAGE__REVISION, oldRevision, REVISION_EDEFAULT, oldRevisionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRevision() { + return revisionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getVersion() { + return version; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setVersion( int newVersion ) { + int oldVersion = version; + version = newVersion; + boolean oldVersionESet = versionESet; + versionESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_NS_USAGE__VERSION, oldVersion, version, !oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetVersion() { + int oldVersion = version; + boolean oldVersionESet = versionESet; + version = VERSION_EDEFAULT; + versionESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_NS_USAGE__VERSION, oldVersion, VERSION_EDEFAULT, oldVersionESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetVersion() { + return versionESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TSERVICE_NS_USAGE__APPLIES_TO: + return ( ( InternalEList< ? > ) getAppliesTo() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSERVICE_NS_USAGE__APPLIES_TO: + return getAppliesTo(); + case NsdPackage.TSERVICE_NS_USAGE__ID: + return getId(); + case NsdPackage.TSERVICE_NS_USAGE__PUBLICATION_STAGE: + return getPublicationStage(); + case NsdPackage.TSERVICE_NS_USAGE__RELEASE: + return getRelease(); + case NsdPackage.TSERVICE_NS_USAGE__REVISION: + return getRevision(); + case NsdPackage.TSERVICE_NS_USAGE__VERSION: + return getVersion(); + } + 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 NsdPackage.TSERVICE_NS_USAGE__APPLIES_TO: + getAppliesTo().clear(); + getAppliesTo().addAll( ( Collection< ? extends AppliesToType > ) newValue ); + return; + case NsdPackage.TSERVICE_NS_USAGE__ID: + setId( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_NS_USAGE__PUBLICATION_STAGE: + setPublicationStage( ( TPubStage ) newValue ); + return; + case NsdPackage.TSERVICE_NS_USAGE__RELEASE: + setRelease( ( Short ) newValue ); + return; + case NsdPackage.TSERVICE_NS_USAGE__REVISION: + setRevision( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_NS_USAGE__VERSION: + setVersion( ( Integer ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_NS_USAGE__APPLIES_TO: + getAppliesTo().clear(); + return; + case NsdPackage.TSERVICE_NS_USAGE__ID: + setId( ID_EDEFAULT ); + return; + case NsdPackage.TSERVICE_NS_USAGE__PUBLICATION_STAGE: + unsetPublicationStage(); + return; + case NsdPackage.TSERVICE_NS_USAGE__RELEASE: + unsetRelease(); + return; + case NsdPackage.TSERVICE_NS_USAGE__REVISION: + unsetRevision(); + return; + case NsdPackage.TSERVICE_NS_USAGE__VERSION: + unsetVersion(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_NS_USAGE__APPLIES_TO: + return appliesTo != null && !appliesTo.isEmpty(); + case NsdPackage.TSERVICE_NS_USAGE__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals( id ); + case NsdPackage.TSERVICE_NS_USAGE__PUBLICATION_STAGE: + return isSetPublicationStage(); + case NsdPackage.TSERVICE_NS_USAGE__RELEASE: + return isSetRelease(); + case NsdPackage.TSERVICE_NS_USAGE__REVISION: + return isSetRevision(); + case NsdPackage.TSERVICE_NS_USAGE__VERSION: + return isSetVersion(); + } + return super.eIsSet( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if( eIsProxy() ) return super.toString(); + + StringBuilder result = new StringBuilder( super.toString() ); + result.append( " (id: " ); + result.append( id ); + result.append( ", publicationStage: " ); + if( publicationStageESet ) + result.append( publicationStage ); + else + result.append( "<unset>" ); + result.append( ", release: " ); + if( releaseESet ) + result.append( release ); + else + result.append( "<unset>" ); + result.append( ", revision: " ); + if( revisionESet ) + result.append( revision ); + else + result.append( "<unset>" ); + result.append( ", version: " ); + if( versionESet ) + result.append( version ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TServiceNsUsageImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceParameterImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceParameterImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..709efa56452ad6249231158cd4a344274517c4fc --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceParameterImpl.java @@ -0,0 +1,507 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter; + +import java.math.BigDecimal; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.Enumerator; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TService Parameter</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceParameterImpl#getDefaultValue <em>Default Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceParameterImpl#getMaxValue <em>Max Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceParameterImpl#getMinValue <em>Min Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceParameterImpl#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceParameterImpl#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceParameterImpl#getTypeKind <em>Type Kind</em>}</li> + * </ul> + * + * @generated + */ +public class TServiceParameterImpl extends TDocumentedClassImpl implements TServiceParameter { + /** + * The default value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefaultValue() + * @generated + * @ordered + */ + protected static final String DEFAULT_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefaultValue() + * @generated + * @ordered + */ + protected String defaultValue = DEFAULT_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #getMaxValue() <em>Max Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxValue() + * @generated + * @ordered + */ + protected static final BigDecimal MAX_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMaxValue() <em>Max Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxValue() + * @generated + * @ordered + */ + protected BigDecimal maxValue = MAX_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #getMinValue() <em>Min Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinValue() + * @generated + * @ordered + */ + protected static final BigDecimal MIN_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMinValue() <em>Min Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinValue() + * @generated + * @ordered + */ + protected BigDecimal minValue = MIN_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected static final String TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected String type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getTypeKind() <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTypeKind() + * @generated + * @ordered + */ + protected static final Enumerator TYPE_KIND_EDEFAULT = ( Enumerator ) NsdFactory.eINSTANCE + .createFromString( NsdPackage.eINSTANCE.getTAttributeTypeKind(), "BASIC" ); + + /** + * The cached value of the '{@link #getTypeKind() <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTypeKind() + * @generated + * @ordered + */ + protected Enumerator typeKind = TYPE_KIND_EDEFAULT; + + /** + * This is true if the Type Kind attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean typeKindESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceParameterImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSERVICE_PARAMETER; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDefaultValue() { + return defaultValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDefaultValue( String newDefaultValue ) { + String oldDefaultValue = defaultValue; + defaultValue = newDefaultValue; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_PARAMETER__DEFAULT_VALUE, oldDefaultValue, defaultValue ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public BigDecimal getMaxValue() { + return maxValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMaxValue( BigDecimal newMaxValue ) { + BigDecimal oldMaxValue = maxValue; + maxValue = newMaxValue; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_PARAMETER__MAX_VALUE, oldMaxValue, maxValue ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public BigDecimal getMinValue() { + return minValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMinValue( BigDecimal newMinValue ) { + BigDecimal oldMinValue = minValue; + minValue = newMinValue; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_PARAMETER__MIN_VALUE, oldMinValue, minValue ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_PARAMETER__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getType() { + return type; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setType( String newType ) { + String oldType = type; + type = newType; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_PARAMETER__TYPE, oldType, type ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Enumerator getTypeKind() { + return typeKind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTypeKind( Enumerator newTypeKind ) { + Enumerator oldTypeKind = typeKind; + typeKind = newTypeKind; + boolean oldTypeKindESet = typeKindESet; + typeKindESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_PARAMETER__TYPE_KIND, oldTypeKind, typeKind, !oldTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetTypeKind() { + Enumerator oldTypeKind = typeKind; + boolean oldTypeKindESet = typeKindESet; + typeKind = TYPE_KIND_EDEFAULT; + typeKindESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_PARAMETER__TYPE_KIND, oldTypeKind, TYPE_KIND_EDEFAULT, oldTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetTypeKind() { + return typeKindESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSERVICE_PARAMETER__DEFAULT_VALUE: + return getDefaultValue(); + case NsdPackage.TSERVICE_PARAMETER__MAX_VALUE: + return getMaxValue(); + case NsdPackage.TSERVICE_PARAMETER__MIN_VALUE: + return getMinValue(); + case NsdPackage.TSERVICE_PARAMETER__NAME: + return getName(); + case NsdPackage.TSERVICE_PARAMETER__TYPE: + return getType(); + case NsdPackage.TSERVICE_PARAMETER__TYPE_KIND: + return getTypeKind(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TSERVICE_PARAMETER__DEFAULT_VALUE: + setDefaultValue( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_PARAMETER__MAX_VALUE: + setMaxValue( ( BigDecimal ) newValue ); + return; + case NsdPackage.TSERVICE_PARAMETER__MIN_VALUE: + setMinValue( ( BigDecimal ) newValue ); + return; + case NsdPackage.TSERVICE_PARAMETER__NAME: + setName( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_PARAMETER__TYPE: + setType( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_PARAMETER__TYPE_KIND: + setTypeKind( ( Enumerator ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_PARAMETER__DEFAULT_VALUE: + setDefaultValue( DEFAULT_VALUE_EDEFAULT ); + return; + case NsdPackage.TSERVICE_PARAMETER__MAX_VALUE: + setMaxValue( MAX_VALUE_EDEFAULT ); + return; + case NsdPackage.TSERVICE_PARAMETER__MIN_VALUE: + setMinValue( MIN_VALUE_EDEFAULT ); + return; + case NsdPackage.TSERVICE_PARAMETER__NAME: + setName( NAME_EDEFAULT ); + return; + case NsdPackage.TSERVICE_PARAMETER__TYPE: + setType( TYPE_EDEFAULT ); + return; + case NsdPackage.TSERVICE_PARAMETER__TYPE_KIND: + unsetTypeKind(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_PARAMETER__DEFAULT_VALUE: + return DEFAULT_VALUE_EDEFAULT == null ? defaultValue != null + : !DEFAULT_VALUE_EDEFAULT.equals( defaultValue ); + case NsdPackage.TSERVICE_PARAMETER__MAX_VALUE: + return MAX_VALUE_EDEFAULT == null ? maxValue != null : !MAX_VALUE_EDEFAULT.equals( maxValue ); + case NsdPackage.TSERVICE_PARAMETER__MIN_VALUE: + return MIN_VALUE_EDEFAULT == null ? minValue != null : !MIN_VALUE_EDEFAULT.equals( minValue ); + case NsdPackage.TSERVICE_PARAMETER__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + case NsdPackage.TSERVICE_PARAMETER__TYPE: + return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals( type ); + case NsdPackage.TSERVICE_PARAMETER__TYPE_KIND: + return isSetTypeKind(); + } + 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( " (defaultValue: " ); + result.append( defaultValue ); + result.append( ", maxValue: " ); + result.append( maxValue ); + result.append( ", minValue: " ); + result.append( minValue ); + result.append( ", name: " ); + result.append( name ); + result.append( ", type: " ); + result.append( type ); + result.append( ", typeKind: " ); + if( typeKindESet ) + result.append( typeKind ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TServiceParameterImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceTypeRealizationImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceTypeRealizationImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..dd7926f1b87cc05d86fd217bc867533c8a150ec8 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceTypeRealizationImpl.java @@ -0,0 +1,602 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.Enumerator; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TService Type Realization</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl#getFc <em>Fc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationImpl#getTypeKind <em>Type Kind</em>}</li> + * </ul> + * + * @generated + */ +public class TServiceTypeRealizationImpl extends MinimalEObjectImpl.Container implements TServiceTypeRealization { + /** + * The default value of the '{@link #getFc() <em>Fc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFc() + * @generated + * @ordered + */ + protected static final String FC_EDEFAULT = null; + + /** + * The cached value of the '{@link #getFc() <em>Fc</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFc() + * @generated + * @ordered + */ + protected String fc = FC_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected static final String PRES_COND_EDEFAULT = "M"; + + /** + * The cached value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected String presCond = PRES_COND_EDEFAULT; + + /** + * This is true if the Pres Cond attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean presCondESet; + + /** + * The default value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected String presCondArgs = PRES_COND_ARGS_EDEFAULT; + + /** + * The default value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected String presCondArgsID = PRES_COND_ARGS_ID_EDEFAULT; + + /** + * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected static final String TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected String type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getTypeKind() <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTypeKind() + * @generated + * @ordered + */ + protected static final Enumerator TYPE_KIND_EDEFAULT = ( Enumerator ) NsdFactory.eINSTANCE + .createFromString( NsdPackage.eINSTANCE.getTAttributeTypeKind(), "BASIC" ); + + /** + * The cached value of the '{@link #getTypeKind() <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTypeKind() + * @generated + * @ordered + */ + protected Enumerator typeKind = TYPE_KIND_EDEFAULT; + + /** + * This is true if the Type Kind attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean typeKindESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceTypeRealizationImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSERVICE_TYPE_REALIZATION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getFc() { + return fc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFc( String newFc ) { + String oldFc = fc; + fc = newFc; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSERVICE_TYPE_REALIZATION__FC, oldFc, fc ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_TYPE_REALIZATION__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCond() { + return presCond; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCond( String newPresCond ) { + String oldPresCond = presCond; + presCond = newPresCond; + boolean oldPresCondESet = presCondESet; + presCondESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND, oldPresCond, presCond, !oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPresCond() { + String oldPresCond = presCond; + boolean oldPresCondESet = presCondESet; + presCond = PRES_COND_EDEFAULT; + presCondESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND, oldPresCond, PRES_COND_EDEFAULT, oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPresCond() { + return presCondESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgs() { + return presCondArgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgs( String newPresCondArgs ) { + String oldPresCondArgs = presCondArgs; + presCondArgs = newPresCondArgs; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS, oldPresCondArgs, presCondArgs ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgsID() { + return presCondArgsID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgsID( String newPresCondArgsID ) { + String oldPresCondArgsID = presCondArgsID; + presCondArgsID = newPresCondArgsID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS_ID, oldPresCondArgsID, presCondArgsID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getType() { + return type; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setType( String newType ) { + String oldType = type; + type = newType; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE, oldType, type ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Enumerator getTypeKind() { + return typeKind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTypeKind( Enumerator newTypeKind ) { + Enumerator oldTypeKind = typeKind; + typeKind = newTypeKind; + boolean oldTypeKindESet = typeKindESet; + typeKindESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE_KIND, oldTypeKind, typeKind, !oldTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetTypeKind() { + Enumerator oldTypeKind = typeKind; + boolean oldTypeKindESet = typeKindESet; + typeKind = TYPE_KIND_EDEFAULT; + typeKindESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE_KIND, oldTypeKind, TYPE_KIND_EDEFAULT, oldTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetTypeKind() { + return typeKindESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSERVICE_TYPE_REALIZATION__FC: + return getFc(); + case NsdPackage.TSERVICE_TYPE_REALIZATION__NAME: + return getName(); + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND: + return getPresCond(); + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS: + return getPresCondArgs(); + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS_ID: + return getPresCondArgsID(); + case NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE: + return getType(); + case NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE_KIND: + return getTypeKind(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TSERVICE_TYPE_REALIZATION__FC: + setFc( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__NAME: + setName( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND: + setPresCond( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS: + setPresCondArgs( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS_ID: + setPresCondArgsID( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE: + setType( ( String ) newValue ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE_KIND: + setTypeKind( ( Enumerator ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_TYPE_REALIZATION__FC: + setFc( FC_EDEFAULT ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__NAME: + setName( NAME_EDEFAULT ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND: + unsetPresCond(); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS: + setPresCondArgs( PRES_COND_ARGS_EDEFAULT ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS_ID: + setPresCondArgsID( PRES_COND_ARGS_ID_EDEFAULT ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE: + setType( TYPE_EDEFAULT ); + return; + case NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE_KIND: + unsetTypeKind(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_TYPE_REALIZATION__FC: + return FC_EDEFAULT == null ? fc != null : !FC_EDEFAULT.equals( fc ); + case NsdPackage.TSERVICE_TYPE_REALIZATION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND: + return isSetPresCond(); + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS: + return PRES_COND_ARGS_EDEFAULT == null ? presCondArgs != null + : !PRES_COND_ARGS_EDEFAULT.equals( presCondArgs ); + case NsdPackage.TSERVICE_TYPE_REALIZATION__PRES_COND_ARGS_ID: + return PRES_COND_ARGS_ID_EDEFAULT == null ? presCondArgsID != null + : !PRES_COND_ARGS_ID_EDEFAULT.equals( presCondArgsID ); + case NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE: + return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals( type ); + case NsdPackage.TSERVICE_TYPE_REALIZATION__TYPE_KIND: + return isSetTypeKind(); + } + 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( " (fc: " ); + result.append( fc ); + result.append( ", name: " ); + result.append( name ); + result.append( ", presCond: " ); + if( presCondESet ) + result.append( presCond ); + else + result.append( "<unset>" ); + result.append( ", presCondArgs: " ); + result.append( presCondArgs ); + result.append( ", presCondArgsID: " ); + result.append( presCondArgsID ); + result.append( ", type: " ); + result.append( type ); + result.append( ", typeKind: " ); + if( typeKindESet ) + result.append( typeKind ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TServiceTypeRealizationImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceTypeRealizationsImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceTypeRealizationsImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..7a7bdd909eeaff35c204ea9f5aa50140cd92c532 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TServiceTypeRealizationsImpl.java @@ -0,0 +1,171 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +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.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TService Type Realizations</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TServiceTypeRealizationsImpl#getServiceTypeRealization <em>Service Type Realization</em>}</li> + * </ul> + * + * @generated + */ +public class TServiceTypeRealizationsImpl extends MinimalEObjectImpl.Container implements TServiceTypeRealizations { + /** + * The cached value of the '{@link #getServiceTypeRealization() <em>Service Type Realization</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getServiceTypeRealization() + * @generated + * @ordered + */ + protected EList< TConstructedAttribute > serviceTypeRealization; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TServiceTypeRealizationsImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSERVICE_TYPE_REALIZATIONS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< TConstructedAttribute > getServiceTypeRealization() { + if( serviceTypeRealization == null ) { + serviceTypeRealization = new EObjectContainmentEList< TConstructedAttribute >( TConstructedAttribute.class, + this, NsdPackage.TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION ); + } + return serviceTypeRealization; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION: + return ( ( InternalEList< ? > ) getServiceTypeRealization() ).basicRemove( otherEnd, msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION: + return getServiceTypeRealization(); + } + 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 NsdPackage.TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION: + getServiceTypeRealization().clear(); + getServiceTypeRealization().addAll( ( Collection< ? extends TConstructedAttribute > ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION: + getServiceTypeRealization().clear(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSERVICE_TYPE_REALIZATIONS__SERVICE_TYPE_REALIZATION: + return serviceTypeRealization != null && !serviceTypeRealization.isEmpty(); + } + return super.eIsSet( featureID ); + } + +} //TServiceTypeRealizationsImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TSubDataAttributeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TSubDataAttributeImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..58a8777f92f3a40519317aa2d12e8c28e929a49e --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TSubDataAttributeImpl.java @@ -0,0 +1,1020 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute; + +import java.math.BigDecimal; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.Enumerator; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TSub Data Attribute</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getDefaultValue <em>Default Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#isIsArray <em>Is Array</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getMaxIndexAttribute <em>Max Index Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getMaxValue <em>Max Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getMinIndex <em>Min Index</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getMinValue <em>Min Value</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getSizeAttribute <em>Size Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataAttributeImpl#getTypeKind <em>Type Kind</em>}</li> + * </ul> + * + * @generated + */ +public class TSubDataAttributeImpl extends TDocumentedClassImpl implements TSubDataAttribute { + /** + * The default value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefaultValue() + * @generated + * @ordered + */ + protected static final String DEFAULT_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefaultValue() + * @generated + * @ordered + */ + protected String defaultValue = DEFAULT_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #isIsArray() <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isIsArray() + * @generated + * @ordered + */ + protected static final boolean IS_ARRAY_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIsArray() <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isIsArray() + * @generated + * @ordered + */ + protected boolean isArray = IS_ARRAY_EDEFAULT; + + /** + * This is true if the Is Array attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean isArrayESet; + + /** + * The default value of the '{@link #getMaxIndexAttribute() <em>Max Index Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxIndexAttribute() + * @generated + * @ordered + */ + protected static final String MAX_INDEX_ATTRIBUTE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMaxIndexAttribute() <em>Max Index Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxIndexAttribute() + * @generated + * @ordered + */ + protected String maxIndexAttribute = MAX_INDEX_ATTRIBUTE_EDEFAULT; + + /** + * The default value of the '{@link #getMaxValue() <em>Max Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxValue() + * @generated + * @ordered + */ + protected static final BigDecimal MAX_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMaxValue() <em>Max Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxValue() + * @generated + * @ordered + */ + protected BigDecimal maxValue = MAX_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #getMinIndex() <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinIndex() + * @generated + * @ordered + */ + protected static final long MIN_INDEX_EDEFAULT = 0L; + + /** + * The cached value of the '{@link #getMinIndex() <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinIndex() + * @generated + * @ordered + */ + protected long minIndex = MIN_INDEX_EDEFAULT; + + /** + * This is true if the Min Index attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean minIndexESet; + + /** + * The default value of the '{@link #getMinValue() <em>Min Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinValue() + * @generated + * @ordered + */ + protected static final BigDecimal MIN_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMinValue() <em>Min Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinValue() + * @generated + * @ordered + */ + protected BigDecimal minValue = MIN_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected static final String PRES_COND_EDEFAULT = "M"; + + /** + * The cached value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected String presCond = PRES_COND_EDEFAULT; + + /** + * This is true if the Pres Cond attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean presCondESet; + + /** + * The default value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected String presCondArgs = PRES_COND_ARGS_EDEFAULT; + + /** + * The default value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected String presCondArgsID = PRES_COND_ARGS_ID_EDEFAULT; + + /** + * The default value of the '{@link #getSizeAttribute() <em>Size Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSizeAttribute() + * @generated + * @ordered + */ + protected static final String SIZE_ATTRIBUTE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSizeAttribute() <em>Size Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSizeAttribute() + * @generated + * @ordered + */ + protected String sizeAttribute = SIZE_ATTRIBUTE_EDEFAULT; + + /** + * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected static final String TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected String type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getTypeKind() <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTypeKind() + * @generated + * @ordered + */ + protected static final Enumerator TYPE_KIND_EDEFAULT = ( Enumerator ) NsdFactory.eINSTANCE + .createFromString( NsdPackage.eINSTANCE.getTAttributeTypeKind(), "BASIC" ); + + /** + * The cached value of the '{@link #getTypeKind() <em>Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTypeKind() + * @generated + * @ordered + */ + protected Enumerator typeKind = TYPE_KIND_EDEFAULT; + + /** + * This is true if the Type Kind attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean typeKindESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TSubDataAttributeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSUB_DATA_ATTRIBUTE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getDefaultValue() { + return defaultValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDefaultValue( String newDefaultValue ) { + String oldDefaultValue = defaultValue; + defaultValue = newDefaultValue; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__DEFAULT_VALUE, oldDefaultValue, defaultValue ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isIsArray() { + return isArray; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setIsArray( boolean newIsArray ) { + boolean oldIsArray = isArray; + isArray = newIsArray; + boolean oldIsArrayESet = isArrayESet; + isArrayESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__IS_ARRAY, oldIsArray, isArray, !oldIsArrayESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetIsArray() { + boolean oldIsArray = isArray; + boolean oldIsArrayESet = isArrayESet; + isArray = IS_ARRAY_EDEFAULT; + isArrayESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSUB_DATA_ATTRIBUTE__IS_ARRAY, oldIsArray, IS_ARRAY_EDEFAULT, oldIsArrayESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetIsArray() { + return isArrayESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getMaxIndexAttribute() { + return maxIndexAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMaxIndexAttribute( String newMaxIndexAttribute ) { + String oldMaxIndexAttribute = maxIndexAttribute; + maxIndexAttribute = newMaxIndexAttribute; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE, oldMaxIndexAttribute, maxIndexAttribute ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public BigDecimal getMaxValue() { + return maxValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMaxValue( BigDecimal newMaxValue ) { + BigDecimal oldMaxValue = maxValue; + maxValue = newMaxValue; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_VALUE, oldMaxValue, maxValue ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public long getMinIndex() { + return minIndex; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMinIndex( long newMinIndex ) { + long oldMinIndex = minIndex; + minIndex = newMinIndex; + boolean oldMinIndexESet = minIndexESet; + minIndexESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_INDEX, oldMinIndex, minIndex, !oldMinIndexESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetMinIndex() { + long oldMinIndex = minIndex; + boolean oldMinIndexESet = minIndexESet; + minIndex = MIN_INDEX_EDEFAULT; + minIndexESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_INDEX, oldMinIndex, MIN_INDEX_EDEFAULT, oldMinIndexESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetMinIndex() { + return minIndexESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public BigDecimal getMinValue() { + return minValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMinValue( BigDecimal newMinValue ) { + BigDecimal oldMinValue = minValue; + minValue = newMinValue; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_VALUE, oldMinValue, minValue ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSUB_DATA_ATTRIBUTE__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCond() { + return presCond; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCond( String newPresCond ) { + String oldPresCond = presCond; + presCond = newPresCond; + boolean oldPresCondESet = presCondESet; + presCondESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND, oldPresCond, presCond, !oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPresCond() { + String oldPresCond = presCond; + boolean oldPresCondESet = presCondESet; + presCond = PRES_COND_EDEFAULT; + presCondESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND, oldPresCond, PRES_COND_EDEFAULT, oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPresCond() { + return presCondESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgs() { + return presCondArgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgs( String newPresCondArgs ) { + String oldPresCondArgs = presCondArgs; + presCondArgs = newPresCondArgs; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS, oldPresCondArgs, presCondArgs ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgsID() { + return presCondArgsID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgsID( String newPresCondArgsID ) { + String oldPresCondArgsID = presCondArgsID; + presCondArgsID = newPresCondArgsID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID, oldPresCondArgsID, presCondArgsID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getSizeAttribute() { + return sizeAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setSizeAttribute( String newSizeAttribute ) { + String oldSizeAttribute = sizeAttribute; + sizeAttribute = newSizeAttribute; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE, oldSizeAttribute, sizeAttribute ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getType() { + return type; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setType( String newType ) { + String oldType = type; + type = newType; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE, oldType, type ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Enumerator getTypeKind() { + return typeKind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTypeKind( Enumerator newTypeKind ) { + Enumerator oldTypeKind = typeKind; + typeKind = newTypeKind; + boolean oldTypeKindESet = typeKindESet; + typeKindESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE_KIND, oldTypeKind, typeKind, !oldTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetTypeKind() { + Enumerator oldTypeKind = typeKind; + boolean oldTypeKindESet = typeKindESet; + typeKind = TYPE_KIND_EDEFAULT; + typeKindESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE_KIND, oldTypeKind, TYPE_KIND_EDEFAULT, oldTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetTypeKind() { + return typeKindESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSUB_DATA_ATTRIBUTE__DEFAULT_VALUE: + return getDefaultValue(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__IS_ARRAY: + return isIsArray(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: + return getMaxIndexAttribute(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_VALUE: + return getMaxValue(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_INDEX: + return getMinIndex(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_VALUE: + return getMinValue(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__NAME: + return getName(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND: + return getPresCond(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS: + return getPresCondArgs(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: + return getPresCondArgsID(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE: + return getSizeAttribute(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE: + return getType(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE_KIND: + return getTypeKind(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TSUB_DATA_ATTRIBUTE__DEFAULT_VALUE: + setDefaultValue( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__IS_ARRAY: + setIsArray( ( Boolean ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: + setMaxIndexAttribute( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_VALUE: + setMaxValue( ( BigDecimal ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_INDEX: + setMinIndex( ( Long ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_VALUE: + setMinValue( ( BigDecimal ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__NAME: + setName( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND: + setPresCond( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS: + setPresCondArgs( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: + setPresCondArgsID( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE: + setSizeAttribute( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE: + setType( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE_KIND: + setTypeKind( ( Enumerator ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSUB_DATA_ATTRIBUTE__DEFAULT_VALUE: + setDefaultValue( DEFAULT_VALUE_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__IS_ARRAY: + unsetIsArray(); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: + setMaxIndexAttribute( MAX_INDEX_ATTRIBUTE_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_VALUE: + setMaxValue( MAX_VALUE_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_INDEX: + unsetMinIndex(); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_VALUE: + setMinValue( MIN_VALUE_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__NAME: + setName( NAME_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND: + unsetPresCond(); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS: + setPresCondArgs( PRES_COND_ARGS_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: + setPresCondArgsID( PRES_COND_ARGS_ID_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE: + setSizeAttribute( SIZE_ATTRIBUTE_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE: + setType( TYPE_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE_KIND: + unsetTypeKind(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSUB_DATA_ATTRIBUTE__DEFAULT_VALUE: + return DEFAULT_VALUE_EDEFAULT == null ? defaultValue != null + : !DEFAULT_VALUE_EDEFAULT.equals( defaultValue ); + case NsdPackage.TSUB_DATA_ATTRIBUTE__IS_ARRAY: + return isSetIsArray(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: + return MAX_INDEX_ATTRIBUTE_EDEFAULT == null ? maxIndexAttribute != null + : !MAX_INDEX_ATTRIBUTE_EDEFAULT.equals( maxIndexAttribute ); + case NsdPackage.TSUB_DATA_ATTRIBUTE__MAX_VALUE: + return MAX_VALUE_EDEFAULT == null ? maxValue != null : !MAX_VALUE_EDEFAULT.equals( maxValue ); + case NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_INDEX: + return isSetMinIndex(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__MIN_VALUE: + return MIN_VALUE_EDEFAULT == null ? minValue != null : !MIN_VALUE_EDEFAULT.equals( minValue ); + case NsdPackage.TSUB_DATA_ATTRIBUTE__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND: + return isSetPresCond(); + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS: + return PRES_COND_ARGS_EDEFAULT == null ? presCondArgs != null + : !PRES_COND_ARGS_EDEFAULT.equals( presCondArgs ); + case NsdPackage.TSUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: + return PRES_COND_ARGS_ID_EDEFAULT == null ? presCondArgsID != null + : !PRES_COND_ARGS_ID_EDEFAULT.equals( presCondArgsID ); + case NsdPackage.TSUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE: + return SIZE_ATTRIBUTE_EDEFAULT == null ? sizeAttribute != null + : !SIZE_ATTRIBUTE_EDEFAULT.equals( sizeAttribute ); + case NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE: + return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals( type ); + case NsdPackage.TSUB_DATA_ATTRIBUTE__TYPE_KIND: + return isSetTypeKind(); + } + 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( " (defaultValue: " ); + result.append( defaultValue ); + result.append( ", isArray: " ); + if( isArrayESet ) + result.append( isArray ); + else + result.append( "<unset>" ); + result.append( ", maxIndexAttribute: " ); + result.append( maxIndexAttribute ); + result.append( ", maxValue: " ); + result.append( maxValue ); + result.append( ", minIndex: " ); + if( minIndexESet ) + result.append( minIndex ); + else + result.append( "<unset>" ); + result.append( ", minValue: " ); + result.append( minValue ); + result.append( ", name: " ); + result.append( name ); + result.append( ", presCond: " ); + if( presCondESet ) + result.append( presCond ); + else + result.append( "<unset>" ); + result.append( ", presCondArgs: " ); + result.append( presCondArgs ); + result.append( ", presCondArgsID: " ); + result.append( presCondArgsID ); + result.append( ", sizeAttribute: " ); + result.append( sizeAttribute ); + result.append( ", type: " ); + result.append( type ); + result.append( ", typeKind: " ); + if( typeKindESet ) + result.append( typeKind ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TSubDataAttributeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TSubDataObjectImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TSubDataObjectImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..5a06c65586c04563dc55a5f06633ecbccdb03424 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TSubDataObjectImpl.java @@ -0,0 +1,905 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDefinedAttributeTypeKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TSub Data Object</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#isIsArray <em>Is Array</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#getMaxIndexAttribute <em>Max Index Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#getMinIndex <em>Min Index</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#getName <em>Name</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#getPresCond <em>Pres Cond</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#getSizeAttribute <em>Size Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#getType <em>Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#getUnderlyingType <em>Underlying Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TSubDataObjectImpl#getUnderlyingTypeKind <em>Underlying Type Kind</em>}</li> + * </ul> + * + * @generated + */ +public class TSubDataObjectImpl extends TDocumentedClassImpl implements TSubDataObject { + /** + * The default value of the '{@link #isIsArray() <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isIsArray() + * @generated + * @ordered + */ + protected static final boolean IS_ARRAY_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIsArray() <em>Is Array</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isIsArray() + * @generated + * @ordered + */ + protected boolean isArray = IS_ARRAY_EDEFAULT; + + /** + * This is true if the Is Array attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean isArrayESet; + + /** + * The default value of the '{@link #getMaxIndexAttribute() <em>Max Index Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxIndexAttribute() + * @generated + * @ordered + */ + protected static final String MAX_INDEX_ATTRIBUTE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMaxIndexAttribute() <em>Max Index Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMaxIndexAttribute() + * @generated + * @ordered + */ + protected String maxIndexAttribute = MAX_INDEX_ATTRIBUTE_EDEFAULT; + + /** + * The default value of the '{@link #getMinIndex() <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinIndex() + * @generated + * @ordered + */ + protected static final long MIN_INDEX_EDEFAULT = 0L; + + /** + * The cached value of the '{@link #getMinIndex() <em>Min Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMinIndex() + * @generated + * @ordered + */ + protected long minIndex = MIN_INDEX_EDEFAULT; + + /** + * This is true if the Min Index attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean minIndexESet; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected static final String PRES_COND_EDEFAULT = "M"; + + /** + * The cached value of the '{@link #getPresCond() <em>Pres Cond</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCond() + * @generated + * @ordered + */ + protected String presCond = PRES_COND_EDEFAULT; + + /** + * This is true if the Pres Cond attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean presCondESet; + + /** + * The default value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgs() <em>Pres Cond Args</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgs() + * @generated + * @ordered + */ + protected String presCondArgs = PRES_COND_ARGS_EDEFAULT; + + /** + * The default value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected static final String PRES_COND_ARGS_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPresCondArgsID() <em>Pres Cond Args ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPresCondArgsID() + * @generated + * @ordered + */ + protected String presCondArgsID = PRES_COND_ARGS_ID_EDEFAULT; + + /** + * The default value of the '{@link #getSizeAttribute() <em>Size Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSizeAttribute() + * @generated + * @ordered + */ + protected static final String SIZE_ATTRIBUTE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSizeAttribute() <em>Size Attribute</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSizeAttribute() + * @generated + * @ordered + */ + protected String sizeAttribute = SIZE_ATTRIBUTE_EDEFAULT; + + /** + * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected static final String TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected String type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getUnderlyingType() <em>Underlying Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingType() + * @generated + * @ordered + */ + protected static final String UNDERLYING_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUnderlyingType() <em>Underlying Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingType() + * @generated + * @ordered + */ + protected String underlyingType = UNDERLYING_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getUnderlyingTypeKind() <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingTypeKind() + * @generated + * @ordered + */ + protected static final TDefinedAttributeTypeKind UNDERLYING_TYPE_KIND_EDEFAULT = TDefinedAttributeTypeKind.BASIC; + + /** + * The cached value of the '{@link #getUnderlyingTypeKind() <em>Underlying Type Kind</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnderlyingTypeKind() + * @generated + * @ordered + */ + protected TDefinedAttributeTypeKind underlyingTypeKind = UNDERLYING_TYPE_KIND_EDEFAULT; + + /** + * This is true if the Underlying Type Kind attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean underlyingTypeKindESet; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TSubDataObjectImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TSUB_DATA_OBJECT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isIsArray() { + return isArray; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setIsArray( boolean newIsArray ) { + boolean oldIsArray = isArray; + isArray = newIsArray; + boolean oldIsArrayESet = isArrayESet; + isArrayESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_OBJECT__IS_ARRAY, oldIsArray, isArray, !oldIsArrayESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetIsArray() { + boolean oldIsArray = isArray; + boolean oldIsArrayESet = isArrayESet; + isArray = IS_ARRAY_EDEFAULT; + isArrayESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSUB_DATA_OBJECT__IS_ARRAY, oldIsArray, IS_ARRAY_EDEFAULT, oldIsArrayESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetIsArray() { + return isArrayESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getMaxIndexAttribute() { + return maxIndexAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMaxIndexAttribute( String newMaxIndexAttribute ) { + String oldMaxIndexAttribute = maxIndexAttribute; + maxIndexAttribute = newMaxIndexAttribute; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE, oldMaxIndexAttribute, maxIndexAttribute ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public long getMinIndex() { + return minIndex; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setMinIndex( long newMinIndex ) { + long oldMinIndex = minIndex; + minIndex = newMinIndex; + boolean oldMinIndexESet = minIndexESet; + minIndexESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_OBJECT__MIN_INDEX, oldMinIndex, minIndex, !oldMinIndexESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetMinIndex() { + long oldMinIndex = minIndex; + boolean oldMinIndexESet = minIndexESet; + minIndex = MIN_INDEX_EDEFAULT; + minIndexESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSUB_DATA_OBJECT__MIN_INDEX, oldMinIndex, MIN_INDEX_EDEFAULT, oldMinIndexESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetMinIndex() { + return minIndexESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName( String newName ) { + String oldName = name; + name = newName; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSUB_DATA_OBJECT__NAME, oldName, name ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCond() { + return presCond; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCond( String newPresCond ) { + String oldPresCond = presCond; + presCond = newPresCond; + boolean oldPresCondESet = presCondESet; + presCondESet = true; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_OBJECT__PRES_COND, oldPresCond, presCond, !oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetPresCond() { + String oldPresCond = presCond; + boolean oldPresCondESet = presCondESet; + presCond = PRES_COND_EDEFAULT; + presCondESet = false; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.TSUB_DATA_OBJECT__PRES_COND, oldPresCond, PRES_COND_EDEFAULT, oldPresCondESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetPresCond() { + return presCondESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgs() { + return presCondArgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgs( String newPresCondArgs ) { + String oldPresCondArgs = presCondArgs; + presCondArgs = newPresCondArgs; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS, oldPresCondArgs, presCondArgs ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getPresCondArgsID() { + return presCondArgsID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setPresCondArgsID( String newPresCondArgsID ) { + String oldPresCondArgsID = presCondArgsID; + presCondArgsID = newPresCondArgsID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS_ID, oldPresCondArgsID, presCondArgsID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getSizeAttribute() { + return sizeAttribute; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setSizeAttribute( String newSizeAttribute ) { + String oldSizeAttribute = sizeAttribute; + sizeAttribute = newSizeAttribute; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_OBJECT__SIZE_ATTRIBUTE, oldSizeAttribute, sizeAttribute ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getType() { + return type; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setType( String newType ) { + String oldType = type; + type = newType; + if( eNotificationRequired() ) eNotify( + new ENotificationImpl( this, Notification.SET, NsdPackage.TSUB_DATA_OBJECT__TYPE, oldType, type ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getUnderlyingType() { + return underlyingType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUnderlyingType( String newUnderlyingType ) { + String oldUnderlyingType = underlyingType; + underlyingType = newUnderlyingType; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE, oldUnderlyingType, underlyingType ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public TDefinedAttributeTypeKind getUnderlyingTypeKind() { + return underlyingTypeKind; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setUnderlyingTypeKind( TDefinedAttributeTypeKind newUnderlyingTypeKind ) { + TDefinedAttributeTypeKind oldUnderlyingTypeKind = underlyingTypeKind; + underlyingTypeKind = newUnderlyingTypeKind == null ? UNDERLYING_TYPE_KIND_EDEFAULT : newUnderlyingTypeKind; + boolean oldUnderlyingTypeKindESet = underlyingTypeKindESet; + underlyingTypeKindESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND, + oldUnderlyingTypeKind, underlyingTypeKind, !oldUnderlyingTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetUnderlyingTypeKind() { + TDefinedAttributeTypeKind oldUnderlyingTypeKind = underlyingTypeKind; + boolean oldUnderlyingTypeKindESet = underlyingTypeKindESet; + underlyingTypeKind = UNDERLYING_TYPE_KIND_EDEFAULT; + underlyingTypeKindESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND, + oldUnderlyingTypeKind, UNDERLYING_TYPE_KIND_EDEFAULT, oldUnderlyingTypeKindESet ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetUnderlyingTypeKind() { + return underlyingTypeKindESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TSUB_DATA_OBJECT__IS_ARRAY: + return isIsArray(); + case NsdPackage.TSUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE: + return getMaxIndexAttribute(); + case NsdPackage.TSUB_DATA_OBJECT__MIN_INDEX: + return getMinIndex(); + case NsdPackage.TSUB_DATA_OBJECT__NAME: + return getName(); + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND: + return getPresCond(); + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS: + return getPresCondArgs(); + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS_ID: + return getPresCondArgsID(); + case NsdPackage.TSUB_DATA_OBJECT__SIZE_ATTRIBUTE: + return getSizeAttribute(); + case NsdPackage.TSUB_DATA_OBJECT__TYPE: + return getType(); + case NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE: + return getUnderlyingType(); + case NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND: + return getUnderlyingTypeKind(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TSUB_DATA_OBJECT__IS_ARRAY: + setIsArray( ( Boolean ) newValue ); + return; + case NsdPackage.TSUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE: + setMaxIndexAttribute( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_OBJECT__MIN_INDEX: + setMinIndex( ( Long ) newValue ); + return; + case NsdPackage.TSUB_DATA_OBJECT__NAME: + setName( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND: + setPresCond( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS: + setPresCondArgs( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS_ID: + setPresCondArgsID( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_OBJECT__SIZE_ATTRIBUTE: + setSizeAttribute( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_OBJECT__TYPE: + setType( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE: + setUnderlyingType( ( String ) newValue ); + return; + case NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND: + setUnderlyingTypeKind( ( TDefinedAttributeTypeKind ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TSUB_DATA_OBJECT__IS_ARRAY: + unsetIsArray(); + return; + case NsdPackage.TSUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE: + setMaxIndexAttribute( MAX_INDEX_ATTRIBUTE_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_OBJECT__MIN_INDEX: + unsetMinIndex(); + return; + case NsdPackage.TSUB_DATA_OBJECT__NAME: + setName( NAME_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND: + unsetPresCond(); + return; + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS: + setPresCondArgs( PRES_COND_ARGS_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS_ID: + setPresCondArgsID( PRES_COND_ARGS_ID_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_OBJECT__SIZE_ATTRIBUTE: + setSizeAttribute( SIZE_ATTRIBUTE_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_OBJECT__TYPE: + setType( TYPE_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE: + setUnderlyingType( UNDERLYING_TYPE_EDEFAULT ); + return; + case NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND: + unsetUnderlyingTypeKind(); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TSUB_DATA_OBJECT__IS_ARRAY: + return isSetIsArray(); + case NsdPackage.TSUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE: + return MAX_INDEX_ATTRIBUTE_EDEFAULT == null ? maxIndexAttribute != null + : !MAX_INDEX_ATTRIBUTE_EDEFAULT.equals( maxIndexAttribute ); + case NsdPackage.TSUB_DATA_OBJECT__MIN_INDEX: + return isSetMinIndex(); + case NsdPackage.TSUB_DATA_OBJECT__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals( name ); + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND: + return isSetPresCond(); + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS: + return PRES_COND_ARGS_EDEFAULT == null ? presCondArgs != null + : !PRES_COND_ARGS_EDEFAULT.equals( presCondArgs ); + case NsdPackage.TSUB_DATA_OBJECT__PRES_COND_ARGS_ID: + return PRES_COND_ARGS_ID_EDEFAULT == null ? presCondArgsID != null + : !PRES_COND_ARGS_ID_EDEFAULT.equals( presCondArgsID ); + case NsdPackage.TSUB_DATA_OBJECT__SIZE_ATTRIBUTE: + return SIZE_ATTRIBUTE_EDEFAULT == null ? sizeAttribute != null + : !SIZE_ATTRIBUTE_EDEFAULT.equals( sizeAttribute ); + case NsdPackage.TSUB_DATA_OBJECT__TYPE: + return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals( type ); + case NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE: + return UNDERLYING_TYPE_EDEFAULT == null ? underlyingType != null + : !UNDERLYING_TYPE_EDEFAULT.equals( underlyingType ); + case NsdPackage.TSUB_DATA_OBJECT__UNDERLYING_TYPE_KIND: + return isSetUnderlyingTypeKind(); + } + 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( " (isArray: " ); + if( isArrayESet ) + result.append( isArray ); + else + result.append( "<unset>" ); + result.append( ", maxIndexAttribute: " ); + result.append( maxIndexAttribute ); + result.append( ", minIndex: " ); + if( minIndexESet ) + result.append( minIndex ); + else + result.append( "<unset>" ); + result.append( ", name: " ); + result.append( name ); + result.append( ", presCond: " ); + if( presCondESet ) + result.append( presCond ); + else + result.append( "<unset>" ); + result.append( ", presCondArgs: " ); + result.append( presCondArgs ); + result.append( ", presCondArgsID: " ); + result.append( presCondArgsID ); + result.append( ", sizeAttribute: " ); + result.append( sizeAttribute ); + result.append( ", type: " ); + result.append( type ); + result.append( ", underlyingType: " ); + result.append( underlyingType ); + result.append( ", underlyingTypeKind: " ); + if( underlyingTypeKindESet ) + result.append( underlyingTypeKind ); + else + result.append( "<unset>" ); + result.append( ')' ); + return result.toString(); + } + +} //TSubDataObjectImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TTitledClassImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TTitledClassImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..1a9b7e670414f3fdacf9be307f8212a83b337d8a --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/TTitledClassImpl.java @@ -0,0 +1,181 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>TTitled Class</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.TTitledClassImpl#getTitleID <em>Title ID</em>}</li> + * </ul> + * + * @generated + */ +public class TTitledClassImpl extends TDocumentedClassImpl implements TTitledClass { + /** + * The default value of the '{@link #getTitleID() <em>Title ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTitleID() + * @generated + * @ordered + */ + protected static final String TITLE_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTitleID() <em>Title ID</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTitleID() + * @generated + * @ordered + */ + protected String titleID = TITLE_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected TTitledClassImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return NsdPackage.Literals.TTITLED_CLASS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getTitleID() { + return titleID; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setTitleID( String newTitleID ) { + String oldTitleID = titleID; + titleID = newTitleID; + if( eNotificationRequired() ) eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.TTITLED_CLASS__TITLE_ID, oldTitleID, titleID ) ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet( int featureID, boolean resolve, boolean coreType ) { + switch( featureID ) { + case NsdPackage.TTITLED_CLASS__TITLE_ID: + return getTitleID(); + } + return super.eGet( featureID, resolve, coreType ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet( int featureID, Object newValue ) { + switch( featureID ) { + case NsdPackage.TTITLED_CLASS__TITLE_ID: + setTitleID( ( String ) newValue ); + return; + } + super.eSet( featureID, newValue ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset( int featureID ) { + switch( featureID ) { + case NsdPackage.TTITLED_CLASS__TITLE_ID: + setTitleID( TITLE_ID_EDEFAULT ); + return; + } + super.eUnset( featureID ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet( int featureID ) { + switch( featureID ) { + case NsdPackage.TTITLED_CLASS__TITLE_ID: + return TITLE_ID_EDEFAULT == null ? titleID != null : !TITLE_ID_EDEFAULT.equals( titleID ); + } + 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( " (titleID: " ); + result.append( titleID ); + result.append( ')' ); + return result.toString(); + } + +} //TTitledClassImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdAdapterFactory.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdAdapterFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..8e4f8c9bc7df742da9eea808ab71548ce573c6e9 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdAdapterFactory.java @@ -0,0 +1,1067 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.util; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * The <b>Adapter Factory</b> for the model. + * It provides an adapter <code>createXXX</code> method for each class of the model. + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage + * @generated + */ +public class NsdAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static NsdPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NsdAdapterFactory() { + if( modelPackage == null ) { + modelPackage = NsdPackage.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 NsdSwitch< Adapter > modelSwitch = new NsdSwitch< Adapter >() { + @Override + public Adapter caseAppliesToType( AppliesToType object ) { + return createAppliesToTypeAdapter(); + } + + @Override + public Adapter caseDependsOnType( DependsOnType object ) { + return createDependsOnTypeAdapter(); + } + + @Override + public Adapter caseDocumentRoot( DocumentRoot object ) { + return createDocumentRootAdapter(); + } + + @Override + public Adapter caseServiceType( ServiceType object ) { + return createServiceTypeAdapter(); + } + + @Override + public Adapter caseTAbbreviation( TAbbreviation object ) { + return createTAbbreviationAdapter(); + } + + @Override + public Adapter caseTAbbreviations( TAbbreviations object ) { + return createTAbbreviationsAdapter(); + } + + @Override + public Adapter caseTAbstractLNClass( TAbstractLNClass object ) { + return createTAbstractLNClassAdapter(); + } + + @Override + public Adapter caseTAnyLNClass( TAnyLNClass object ) { + return createTAnyLNClassAdapter(); + } + + @Override + public Adapter caseTApplicableServiceNS( TApplicableServiceNS object ) { + return createTApplicableServiceNSAdapter(); + } + + @Override + public Adapter caseTApplicableServices( TApplicableServices object ) { + return createTApplicableServicesAdapter(); + } + + @Override + public Adapter caseTBasicType( TBasicType object ) { + return createTBasicTypeAdapter(); + } + + @Override + public Adapter caseTBasicTypes( TBasicTypes object ) { + return createTBasicTypesAdapter(); + } + + @Override + public Adapter caseTCDC( TCDC object ) { + return createTCDCAdapter(); + } + + @Override + public Adapter caseTCDCs( TCDCs object ) { + return createTCDCsAdapter(); + } + + @Override + public Adapter caseTChanges( TChanges object ) { + return createTChangesAdapter(); + } + + @Override + public Adapter caseTConstructedAttribute( TConstructedAttribute object ) { + return createTConstructedAttributeAdapter(); + } + + @Override + public Adapter caseTConstructedAttributes( TConstructedAttributes object ) { + return createTConstructedAttributesAdapter(); + } + + @Override + public Adapter caseTCopyrighted( TCopyrighted object ) { + return createTCopyrightedAdapter(); + } + + @Override + public Adapter caseTCopyrightNotice( TCopyrightNotice object ) { + return createTCopyrightNoticeAdapter(); + } + + @Override + public Adapter caseTDataAttribute( TDataAttribute object ) { + return createTDataAttributeAdapter(); + } + + @Override + public Adapter caseTDataObject( TDataObject object ) { + return createTDataObjectAdapter(); + } + + @Override + public Adapter caseTDataSetMemberOf( TDataSetMemberOf object ) { + return createTDataSetMemberOfAdapter(); + } + + @Override + public Adapter caseTDoc( TDoc object ) { + return createTDocAdapter(); + } + + @Override + public Adapter caseTDocumentedClass( TDocumentedClass object ) { + return createTDocumentedClassAdapter(); + } + + @Override + public Adapter caseTEnumeration( TEnumeration object ) { + return createTEnumerationAdapter(); + } + + @Override + public Adapter caseTEnumerations( TEnumerations object ) { + return createTEnumerationsAdapter(); + } + + @Override + public Adapter caseTFunctionalConstraint( TFunctionalConstraint object ) { + return createTFunctionalConstraintAdapter(); + } + + @Override + public Adapter caseTFunctionalConstraints( TFunctionalConstraints object ) { + return createTFunctionalConstraintsAdapter(); + } + + @Override + public Adapter caseTLicense( TLicense object ) { + return createTLicenseAdapter(); + } + + @Override + public Adapter caseTLiteral( TLiteral object ) { + return createTLiteralAdapter(); + } + + @Override + public Adapter caseTLNClass( TLNClass object ) { + return createTLNClassAdapter(); + } + + @Override + public Adapter caseTLNClasses( TLNClasses object ) { + return createTLNClassesAdapter(); + } + + @Override + public Adapter caseTNotice( TNotice object ) { + return createTNoticeAdapter(); + } + + @Override + public Adapter caseTNS( TNS object ) { + return createTNSAdapter(); + } + + @Override + public Adapter caseTNSDoc( TNSDoc object ) { + return createTNSDocAdapter(); + } + + @Override + public Adapter caseTPresenceCondition( TPresenceCondition object ) { + return createTPresenceConditionAdapter(); + } + + @Override + public Adapter caseTPresenceConditions( TPresenceConditions object ) { + return createTPresenceConditionsAdapter(); + } + + @Override + public Adapter caseTServiceCDC( TServiceCDC object ) { + return createTServiceCDCAdapter(); + } + + @Override + public Adapter caseTServiceCDCs( TServiceCDCs object ) { + return createTServiceCDCsAdapter(); + } + + @Override + public Adapter caseTServiceConstructedAttribute( TServiceConstructedAttribute object ) { + return createTServiceConstructedAttributeAdapter(); + } + + @Override + public Adapter caseTServiceConstructedAttributes( TServiceConstructedAttributes object ) { + return createTServiceConstructedAttributesAdapter(); + } + + @Override + public Adapter caseTServiceDataAttribute( TServiceDataAttribute object ) { + return createTServiceDataAttributeAdapter(); + } + + @Override + public Adapter caseTServiceNS( TServiceNS object ) { + return createTServiceNSAdapter(); + } + + @Override + public Adapter caseTServiceNsUsage( TServiceNsUsage object ) { + return createTServiceNsUsageAdapter(); + } + + @Override + public Adapter caseTServiceParameter( TServiceParameter object ) { + return createTServiceParameterAdapter(); + } + + @Override + public Adapter caseTServiceTypeRealization( TServiceTypeRealization object ) { + return createTServiceTypeRealizationAdapter(); + } + + @Override + public Adapter caseTServiceTypeRealizations( TServiceTypeRealizations object ) { + return createTServiceTypeRealizationsAdapter(); + } + + @Override + public Adapter caseTSubDataAttribute( TSubDataAttribute object ) { + return createTSubDataAttributeAdapter(); + } + + @Override + public Adapter caseTSubDataObject( TSubDataObject object ) { + return createTSubDataObjectAdapter(); + } + + @Override + public Adapter caseTTitledClass( TTitledClass object ) { + return createTTitledClassAdapter(); + } + + @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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType <em>Applies To Type</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.AppliesToType + * @generated + */ + public Adapter createAppliesToTypeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType <em>Depends On Type</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOnType + * @generated + */ + public Adapter createDependsOnTypeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot <em>Document Root</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot + * @generated + */ + public Adapter createDocumentRootAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType <em>Service Type</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceType + * @generated + */ + public Adapter createServiceTypeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation <em>TAbbreviation</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviation + * @generated + */ + public Adapter createTAbbreviationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations <em>TAbbreviations</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbbreviations + * @generated + */ + public Adapter createTAbbreviationsAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass <em>TAbstract LN Class</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAbstractLNClass + * @generated + */ + public Adapter createTAbstractLNClassAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass <em>TAny LN Class</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TAnyLNClass + * @generated + */ + public Adapter createTAnyLNClassAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS <em>TApplicable Service NS</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServiceNS + * @generated + */ + public Adapter createTApplicableServiceNSAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices <em>TApplicable Services</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TApplicableServices + * @generated + */ + public Adapter createTApplicableServicesAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType <em>TBasic Type</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicType + * @generated + */ + public Adapter createTBasicTypeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes <em>TBasic Types</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TBasicTypes + * @generated + */ + public Adapter createTBasicTypesAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC <em>TCDC</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDC + * @generated + */ + public Adapter createTCDCAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs <em>TCD Cs</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCDCs + * @generated + */ + public Adapter createTCDCsAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges <em>TChanges</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TChanges + * @generated + */ + public Adapter createTChangesAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute <em>TConstructed 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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttribute + * @generated + */ + public Adapter createTConstructedAttributeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes <em>TConstructed Attributes</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TConstructedAttributes + * @generated + */ + public Adapter createTConstructedAttributesAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted <em>TCopyrighted</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrighted + * @generated + */ + public Adapter createTCopyrightedAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice <em>TCopyright Notice</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TCopyrightNotice + * @generated + */ + public Adapter createTCopyrightNoticeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute <em>TData 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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataAttribute + * @generated + */ + public Adapter createTDataAttributeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject <em>TData Object</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataObject + * @generated + */ + public Adapter createTDataObjectAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf <em>TData Set Member Of</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDataSetMemberOf + * @generated + */ + public Adapter createTDataSetMemberOfAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc <em>TDoc</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDoc + * @generated + */ + public Adapter createTDocAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass <em>TDocumented Class</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TDocumentedClass + * @generated + */ + public Adapter createTDocumentedClassAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration <em>TEnumeration</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumeration + * @generated + */ + public Adapter createTEnumerationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations <em>TEnumerations</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TEnumerations + * @generated + */ + public Adapter createTEnumerationsAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint <em>TFunctional Constraint</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint + * @generated + */ + public Adapter createTFunctionalConstraintAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints <em>TFunctional Constraints</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints + * @generated + */ + public Adapter createTFunctionalConstraintsAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense <em>TLicense</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLicense + * @generated + */ + public Adapter createTLicenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral <em>TLiteral</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLiteral + * @generated + */ + public Adapter createTLiteralAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass <em>TLN Class</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClass + * @generated + */ + public Adapter createTLNClassAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses <em>TLN Classes</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TLNClasses + * @generated + */ + public Adapter createTLNClassesAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice <em>TNotice</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNotice + * @generated + */ + public Adapter createTNoticeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS <em>TNS</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS + * @generated + */ + public Adapter createTNSAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc <em>TNS Doc</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNSDoc + * @generated + */ + public Adapter createTNSDocAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition <em>TPresence Condition</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceCondition + * @generated + */ + public Adapter createTPresenceConditionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions <em>TPresence Conditions</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TPresenceConditions + * @generated + */ + public Adapter createTPresenceConditionsAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC <em>TService CDC</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDC + * @generated + */ + public Adapter createTServiceCDCAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs <em>TService CD Cs</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceCDCs + * @generated + */ + public Adapter createTServiceCDCsAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute <em>TService Constructed 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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttribute + * @generated + */ + public Adapter createTServiceConstructedAttributeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes <em>TService Constructed Attributes</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceConstructedAttributes + * @generated + */ + public Adapter createTServiceConstructedAttributesAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute <em>TService Data 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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceDataAttribute + * @generated + */ + public Adapter createTServiceDataAttributeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS <em>TService NS</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNS + * @generated + */ + public Adapter createTServiceNSAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage <em>TService Ns Usage</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceNsUsage + * @generated + */ + public Adapter createTServiceNsUsageAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter <em>TService 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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceParameter + * @generated + */ + public Adapter createTServiceParameterAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization <em>TService Type Realization</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealization + * @generated + */ + public Adapter createTServiceTypeRealizationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations <em>TService Type Realizations</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TServiceTypeRealizations + * @generated + */ + public Adapter createTServiceTypeRealizationsAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute <em>TSub Data 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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataAttribute + * @generated + */ + public Adapter createTSubDataAttributeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject <em>TSub Data Object</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.TSubDataObject + * @generated + */ + public Adapter createTSubDataObjectAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass <em>TTitled Class</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 fr.centralesupelec.edf.riseclipse.iec61850.nsd.TTitledClass + * @generated + */ + public Adapter createTTitledClassAdapter() { + 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; + } + +} //NsdAdapterFactory diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdResourceFactoryImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdResourceFactoryImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..e518baae2725780d5cfc9c01889dc24d1a0babd7 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdResourceFactoryImpl.java @@ -0,0 +1,69 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.util; + +import org.eclipse.emf.common.util.URI; + +import org.eclipse.emf.ecore.resource.Resource; + +import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl; + +import org.eclipse.emf.ecore.xmi.XMLResource; + +/** + * <!-- begin-user-doc --> + * The <b>Resource Factory</b> associated with the package. + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceImpl + * @generated + */ +public class NsdResourceFactoryImpl extends ResourceFactoryImpl { + /** + * Creates an instance of the resource factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NsdResourceFactoryImpl() { + super(); + } + + /** + * Creates an instance of the resource. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Resource createResource( URI uri ) { + XMLResource result = new NsdResourceImpl( uri ); + result.getDefaultSaveOptions().put( XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE ); + result.getDefaultLoadOptions().put( XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE ); + + result.getDefaultSaveOptions().put( XMLResource.OPTION_SCHEMA_LOCATION, Boolean.TRUE ); + + result.getDefaultLoadOptions().put( XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE ); + result.getDefaultSaveOptions().put( XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE ); + + result.getDefaultLoadOptions().put( XMLResource.OPTION_USE_LEXICAL_HANDLER, Boolean.TRUE ); + return result; + } + +} //NsdResourceFactoryImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdResourceImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdResourceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..cb01b7c65e76694a3121c0225f4b16074799a06f --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdResourceImpl.java @@ -0,0 +1,45 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.util; + +import org.eclipse.emf.common.util.URI; + +import org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl; + +/** + * <!-- begin-user-doc --> + * The <b>Resource </b> associated with the package. + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceFactoryImpl + * @generated + */ +public class NsdResourceImpl extends XMLResourceImpl { + /** + * Creates an instance of the resource. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param uri the URI of the new resource. + * @generated + */ + public NsdResourceImpl( URI uri ) { + super( uri ); + } + +} //NsdResourceImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdSwitch.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdSwitch.java new file mode 100644 index 0000000000000000000000000000000000000000..e99592b1f4046b82b00dbd383aa5f32192b2285e --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdSwitch.java @@ -0,0 +1,1186 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.util; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.*; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +/** + * <!-- begin-user-doc --> + * The <b>Switch</b> for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage + * @generated + */ +public class NsdSwitch< T > extends Switch< T > { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static NsdPackage modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NsdSwitch() { + if( modelPackage == null ) { + modelPackage = NsdPackage.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 NsdPackage.APPLIES_TO_TYPE: { + AppliesToType appliesToType = ( AppliesToType ) theEObject; + T result = caseAppliesToType( appliesToType ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.DEPENDS_ON_TYPE: { + DependsOnType dependsOnType = ( DependsOnType ) theEObject; + T result = caseDependsOnType( dependsOnType ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.DOCUMENT_ROOT: { + DocumentRoot documentRoot = ( DocumentRoot ) theEObject; + T result = caseDocumentRoot( documentRoot ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.SERVICE_TYPE: { + ServiceType serviceType = ( ServiceType ) theEObject; + T result = caseServiceType( serviceType ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TABBREVIATION: { + TAbbreviation tAbbreviation = ( TAbbreviation ) theEObject; + T result = caseTAbbreviation( tAbbreviation ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TABBREVIATIONS: { + TAbbreviations tAbbreviations = ( TAbbreviations ) theEObject; + T result = caseTAbbreviations( tAbbreviations ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TABSTRACT_LN_CLASS: { + TAbstractLNClass tAbstractLNClass = ( TAbstractLNClass ) theEObject; + T result = caseTAbstractLNClass( tAbstractLNClass ); + if( result == null ) result = caseTAnyLNClass( tAbstractLNClass ); + if( result == null ) result = caseTTitledClass( tAbstractLNClass ); + if( result == null ) result = caseTDocumentedClass( tAbstractLNClass ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TANY_LN_CLASS: { + TAnyLNClass tAnyLNClass = ( TAnyLNClass ) theEObject; + T result = caseTAnyLNClass( tAnyLNClass ); + if( result == null ) result = caseTTitledClass( tAnyLNClass ); + if( result == null ) result = caseTDocumentedClass( tAnyLNClass ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TAPPLICABLE_SERVICE_NS: { + TApplicableServiceNS tApplicableServiceNS = ( TApplicableServiceNS ) theEObject; + T result = caseTApplicableServiceNS( tApplicableServiceNS ); + if( result == null ) result = caseTCopyrighted( tApplicableServiceNS ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TAPPLICABLE_SERVICES: { + TApplicableServices tApplicableServices = ( TApplicableServices ) theEObject; + T result = caseTApplicableServices( tApplicableServices ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TBASIC_TYPE: { + TBasicType tBasicType = ( TBasicType ) theEObject; + T result = caseTBasicType( tBasicType ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TBASIC_TYPES: { + TBasicTypes tBasicTypes = ( TBasicTypes ) theEObject; + T result = caseTBasicTypes( tBasicTypes ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TCDC: { + TCDC tcdc = ( TCDC ) theEObject; + T result = caseTCDC( tcdc ); + if( result == null ) result = caseTTitledClass( tcdc ); + if( result == null ) result = caseTDocumentedClass( tcdc ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TCD_CS: { + TCDCs tcdCs = ( TCDCs ) theEObject; + T result = caseTCDCs( tcdCs ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TCHANGES: { + TChanges tChanges = ( TChanges ) theEObject; + T result = caseTChanges( tChanges ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TCONSTRUCTED_ATTRIBUTE: { + TConstructedAttribute tConstructedAttribute = ( TConstructedAttribute ) theEObject; + T result = caseTConstructedAttribute( tConstructedAttribute ); + if( result == null ) result = caseTTitledClass( tConstructedAttribute ); + if( result == null ) result = caseTDocumentedClass( tConstructedAttribute ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TCONSTRUCTED_ATTRIBUTES: { + TConstructedAttributes tConstructedAttributes = ( TConstructedAttributes ) theEObject; + T result = caseTConstructedAttributes( tConstructedAttributes ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TCOPYRIGHTED: { + TCopyrighted tCopyrighted = ( TCopyrighted ) theEObject; + T result = caseTCopyrighted( tCopyrighted ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TCOPYRIGHT_NOTICE: { + TCopyrightNotice tCopyrightNotice = ( TCopyrightNotice ) theEObject; + T result = caseTCopyrightNotice( tCopyrightNotice ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TDATA_ATTRIBUTE: { + TDataAttribute tDataAttribute = ( TDataAttribute ) theEObject; + T result = caseTDataAttribute( tDataAttribute ); + if( result == null ) result = caseTDocumentedClass( tDataAttribute ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TDATA_OBJECT: { + TDataObject tDataObject = ( TDataObject ) theEObject; + T result = caseTDataObject( tDataObject ); + if( result == null ) result = caseTDocumentedClass( tDataObject ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TDATA_SET_MEMBER_OF: { + TDataSetMemberOf tDataSetMemberOf = ( TDataSetMemberOf ) theEObject; + T result = caseTDataSetMemberOf( tDataSetMemberOf ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TDOC: { + TDoc tDoc = ( TDoc ) theEObject; + T result = caseTDoc( tDoc ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TDOCUMENTED_CLASS: { + TDocumentedClass tDocumentedClass = ( TDocumentedClass ) theEObject; + T result = caseTDocumentedClass( tDocumentedClass ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TENUMERATION: { + TEnumeration tEnumeration = ( TEnumeration ) theEObject; + T result = caseTEnumeration( tEnumeration ); + if( result == null ) result = caseTTitledClass( tEnumeration ); + if( result == null ) result = caseTDocumentedClass( tEnumeration ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TENUMERATIONS: { + TEnumerations tEnumerations = ( TEnumerations ) theEObject; + T result = caseTEnumerations( tEnumerations ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TFUNCTIONAL_CONSTRAINT: { + TFunctionalConstraint tFunctionalConstraint = ( TFunctionalConstraint ) theEObject; + T result = caseTFunctionalConstraint( tFunctionalConstraint ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TFUNCTIONAL_CONSTRAINTS: { + TFunctionalConstraints tFunctionalConstraints = ( TFunctionalConstraints ) theEObject; + T result = caseTFunctionalConstraints( tFunctionalConstraints ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TLICENSE: { + TLicense tLicense = ( TLicense ) theEObject; + T result = caseTLicense( tLicense ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TLITERAL: { + TLiteral tLiteral = ( TLiteral ) theEObject; + T result = caseTLiteral( tLiteral ); + if( result == null ) result = caseTDocumentedClass( tLiteral ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TLN_CLASS: { + TLNClass tlnClass = ( TLNClass ) theEObject; + T result = caseTLNClass( tlnClass ); + if( result == null ) result = caseTAnyLNClass( tlnClass ); + if( result == null ) result = caseTTitledClass( tlnClass ); + if( result == null ) result = caseTDocumentedClass( tlnClass ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TLN_CLASSES: { + TLNClasses tlnClasses = ( TLNClasses ) theEObject; + T result = caseTLNClasses( tlnClasses ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TNOTICE: { + TNotice tNotice = ( TNotice ) theEObject; + T result = caseTNotice( tNotice ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TNS: { + TNS tns = ( TNS ) theEObject; + T result = caseTNS( tns ); + if( result == null ) result = caseTCopyrighted( tns ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TNS_DOC: { + TNSDoc tnsDoc = ( TNSDoc ) theEObject; + T result = caseTNSDoc( tnsDoc ); + if( result == null ) result = caseTCopyrighted( tnsDoc ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TPRESENCE_CONDITION: { + TPresenceCondition tPresenceCondition = ( TPresenceCondition ) theEObject; + T result = caseTPresenceCondition( tPresenceCondition ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TPRESENCE_CONDITIONS: { + TPresenceConditions tPresenceConditions = ( TPresenceConditions ) theEObject; + T result = caseTPresenceConditions( tPresenceConditions ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSERVICE_CDC: { + TServiceCDC tServiceCDC = ( TServiceCDC ) theEObject; + T result = caseTServiceCDC( tServiceCDC ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSERVICE_CD_CS: { + TServiceCDCs tServiceCDCs = ( TServiceCDCs ) theEObject; + T result = caseTServiceCDCs( tServiceCDCs ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTE: { + TServiceConstructedAttribute tServiceConstructedAttribute = ( TServiceConstructedAttribute ) theEObject; + T result = caseTServiceConstructedAttribute( tServiceConstructedAttribute ); + if( result == null ) result = caseTConstructedAttribute( tServiceConstructedAttribute ); + if( result == null ) result = caseTTitledClass( tServiceConstructedAttribute ); + if( result == null ) result = caseTDocumentedClass( tServiceConstructedAttribute ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTES: { + TServiceConstructedAttributes tServiceConstructedAttributes = ( TServiceConstructedAttributes ) theEObject; + T result = caseTServiceConstructedAttributes( tServiceConstructedAttributes ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSERVICE_DATA_ATTRIBUTE: { + TServiceDataAttribute tServiceDataAttribute = ( TServiceDataAttribute ) theEObject; + T result = caseTServiceDataAttribute( tServiceDataAttribute ); + if( result == null ) result = caseTDocumentedClass( tServiceDataAttribute ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSERVICE_NS: { + TServiceNS tServiceNS = ( TServiceNS ) theEObject; + T result = caseTServiceNS( tServiceNS ); + if( result == null ) result = caseTCopyrighted( tServiceNS ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSERVICE_NS_USAGE: { + TServiceNsUsage tServiceNsUsage = ( TServiceNsUsage ) theEObject; + T result = caseTServiceNsUsage( tServiceNsUsage ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSERVICE_PARAMETER: { + TServiceParameter tServiceParameter = ( TServiceParameter ) theEObject; + T result = caseTServiceParameter( tServiceParameter ); + if( result == null ) result = caseTDocumentedClass( tServiceParameter ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSERVICE_TYPE_REALIZATION: { + TServiceTypeRealization tServiceTypeRealization = ( TServiceTypeRealization ) theEObject; + T result = caseTServiceTypeRealization( tServiceTypeRealization ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSERVICE_TYPE_REALIZATIONS: { + TServiceTypeRealizations tServiceTypeRealizations = ( TServiceTypeRealizations ) theEObject; + T result = caseTServiceTypeRealizations( tServiceTypeRealizations ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSUB_DATA_ATTRIBUTE: { + TSubDataAttribute tSubDataAttribute = ( TSubDataAttribute ) theEObject; + T result = caseTSubDataAttribute( tSubDataAttribute ); + if( result == null ) result = caseTDocumentedClass( tSubDataAttribute ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TSUB_DATA_OBJECT: { + TSubDataObject tSubDataObject = ( TSubDataObject ) theEObject; + T result = caseTSubDataObject( tSubDataObject ); + if( result == null ) result = caseTDocumentedClass( tSubDataObject ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + case NsdPackage.TTITLED_CLASS: { + TTitledClass tTitledClass = ( TTitledClass ) theEObject; + T result = caseTTitledClass( tTitledClass ); + if( result == null ) result = caseTDocumentedClass( tTitledClass ); + if( result == null ) result = defaultCase( theEObject ); + return result; + } + default: + return defaultCase( theEObject ); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Applies To Type</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>Applies To Type</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAppliesToType( AppliesToType object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Depends On Type</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>Depends On Type</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDependsOnType( DependsOnType object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Document Root</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>Document Root</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDocumentRoot( DocumentRoot object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Service Type</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 Type</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseServiceType( ServiceType object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TAbbreviation</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>TAbbreviation</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTAbbreviation( TAbbreviation object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TAbbreviations</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>TAbbreviations</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTAbbreviations( TAbbreviations object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TAbstract LN Class</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>TAbstract LN Class</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTAbstractLNClass( TAbstractLNClass object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TAny LN Class</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>TAny LN Class</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTAnyLNClass( TAnyLNClass object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TApplicable Service NS</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>TApplicable Service NS</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTApplicableServiceNS( TApplicableServiceNS object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TApplicable Services</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>TApplicable Services</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTApplicableServices( TApplicableServices object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TBasic Type</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>TBasic Type</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTBasicType( TBasicType object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TBasic Types</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>TBasic Types</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTBasicTypes( TBasicTypes object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TCDC</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>TCDC</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTCDC( TCDC object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TCD Cs</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>TCD Cs</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTCDCs( TCDCs object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TChanges</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>TChanges</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTChanges( TChanges object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TConstructed 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>TConstructed Attribute</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTConstructedAttribute( TConstructedAttribute object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TConstructed Attributes</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>TConstructed Attributes</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTConstructedAttributes( TConstructedAttributes object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TCopyrighted</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>TCopyrighted</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTCopyrighted( TCopyrighted object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TCopyright Notice</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>TCopyright Notice</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTCopyrightNotice( TCopyrightNotice object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TData 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>TData Attribute</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTDataAttribute( TDataAttribute object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TData Object</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>TData Object</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTDataObject( TDataObject object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TData Set Member Of</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>TData Set Member Of</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTDataSetMemberOf( TDataSetMemberOf object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TDoc</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>TDoc</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTDoc( TDoc object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TDocumented Class</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>TDocumented Class</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTDocumentedClass( TDocumentedClass object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TEnumeration</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>TEnumeration</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTEnumeration( TEnumeration object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TEnumerations</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>TEnumerations</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTEnumerations( TEnumerations object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TFunctional Constraint</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>TFunctional Constraint</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTFunctionalConstraint( TFunctionalConstraint object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TFunctional Constraints</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>TFunctional Constraints</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTFunctionalConstraints( TFunctionalConstraints object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TLicense</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>TLicense</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTLicense( TLicense object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TLiteral</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>TLiteral</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTLiteral( TLiteral object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TLN Class</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>TLN Class</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTLNClass( TLNClass object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TLN Classes</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>TLN Classes</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTLNClasses( TLNClasses object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TNotice</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>TNotice</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTNotice( TNotice object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TNS</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>TNS</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTNS( TNS object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TNS Doc</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>TNS Doc</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTNSDoc( TNSDoc object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TPresence Condition</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>TPresence Condition</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTPresenceCondition( TPresenceCondition object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TPresence Conditions</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>TPresence Conditions</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTPresenceConditions( TPresenceConditions object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TService CDC</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>TService CDC</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTServiceCDC( TServiceCDC object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TService CD Cs</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>TService CD Cs</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTServiceCDCs( TServiceCDCs object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TService Constructed 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>TService Constructed Attribute</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTServiceConstructedAttribute( TServiceConstructedAttribute object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TService Constructed Attributes</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>TService Constructed Attributes</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTServiceConstructedAttributes( TServiceConstructedAttributes object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TService Data 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>TService Data Attribute</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTServiceDataAttribute( TServiceDataAttribute object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TService NS</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>TService NS</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTServiceNS( TServiceNS object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TService Ns Usage</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>TService Ns Usage</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTServiceNsUsage( TServiceNsUsage object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TService 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>TService Parameter</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTServiceParameter( TServiceParameter object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TService Type Realization</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>TService Type Realization</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTServiceTypeRealization( TServiceTypeRealization object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TService Type Realizations</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>TService Type Realizations</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTServiceTypeRealizations( TServiceTypeRealizations object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TSub Data 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>TSub Data Attribute</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTSubDataAttribute( TSubDataAttribute object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TSub Data Object</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>TSub Data Object</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTSubDataObject( TSubDataObject object ) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>TTitled Class</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>TTitled Class</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTTitledClass( TTitledClass 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; + } + +} //NsdSwitch diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdValidator.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdValidator.java new file mode 100644 index 0000000000000000000000000000000000000000..732dd4a534e981fa6695272621d350d86d63f7f2 --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdValidator.java @@ -0,0 +1,1626 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.util; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.*; + +import java.util.Map; + +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.common.util.Enumerator; +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.EObjectValidator; + +import org.eclipse.emf.ecore.xml.type.util.XMLTypeUtil; +import org.eclipse.emf.ecore.xml.type.util.XMLTypeValidator; + +/** + * <!-- begin-user-doc --> + * The <b>Validator</b> for the model. + * <!-- end-user-doc --> + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage + * @generated + */ +public class NsdValidator extends EObjectValidator { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final NsdValidator INSTANCE = new NsdValidator(); + + /** + * A constant for the {@link org.eclipse.emf.common.util.Diagnostic#getSource() source} of diagnostic {@link org.eclipse.emf.common.util.Diagnostic#getCode() codes} from this package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.common.util.Diagnostic#getSource() + * @see org.eclipse.emf.common.util.Diagnostic#getCode() + * @generated + */ + public static final String DIAGNOSTIC_SOURCE = "fr.centralesupelec.edf.riseclipse.iec61850.nsd"; + + /** + * A constant with a fixed name that can be used as the base value for additional hand written constants. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final int GENERATED_DIAGNOSTIC_CODE_COUNT = 0; + + /** + * A constant with a fixed name that can be used as the base value for additional hand written constants in a derived class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static final int DIAGNOSTIC_CODE_COUNT = GENERATED_DIAGNOSTIC_CODE_COUNT; + + /** + * The cached base package validator. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XMLTypeValidator xmlTypeValidator; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NsdValidator() { + super(); + xmlTypeValidator = XMLTypeValidator.INSTANCE; + } + + /** + * Returns the package of this validator switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EPackage getEPackage() { + return NsdPackage.eINSTANCE; + } + + /** + * Calls <code>validateXXX</code> for the corresponding classifier of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected boolean validate( int classifierID, Object value, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + switch( classifierID ) { + case NsdPackage.APPLIES_TO_TYPE: + return validateAppliesToType( ( AppliesToType ) value, diagnostics, context ); + case NsdPackage.DEPENDS_ON_TYPE: + return validateDependsOnType( ( DependsOnType ) value, diagnostics, context ); + case NsdPackage.DOCUMENT_ROOT: + return validateDocumentRoot( ( DocumentRoot ) value, diagnostics, context ); + case NsdPackage.SERVICE_TYPE: + return validateServiceType( ( ServiceType ) value, diagnostics, context ); + case NsdPackage.TABBREVIATION: + return validateTAbbreviation( ( TAbbreviation ) value, diagnostics, context ); + case NsdPackage.TABBREVIATIONS: + return validateTAbbreviations( ( TAbbreviations ) value, diagnostics, context ); + case NsdPackage.TABSTRACT_LN_CLASS: + return validateTAbstractLNClass( ( TAbstractLNClass ) value, diagnostics, context ); + case NsdPackage.TANY_LN_CLASS: + return validateTAnyLNClass( ( TAnyLNClass ) value, diagnostics, context ); + case NsdPackage.TAPPLICABLE_SERVICE_NS: + return validateTApplicableServiceNS( ( TApplicableServiceNS ) value, diagnostics, context ); + case NsdPackage.TAPPLICABLE_SERVICES: + return validateTApplicableServices( ( TApplicableServices ) value, diagnostics, context ); + case NsdPackage.TBASIC_TYPE: + return validateTBasicType( ( TBasicType ) value, diagnostics, context ); + case NsdPackage.TBASIC_TYPES: + return validateTBasicTypes( ( TBasicTypes ) value, diagnostics, context ); + case NsdPackage.TCDC: + return validateTCDC( ( TCDC ) value, diagnostics, context ); + case NsdPackage.TCD_CS: + return validateTCDCs( ( TCDCs ) value, diagnostics, context ); + case NsdPackage.TCHANGES: + return validateTChanges( ( TChanges ) value, diagnostics, context ); + case NsdPackage.TCONSTRUCTED_ATTRIBUTE: + return validateTConstructedAttribute( ( TConstructedAttribute ) value, diagnostics, context ); + case NsdPackage.TCONSTRUCTED_ATTRIBUTES: + return validateTConstructedAttributes( ( TConstructedAttributes ) value, diagnostics, context ); + case NsdPackage.TCOPYRIGHTED: + return validateTCopyrighted( ( TCopyrighted ) value, diagnostics, context ); + case NsdPackage.TCOPYRIGHT_NOTICE: + return validateTCopyrightNotice( ( TCopyrightNotice ) value, diagnostics, context ); + case NsdPackage.TDATA_ATTRIBUTE: + return validateTDataAttribute( ( TDataAttribute ) value, diagnostics, context ); + case NsdPackage.TDATA_OBJECT: + return validateTDataObject( ( TDataObject ) value, diagnostics, context ); + case NsdPackage.TDATA_SET_MEMBER_OF: + return validateTDataSetMemberOf( ( TDataSetMemberOf ) value, diagnostics, context ); + case NsdPackage.TDOC: + return validateTDoc( ( TDoc ) value, diagnostics, context ); + case NsdPackage.TDOCUMENTED_CLASS: + return validateTDocumentedClass( ( TDocumentedClass ) value, diagnostics, context ); + case NsdPackage.TENUMERATION: + return validateTEnumeration( ( TEnumeration ) value, diagnostics, context ); + case NsdPackage.TENUMERATIONS: + return validateTEnumerations( ( TEnumerations ) value, diagnostics, context ); + case NsdPackage.TFUNCTIONAL_CONSTRAINT: + return validateTFunctionalConstraint( ( TFunctionalConstraint ) value, diagnostics, context ); + case NsdPackage.TFUNCTIONAL_CONSTRAINTS: + return validateTFunctionalConstraints( ( TFunctionalConstraints ) value, diagnostics, context ); + case NsdPackage.TLICENSE: + return validateTLicense( ( TLicense ) value, diagnostics, context ); + case NsdPackage.TLITERAL: + return validateTLiteral( ( TLiteral ) value, diagnostics, context ); + case NsdPackage.TLN_CLASS: + return validateTLNClass( ( TLNClass ) value, diagnostics, context ); + case NsdPackage.TLN_CLASSES: + return validateTLNClasses( ( TLNClasses ) value, diagnostics, context ); + case NsdPackage.TNOTICE: + return validateTNotice( ( TNotice ) value, diagnostics, context ); + case NsdPackage.TNS: + return validateTNS( ( TNS ) value, diagnostics, context ); + case NsdPackage.TNS_DOC: + return validateTNSDoc( ( TNSDoc ) value, diagnostics, context ); + case NsdPackage.TPRESENCE_CONDITION: + return validateTPresenceCondition( ( TPresenceCondition ) value, diagnostics, context ); + case NsdPackage.TPRESENCE_CONDITIONS: + return validateTPresenceConditions( ( TPresenceConditions ) value, diagnostics, context ); + case NsdPackage.TSERVICE_CDC: + return validateTServiceCDC( ( TServiceCDC ) value, diagnostics, context ); + case NsdPackage.TSERVICE_CD_CS: + return validateTServiceCDCs( ( TServiceCDCs ) value, diagnostics, context ); + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTE: + return validateTServiceConstructedAttribute( ( TServiceConstructedAttribute ) value, diagnostics, context ); + case NsdPackage.TSERVICE_CONSTRUCTED_ATTRIBUTES: + return validateTServiceConstructedAttributes( ( TServiceConstructedAttributes ) value, diagnostics, + context ); + case NsdPackage.TSERVICE_DATA_ATTRIBUTE: + return validateTServiceDataAttribute( ( TServiceDataAttribute ) value, diagnostics, context ); + case NsdPackage.TSERVICE_NS: + return validateTServiceNS( ( TServiceNS ) value, diagnostics, context ); + case NsdPackage.TSERVICE_NS_USAGE: + return validateTServiceNsUsage( ( TServiceNsUsage ) value, diagnostics, context ); + case NsdPackage.TSERVICE_PARAMETER: + return validateTServiceParameter( ( TServiceParameter ) value, diagnostics, context ); + case NsdPackage.TSERVICE_TYPE_REALIZATION: + return validateTServiceTypeRealization( ( TServiceTypeRealization ) value, diagnostics, context ); + case NsdPackage.TSERVICE_TYPE_REALIZATIONS: + return validateTServiceTypeRealizations( ( TServiceTypeRealizations ) value, diagnostics, context ); + case NsdPackage.TSUB_DATA_ATTRIBUTE: + return validateTSubDataAttribute( ( TSubDataAttribute ) value, diagnostics, context ); + case NsdPackage.TSUB_DATA_OBJECT: + return validateTSubDataObject( ( TSubDataObject ) value, diagnostics, context ); + case NsdPackage.TTITLED_CLASS: + return validateTTitledClass( ( TTitledClass ) value, diagnostics, context ); + case NsdPackage.TACSI_SERVICES_KIND: + return validateTACSIServicesKind( ( TACSIServicesKind ) value, diagnostics, context ); + case NsdPackage.TCB_KIND: + return validateTCBKind( ( TCBKind ) value, diagnostics, context ); + case NsdPackage.TDEFINED_ATTRIBUTE_TYPE_KIND: + return validateTDefinedAttributeTypeKind( ( TDefinedAttributeTypeKind ) value, diagnostics, context ); + case NsdPackage.TLICENSE_KIND: + return validateTLicenseKind( ( TLicenseKind ) value, diagnostics, context ); + case NsdPackage.TPUB_STAGE: + return validateTPubStage( ( TPubStage ) value, diagnostics, context ); + case NsdPackage.TUNDEFINED_ATTRIBUTE_TYPE_KIND: + return validateTUndefinedAttributeTypeKind( ( TUndefinedAttributeTypeKind ) value, diagnostics, context ); + case NsdPackage.TABBREVIATION_NAME: + return validateTAbbreviationName( ( String ) value, diagnostics, context ); + case NsdPackage.TABSTRACT_LN_CLASS_NAME: + return validateTAbstractLNClassName( ( String ) value, diagnostics, context ); + case NsdPackage.TACSI_SERVICES_KIND_OBJECT: + return validateTACSIServicesKindObject( ( TACSIServicesKind ) value, diagnostics, context ); + case NsdPackage.TATTRIBUTE_NAME: + return validateTAttributeName( ( String ) value, diagnostics, context ); + case NsdPackage.TATTRIBUTE_TYPE_KIND: + return validateTAttributeTypeKind( ( Enumerator ) value, diagnostics, context ); + case NsdPackage.TBASIC_TYPE_NAME: + return validateTBasicTypeName( ( String ) value, diagnostics, context ); + case NsdPackage.TCB_KIND_OBJECT: + return validateTCBKindObject( ( TCBKind ) value, diagnostics, context ); + case NsdPackage.TCDC_NAME: + return validateTCDCName( ( String ) value, diagnostics, context ); + case NsdPackage.TDATA_OBJECT_NAME: + return validateTDataObjectName( ( String ) value, diagnostics, context ); + case NsdPackage.TDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT: + return validateTDefinedAttributeTypeKindObject( ( TDefinedAttributeTypeKind ) value, diagnostics, context ); + case NsdPackage.TDOC_ID: + return validateTDocID( ( String ) value, diagnostics, context ); + case NsdPackage.TEMPTY_STRING: + return validateTEmptyString( ( String ) value, diagnostics, context ); + case NsdPackage.TFC_ABBREVIATION: + return validateTFCAbbreviation( ( String ) value, diagnostics, context ); + case NsdPackage.TIEC61850_NAME: + return validateTIec61850Name( ( String ) value, diagnostics, context ); + case NsdPackage.TIEC61850_NAME_STRING: + return validateTIec61850NameString( ( String ) value, diagnostics, context ); + case NsdPackage.TISSUES_TYPE: + return validateTissuesType( ( String ) value, diagnostics, context ); + case NsdPackage.TLICENSE_KIND_OBJECT: + return validateTLicenseKindObject( ( TLicenseKind ) value, diagnostics, context ); + case NsdPackage.TLITERAL_NAME: + return validateTLiteralName( ( String ) value, diagnostics, context ); + case NsdPackage.TLN_CLASS_NAME: + return validateTLNClassName( ( String ) value, diagnostics, context ); + case NsdPackage.TNS_IDENTIFIER: + return validateTNSIdentifier( ( String ) value, diagnostics, context ); + case NsdPackage.TNS_RELEASE: + return validateTNSRelease( ( Short ) value, diagnostics, context ); + case NsdPackage.TNS_RELEASE_OBJECT: + return validateTNSReleaseObject( ( Short ) value, diagnostics, context ); + case NsdPackage.TNS_REVISION: + return validateTNSRevision( ( String ) value, diagnostics, context ); + case NsdPackage.TNS_VERSION: + return validateTNSVersion( ( Integer ) value, diagnostics, context ); + case NsdPackage.TNS_VERSION_OBJECT: + return validateTNSVersionObject( ( Integer ) value, diagnostics, context ); + case NsdPackage.TPRESENCE_CONDITION_ARGUMENT: + return validateTPresenceConditionArgument( ( String ) value, diagnostics, context ); + case NsdPackage.TPRESENCE_CONDITION_NAME: + return validateTPresenceConditionName( ( String ) value, diagnostics, context ); + case NsdPackage.TPUB_STAGE_OBJECT: + return validateTPubStageObject( ( TPubStage ) value, diagnostics, context ); + case NsdPackage.TSUB_DATA_OBJECT_NAME: + return validateTSubDataObjectName( ( String ) value, diagnostics, context ); + case NsdPackage.TUML_VERSION: + return validateTUMLVersion( ( String ) value, diagnostics, context ); + case NsdPackage.TUNDEFINED_ATTRIBUTE_TYPE_KIND_OBJECT: + return validateTUndefinedAttributeTypeKindObject( ( TUndefinedAttributeTypeKind ) value, diagnostics, + context ); + default: + return true; + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateAppliesToType( AppliesToType appliesToType, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( appliesToType, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateDependsOnType( DependsOnType dependsOnType, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( dependsOnType, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateDocumentRoot( DocumentRoot documentRoot, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( documentRoot, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateServiceType( ServiceType serviceType, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( serviceType, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTAbbreviation( TAbbreviation tAbbreviation, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tAbbreviation, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTAbbreviations( TAbbreviations tAbbreviations, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tAbbreviations, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTAbstractLNClass( TAbstractLNClass tAbstractLNClass, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tAbstractLNClass, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTAnyLNClass( TAnyLNClass tAnyLNClass, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tAnyLNClass, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTApplicableServiceNS( TApplicableServiceNS tApplicableServiceNS, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tApplicableServiceNS, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTApplicableServices( TApplicableServices tApplicableServices, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tApplicableServices, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTBasicType( TBasicType tBasicType, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tBasicType, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTBasicTypes( TBasicTypes tBasicTypes, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tBasicTypes, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTCDC( TCDC tcdc, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tcdc, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTCDCs( TCDCs tcdCs, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tcdCs, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTChanges( TChanges tChanges, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tChanges, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTConstructedAttribute( TConstructedAttribute tConstructedAttribute, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tConstructedAttribute, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTConstructedAttributes( TConstructedAttributes tConstructedAttributes, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tConstructedAttributes, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTCopyrighted( TCopyrighted tCopyrighted, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tCopyrighted, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTCopyrightNotice( TCopyrightNotice tCopyrightNotice, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tCopyrightNotice, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDataAttribute( TDataAttribute tDataAttribute, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tDataAttribute, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDataObject( TDataObject tDataObject, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tDataObject, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDataSetMemberOf( TDataSetMemberOf tDataSetMemberOf, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tDataSetMemberOf, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDoc( TDoc tDoc, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tDoc, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDocumentedClass( TDocumentedClass tDocumentedClass, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tDocumentedClass, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTEnumeration( TEnumeration tEnumeration, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tEnumeration, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTEnumerations( TEnumerations tEnumerations, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tEnumerations, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTFunctionalConstraint( TFunctionalConstraint tFunctionalConstraint, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tFunctionalConstraint, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTFunctionalConstraints( TFunctionalConstraints tFunctionalConstraints, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tFunctionalConstraints, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLicense( TLicense tLicense, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tLicense, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLiteral( TLiteral tLiteral, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tLiteral, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLNClass( TLNClass tlnClass, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tlnClass, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLNClasses( TLNClasses tlnClasses, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tlnClasses, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNotice( TNotice tNotice, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tNotice, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNS( TNS tns, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tns, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSDoc( TNSDoc tnsDoc, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tnsDoc, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTPresenceCondition( TPresenceCondition tPresenceCondition, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tPresenceCondition, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTPresenceConditions( TPresenceConditions tPresenceConditions, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tPresenceConditions, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTServiceCDC( TServiceCDC tServiceCDC, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tServiceCDC, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTServiceCDCs( TServiceCDCs tServiceCDCs, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tServiceCDCs, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTServiceConstructedAttribute( TServiceConstructedAttribute tServiceConstructedAttribute, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tServiceConstructedAttribute, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTServiceConstructedAttributes( TServiceConstructedAttributes tServiceConstructedAttributes, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tServiceConstructedAttributes, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTServiceDataAttribute( TServiceDataAttribute tServiceDataAttribute, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tServiceDataAttribute, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTServiceNS( TServiceNS tServiceNS, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tServiceNS, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTServiceNsUsage( TServiceNsUsage tServiceNsUsage, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tServiceNsUsage, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTServiceParameter( TServiceParameter tServiceParameter, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tServiceParameter, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTServiceTypeRealization( TServiceTypeRealization tServiceTypeRealization, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tServiceTypeRealization, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTServiceTypeRealizations( TServiceTypeRealizations tServiceTypeRealizations, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tServiceTypeRealizations, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTSubDataAttribute( TSubDataAttribute tSubDataAttribute, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tSubDataAttribute, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTSubDataObject( TSubDataObject tSubDataObject, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tSubDataObject, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTTitledClass( TTitledClass tTitledClass, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validate_EveryDefaultConstraint( tTitledClass, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTACSIServicesKind( TACSIServicesKind tacsiServicesKind, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTCBKind( TCBKind tcbKind, DiagnosticChain diagnostics, Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDefinedAttributeTypeKind( TDefinedAttributeTypeKind tDefinedAttributeTypeKind, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLicenseKind( TLicenseKind tLicenseKind, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTPubStage( TPubStage tPubStage, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTUndefinedAttributeTypeKind( TUndefinedAttributeTypeKind tUndefinedAttributeTypeKind, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTAbbreviationName( String tAbbreviationName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTAbstractLNClassName( String tAbstractLNClassName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTIec61850Name_Pattern( tAbstractLNClassName, diagnostics, context ); + if( result || diagnostics != null ) + result &= validateTIec61850Name_MinLength( tAbstractLNClassName, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTACSIServicesKindObject( TACSIServicesKind tacsiServicesKindObject, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTAttributeName( String tAttributeName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTIec61850Name_Pattern( tAttributeName, diagnostics, context ); + if( result || diagnostics != null ) + result &= validateTIec61850Name_MinLength( tAttributeName, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTAttributeTypeKind( Enumerator tAttributeTypeKind, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTAttributeTypeKind_MemberTypes( tAttributeTypeKind, diagnostics, context ); + return result; + } + + /** + * Validates the MemberTypes constraint of '<em>TAttribute Type Kind</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTAttributeTypeKind_MemberTypes( Enumerator tAttributeTypeKind, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + if( diagnostics != null ) { + BasicDiagnostic tempDiagnostics = new BasicDiagnostic(); + if( NsdPackage.Literals.TDEFINED_ATTRIBUTE_TYPE_KIND.isInstance( tAttributeTypeKind ) ) { + if( validateTDefinedAttributeTypeKind( ( TDefinedAttributeTypeKind ) tAttributeTypeKind, + tempDiagnostics, context ) ) + return true; + } + if( NsdPackage.Literals.TUNDEFINED_ATTRIBUTE_TYPE_KIND.isInstance( tAttributeTypeKind ) ) { + if( validateTUndefinedAttributeTypeKind( ( TUndefinedAttributeTypeKind ) tAttributeTypeKind, + tempDiagnostics, context ) ) + return true; + } + for( Diagnostic diagnostic : tempDiagnostics.getChildren() ) { + diagnostics.add( diagnostic ); + } + } + else { + if( NsdPackage.Literals.TDEFINED_ATTRIBUTE_TYPE_KIND.isInstance( tAttributeTypeKind ) ) { + if( validateTDefinedAttributeTypeKind( ( TDefinedAttributeTypeKind ) tAttributeTypeKind, null, + context ) ) + return true; + } + if( NsdPackage.Literals.TUNDEFINED_ATTRIBUTE_TYPE_KIND.isInstance( tAttributeTypeKind ) ) { + if( validateTUndefinedAttributeTypeKind( ( TUndefinedAttributeTypeKind ) tAttributeTypeKind, null, + context ) ) + return true; + } + } + return false; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTBasicTypeName( String tBasicTypeName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTBasicTypeName_MinLength( tBasicTypeName, diagnostics, context ); + return result; + } + + /** + * Validates the MinLength constraint of '<em>TBasic Type Name</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTBasicTypeName_MinLength( String tBasicTypeName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + int length = tBasicTypeName.length(); + boolean result = length >= 1; + if( !result && diagnostics != null ) reportMinLengthViolation( NsdPackage.Literals.TBASIC_TYPE_NAME, + tBasicTypeName, length, 1, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTCBKindObject( TCBKind tcbKindObject, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTCDCName( String tcdcName, DiagnosticChain diagnostics, Map< Object, Object > context ) { + boolean result = validateTIec61850Name_Pattern( tcdcName, diagnostics, context ); + if( result || diagnostics != null ) result &= validateTCDCName_MinLength( tcdcName, diagnostics, context ); + return result; + } + + /** + * Validates the MinLength constraint of '<em>TCDC Name</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTCDCName_MinLength( String tcdcName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + int length = tcdcName.length(); + boolean result = length >= 1; + if( !result && diagnostics != null ) + reportMinLengthViolation( NsdPackage.Literals.TCDC_NAME, tcdcName, length, 1, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDataObjectName( String tDataObjectName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTIec61850Name_Pattern( tDataObjectName, diagnostics, context ); + if( result || diagnostics != null ) + result &= validateTIec61850Name_MinLength( tDataObjectName, diagnostics, context ); + if( result || diagnostics != null ) + result &= validateTDataObjectName_MaxLength( tDataObjectName, diagnostics, context ); + return result; + } + + /** + * Validates the MaxLength constraint of '<em>TData Object Name</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDataObjectName_MaxLength( String tDataObjectName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + int length = tDataObjectName.length(); + boolean result = length <= 12; + if( !result && diagnostics != null ) reportMaxLengthViolation( NsdPackage.Literals.TDATA_OBJECT_NAME, + tDataObjectName, length, 12, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDefinedAttributeTypeKindObject( TDefinedAttributeTypeKind tDefinedAttributeTypeKindObject, + DiagnosticChain diagnostics, Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDocID( String tDocID, DiagnosticChain diagnostics, Map< Object, Object > context ) { + boolean result = validateTDocID_MinLength( tDocID, diagnostics, context ); + return result; + } + + /** + * Validates the MinLength constraint of '<em>TDoc ID</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTDocID_MinLength( String tDocID, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + int length = tDocID.length(); + boolean result = length >= 1; + if( !result && diagnostics != null ) + reportMinLengthViolation( NsdPackage.Literals.TDOC_ID, tDocID, length, 1, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTEmptyString( String tEmptyString, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTEmptyString_MaxLength( tEmptyString, diagnostics, context ); + return result; + } + + /** + * Validates the MaxLength constraint of '<em>TEmpty String</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTEmptyString_MaxLength( String tEmptyString, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + int length = tEmptyString.length(); + boolean result = length <= 0; + if( !result && diagnostics != null ) reportMaxLengthViolation( NsdPackage.Literals.TEMPTY_STRING, tEmptyString, + length, 0, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTFCAbbreviation( String tfcAbbreviation, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTFCAbbreviation_Pattern( tfcAbbreviation, diagnostics, context ); + if( result || diagnostics != null ) + result &= validateTFCAbbreviation_MinLength( tfcAbbreviation, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @see #validateTFCAbbreviation_Pattern + */ + public static final PatternMatcher[][] TFC_ABBREVIATION__PATTERN__VALUES = new PatternMatcher[][] { + new PatternMatcher[] { XMLTypeUtil.createPatternMatcher( "[\\p{IsBasicLatin}]+" ) } }; + + /** + * Validates the Pattern constraint of '<em>TFC Abbreviation</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTFCAbbreviation_Pattern( String tfcAbbreviation, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validatePattern( NsdPackage.Literals.TFC_ABBREVIATION, tfcAbbreviation, + TFC_ABBREVIATION__PATTERN__VALUES, diagnostics, context ); + } + + /** + * Validates the MinLength constraint of '<em>TFC Abbreviation</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTFCAbbreviation_MinLength( String tfcAbbreviation, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + int length = tfcAbbreviation.length(); + boolean result = length >= 1; + if( !result && diagnostics != null ) reportMinLengthViolation( NsdPackage.Literals.TFC_ABBREVIATION, + tfcAbbreviation, length, 1, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTIec61850Name( String tIec61850Name, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTIec61850Name_Pattern( tIec61850Name, diagnostics, context ); + if( result || diagnostics != null ) + result &= validateTIec61850Name_MinLength( tIec61850Name, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @see #validateTIec61850Name_Pattern + */ + public static final PatternMatcher[][] TIEC61850_NAME__PATTERN__VALUES = new PatternMatcher[][] { + new PatternMatcher[] { XMLTypeUtil.createPatternMatcher( "[\\p{IsBasicLatin}\\p{IsLatin-1Supplement}]+" ) }, + new PatternMatcher[] { XMLTypeUtil.createPatternMatcher( "\\i\\c*" ) } }; + + /** + * Validates the Pattern constraint of '<em>TIec61850 Name</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTIec61850Name_Pattern( String tIec61850Name, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validatePattern( NsdPackage.Literals.TIEC61850_NAME, tIec61850Name, TIEC61850_NAME__PATTERN__VALUES, + diagnostics, context ); + } + + /** + * Validates the MinLength constraint of '<em>TIec61850 Name</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTIec61850Name_MinLength( String tIec61850Name, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + int length = tIec61850Name.length(); + boolean result = length >= 1; + if( !result && diagnostics != null ) reportMinLengthViolation( NsdPackage.Literals.TIEC61850_NAME, + tIec61850Name, length, 1, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTIec61850NameString( String tIec61850NameString, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTIec61850NameString_Pattern( tIec61850NameString, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @see #validateTIec61850NameString_Pattern + */ + public static final PatternMatcher[][] TIEC61850_NAME_STRING__PATTERN__VALUES = new PatternMatcher[][] { + new PatternMatcher[] { + XMLTypeUtil.createPatternMatcher( "[\\p{IsBasicLatin}\\p{IsLatin-1Supplement}]+" ) } }; + + /** + * Validates the Pattern constraint of '<em>TIec61850 Name String</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTIec61850NameString_Pattern( String tIec61850NameString, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validatePattern( NsdPackage.Literals.TIEC61850_NAME_STRING, tIec61850NameString, + TIEC61850_NAME_STRING__PATTERN__VALUES, diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTissuesType( String tissuesType, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTissuesType_MinLength( tissuesType, diagnostics, context ); + return result; + } + + /** + * Validates the MinLength constraint of '<em>Tissues Type</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTissuesType_MinLength( String tissuesType, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + int length = tissuesType.length(); + boolean result = length >= 1; + if( !result && diagnostics != null ) + reportMinLengthViolation( NsdPackage.Literals.TISSUES_TYPE, tissuesType, length, 1, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLicenseKindObject( TLicenseKind tLicenseKindObject, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLiteralName( String tLiteralName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTLiteralName_Pattern( tLiteralName, diagnostics, context ); + if( result || diagnostics != null ) + result &= validateTLiteralName_MaxLength( tLiteralName, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @see #validateTLiteralName_Pattern + */ + public static final PatternMatcher[][] TLITERAL_NAME__PATTERN__VALUES = new PatternMatcher[][] { + new PatternMatcher[] { + XMLTypeUtil.createPatternMatcher( "[\\p{IsBasicLatin}\\p{IsLatin-1Supplement}]*" ) } }; + + /** + * Validates the Pattern constraint of '<em>TLiteral Name</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLiteralName_Pattern( String tLiteralName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validatePattern( NsdPackage.Literals.TLITERAL_NAME, tLiteralName, TLITERAL_NAME__PATTERN__VALUES, + diagnostics, context ); + } + + /** + * Validates the MaxLength constraint of '<em>TLiteral Name</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLiteralName_MaxLength( String tLiteralName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + int length = tLiteralName.length(); + boolean result = length <= 127; + if( !result && diagnostics != null ) reportMaxLengthViolation( NsdPackage.Literals.TLITERAL_NAME, tLiteralName, + length, 127, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLNClassName( String tlnClassName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTLNClassName_Pattern( tlnClassName, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @see #validateTLNClassName_Pattern + */ + public static final PatternMatcher[][] TLN_CLASS_NAME__PATTERN__VALUES = new PatternMatcher[][] { + new PatternMatcher[] { XMLTypeUtil.createPatternMatcher( "LLN0" ), + XMLTypeUtil.createPatternMatcher( "[A-Z]{4}" ) }, + new PatternMatcher[] { XMLTypeUtil.createPatternMatcher( "\\i\\c*" ) } }; + + /** + * Validates the Pattern constraint of '<em>TLN Class Name</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTLNClassName_Pattern( String tlnClassName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validatePattern( NsdPackage.Literals.TLN_CLASS_NAME, tlnClassName, TLN_CLASS_NAME__PATTERN__VALUES, + diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSIdentifier( String tnsIdentifier, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTNSIdentifier_Pattern( tnsIdentifier, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @see #validateTNSIdentifier_Pattern + */ + public static final PatternMatcher[][] TNS_IDENTIFIER__PATTERN__VALUES = new PatternMatcher[][] { + new PatternMatcher[] { XMLTypeUtil.createPatternMatcher( "\\p{IsBasicLatin}+" ) } }; + + /** + * Validates the Pattern constraint of '<em>TNS Identifier</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSIdentifier_Pattern( String tnsIdentifier, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validatePattern( NsdPackage.Literals.TNS_IDENTIFIER, tnsIdentifier, TNS_IDENTIFIER__PATTERN__VALUES, + diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSRelease( short tnsRelease, DiagnosticChain diagnostics, Map< Object, Object > context ) { + boolean result = validateTNSRelease_Min( tnsRelease, diagnostics, context ); + if( result || diagnostics != null ) + result &= xmlTypeValidator.validateUnsignedByte_Max( tnsRelease, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @see #validateTNSRelease_Min + */ + public static final short TNS_RELEASE__MIN__VALUE = 0; + + /** + * Validates the Min constraint of '<em>TNS Release</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSRelease_Min( short tnsRelease, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = tnsRelease > TNS_RELEASE__MIN__VALUE; + if( !result && diagnostics != null ) reportMinViolation( NsdPackage.Literals.TNS_RELEASE, tnsRelease, + TNS_RELEASE__MIN__VALUE, false, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSReleaseObject( Short tnsReleaseObject, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTNSRelease_Min( tnsReleaseObject, diagnostics, context ); + if( result || diagnostics != null ) + result &= xmlTypeValidator.validateUnsignedByte_Max( tnsReleaseObject, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSRevision( String tnsRevision, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTNSRevision_Pattern( tnsRevision, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @see #validateTNSRevision_Pattern + */ + public static final PatternMatcher[][] TNS_REVISION__PATTERN__VALUES = new PatternMatcher[][] { + new PatternMatcher[] { XMLTypeUtil.createPatternMatcher( "[A-Z]" ) } }; + + /** + * Validates the Pattern constraint of '<em>TNS Revision</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSRevision_Pattern( String tnsRevision, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return validatePattern( NsdPackage.Literals.TNS_REVISION, tnsRevision, TNS_REVISION__PATTERN__VALUES, + diagnostics, context ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSVersion( int tnsVersion, DiagnosticChain diagnostics, Map< Object, Object > context ) { + boolean result = validateTNSVersion_Min( tnsVersion, diagnostics, context ); + if( result || diagnostics != null ) result &= validateTNSVersion_Max( tnsVersion, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @see #validateTNSVersion_Min + */ + public static final int TNS_VERSION__MIN__VALUE = 2002; + + /** + * Validates the Min constraint of '<em>TNS Version</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSVersion_Min( int tnsVersion, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = tnsVersion >= TNS_VERSION__MIN__VALUE; + if( !result && diagnostics != null ) reportMinViolation( NsdPackage.Literals.TNS_VERSION, tnsVersion, + TNS_VERSION__MIN__VALUE, true, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @see #validateTNSVersion_Max + */ + public static final int TNS_VERSION__MAX__VALUE = 2099; + + /** + * Validates the Max constraint of '<em>TNS Version</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSVersion_Max( int tnsVersion, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = tnsVersion <= TNS_VERSION__MAX__VALUE; + if( !result && diagnostics != null ) reportMaxViolation( NsdPackage.Literals.TNS_VERSION, tnsVersion, + TNS_VERSION__MAX__VALUE, true, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTNSVersionObject( Integer tnsVersionObject, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTNSVersion_Min( tnsVersionObject, diagnostics, context ); + if( result || diagnostics != null ) result &= validateTNSVersion_Max( tnsVersionObject, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTPresenceConditionArgument( String tPresenceConditionArgument, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTPresenceConditionName( String tPresenceConditionName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTPubStageObject( TPubStage tPubStageObject, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return true; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTSubDataObjectName( String tSubDataObjectName, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = validateTIec61850Name_Pattern( tSubDataObjectName, diagnostics, context ); + if( result || diagnostics != null ) + result &= validateTIec61850Name_MinLength( tSubDataObjectName, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTUMLVersion( String tumlVersion, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + boolean result = xmlTypeValidator.validateName_Pattern( tumlVersion, diagnostics, context ); + if( result || diagnostics != null ) + result &= validateTUMLVersion_MinLength( tumlVersion, diagnostics, context ); + return result; + } + + /** + * Validates the MinLength constraint of '<em>TUML Version</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTUMLVersion_MinLength( String tumlVersion, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + int length = tumlVersion.length(); + boolean result = length >= 1; + if( !result && diagnostics != null ) + reportMinLengthViolation( NsdPackage.Literals.TUML_VERSION, tumlVersion, length, 1, diagnostics, context ); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean validateTUndefinedAttributeTypeKindObject( + TUndefinedAttributeTypeKind tUndefinedAttributeTypeKindObject, DiagnosticChain diagnostics, + Map< Object, Object > context ) { + return true; + } + + /** + * Returns the resource locator that will be used to fetch messages for this validator's diagnostics. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ResourceLocator getResourceLocator() { + // TODO + // Specialize this to return a resource locator for messages specific to this validator. + // Ensure that you remove @generated or mark it @generated NOT + return super.getResourceLocator(); + } + +} //NsdValidator diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdXMLProcessor.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdXMLProcessor.java new file mode 100644 index 0000000000000000000000000000000000000000..99d75a5ad54710a7bbfdc67ce9f7f43aca4c3c7a --- /dev/null +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdXMLProcessor.java @@ -0,0 +1,67 @@ +/** + * Copyright (c) 2019 CentraleSupélec & EDF. + * 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 + * + * This file is part of the RiseClipse tool + * + * Contributors: + * Computer Science Department, CentraleSupélec + * EDF R&D + * Contacts: + * dominique.marcadet@centralesupelec.fr + * aurelie.dehouck-neveu@edf.fr + * Web site: + * http://wdi.supelec.fr/software/RiseClipse/ + * + */ +package fr.centralesupelec.edf.riseclipse.iec61850.nsd.util; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; + +import java.util.Map; + +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.resource.Resource; + +import org.eclipse.emf.ecore.xmi.util.XMLProcessor; + +/** + * This class contains helper methods to serialize and deserialize XML documents + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class NsdXMLProcessor extends XMLProcessor { + + /** + * Public constructor to instantiate the helper. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NsdXMLProcessor() { + super( ( EPackage.Registry.INSTANCE ) ); + NsdPackage.eINSTANCE.eClass(); + } + + /** + * Register for "*" and "xml" file extensions the NsdResourceFactoryImpl factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected Map< String, Resource.Factory > getRegistrations() { + if( registrations == null ) { + super.getRegistrations(); + registrations.put( XML_EXTENSION, new NsdResourceFactoryImpl() ); + registrations.put( STAR_EXTENSION, new NsdResourceFactoryImpl() ); + } + return registrations; + } + +} //NsdXMLProcessor