diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/plugin.properties b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/plugin.properties index e5bdd099346d322ae1099965631997a088e43e67..f8e272852c4ee6939b5eca7db1a12f981dbbb2b7 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/plugin.properties +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/plugin.properties @@ -557,3 +557,19 @@ _UI_ServiceParameter_parentCDC_feature = Parent CDC _UI_ServiceTypeRealizations_parentServiceNS_feature = Parent Service NS _UI_SubDataAttribute_parentConstructedAttribute_feature = Parent Constructed Attribute _UI_SubDataObject_parentCDC_feature = Parent CDC +_UI_Abbreviation_refersToDoc_feature = Refers To Doc +_UI_BasicType_refersToDoc_feature = Refers To Doc +_UI_Doc_ReferredByAgNSDesc_feature = Referred By Ag NS Desc +_UI_Doc_referredByPresenceCondition_feature = Referred By Presence Condition +_UI_Doc_referredByAgPresenceCondition_feature = Referred By Ag Presence Condition +_UI_Doc_referredByAbbreviation_feature = Referred By Abbreviation +_UI_Doc_referredByBasicType_feature = Referred By Basic Type +_UI_Doc_referredByDocumentedClass_feature = Referred By Documented Class +_UI_Doc_referredByFunctionalConstraint_feature = Referred By Functional Constraint +_UI_Doc_referredByAgPresenceConditionDerivedStatistics_feature = Referred By Ag Presence Condition Derived Statistics +_UI_DocumentedClass_refersToDoc_feature = Refers To Doc +_UI_FunctionalConstraint_refersToDoc_feature = Refers To Doc +_UI_PresenceCondition_refersToDoc_feature = Refers To Doc +_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature = Refers To Pres Cond Args Doc +_UI_AgPresenceConditionDerivedStatistics_refersToDsPresCondArgsDoc_feature = Refers To Ds Pres Cond Args Doc +_UI_AgNSdesc_refersToDoc_feature = Refers To Doc diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AbbreviationItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AbbreviationItemProvider.java index ce18071329aa1c5c2820509d8df3979c92ec8569..dce49e70ed4edcd2e17b2904e27a4f09822f3d41 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AbbreviationItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AbbreviationItemProvider.java @@ -62,6 +62,7 @@ public class AbbreviationItemProvider extends NsdObjectItemProvider { addDescIDPropertyDescriptor( object ); addNamePropertyDescriptor( object ); + addRefersToDocPropertyDescriptor( object ); } return itemPropertyDescriptors; } @@ -110,6 +111,28 @@ public class AbbreviationItemProvider extends NsdObjectItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_Abbreviation_refersToDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_Abbreviation_refersToDoc_feature", + "_UI_Abbreviation_type" ), + NsdPackage.Literals.ABBREVIATION__REFERS_TO_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This returns Abbreviation.gif. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgNSdescItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgNSdescItemProvider.java index fdd82044a7a6f7d02258ee906839d9dfccc9a47e..cc2d537e9b10f469add890b27878c47060698fb9 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgNSdescItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgNSdescItemProvider.java @@ -71,6 +71,7 @@ public class AgNSdescItemProvider extends ItemProviderAdapter implements IEditin super.getPropertyDescriptors( object ); addDescIDPropertyDescriptor( object ); + addRefersToDocPropertyDescriptor( object ); } return itemPropertyDescriptors; } @@ -97,6 +98,28 @@ public class AgNSdescItemProvider extends ItemProviderAdapter implements IEditin null ) ); } + /** + * This adds a property descriptor for the Refers To Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgNSdesc_refersToDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_AgNSdesc_refersToDoc_feature", + "_UI_AgNSdesc_type" ), + NsdPackage.Literals.AG_NSDESC__REFERS_TO_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This returns the label text for the adapted class. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgPresenceConditionDerivedStatisticsItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgPresenceConditionDerivedStatisticsItemProvider.java index ed7308f07b425ab7f9e6a8110707f7c78460eb38..d5f2b1c291e57d624649a7514055c4eb82b305ab 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgPresenceConditionDerivedStatisticsItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgPresenceConditionDerivedStatisticsItemProvider.java @@ -74,6 +74,7 @@ public class AgPresenceConditionDerivedStatisticsItemProvider extends ItemProvid addDsPresCondPropertyDescriptor( object ); addDsPresCondArgsPropertyDescriptor( object ); addDsPresCondArgsIDPropertyDescriptor( object ); + addRefersToDsPresCondArgsDocPropertyDescriptor( object ); } return itemPropertyDescriptors; } @@ -147,6 +148,29 @@ public class AgPresenceConditionDerivedStatisticsItemProvider extends ItemProvid null ) ); } + /** + * This adds a property descriptor for the Refers To Ds Pres Cond Args Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToDsPresCondArgsDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgPresenceConditionDerivedStatistics_refersToDsPresCondArgsDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_AgPresenceConditionDerivedStatistics_refersToDsPresCondArgsDoc_feature", + "_UI_AgPresenceConditionDerivedStatistics_type" ), + NsdPackage.Literals.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This returns the label text for the adapted class. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgPresenceConditionItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgPresenceConditionItemProvider.java index 3744fa123773cbd658e8341698f0e1c7d5d44077..1ed3708542dd54f40e6f5ac2db1ca5a8b7ec5b56 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgPresenceConditionItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/AgPresenceConditionItemProvider.java @@ -73,6 +73,7 @@ public class AgPresenceConditionItemProvider extends ItemProviderAdapter impleme addPresCondPropertyDescriptor( object ); addPresCondArgsPropertyDescriptor( object ); addPresCondArgsIDPropertyDescriptor( object ); + addRefersToPresCondArgsDocPropertyDescriptor( object ); } return itemPropertyDescriptors; } @@ -143,6 +144,28 @@ public class AgPresenceConditionItemProvider extends ItemProviderAdapter impleme null ) ); } + /** + * This adds a property descriptor for the Refers To Pres Cond Args Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToPresCondArgsDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature", "_UI_AgPresenceCondition_type" ), + NsdPackage.Literals.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This returns the label text for the adapted class. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/BasicTypeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/BasicTypeItemProvider.java index 12d91ab261fd4b0a5a3720f4666d2e6ef4e18f85..8a7aed69b529e90a26a741d4cbd48794aeb55eb7 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/BasicTypeItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/BasicTypeItemProvider.java @@ -63,6 +63,7 @@ public class BasicTypeItemProvider extends NsdObjectItemProvider { addDescIDPropertyDescriptor( object ); addNamePropertyDescriptor( object ); addReferredByDataAttributePropertyDescriptor( object ); + addRefersToDocPropertyDescriptor( object ); } return itemPropertyDescriptors; } @@ -133,6 +134,28 @@ public class BasicTypeItemProvider extends NsdObjectItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_BasicType_refersToDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_BasicType_refersToDoc_feature", + "_UI_BasicType_type" ), + NsdPackage.Literals.BASIC_TYPE__REFERS_TO_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This returns BasicType.gif. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DataAttributeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DataAttributeItemProvider.java index 47afe21d7af59e20891513d0376cc504147cc29d..ca4cc8d39e14b5721cfa9b7afdd0a8919d64656d 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DataAttributeItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DataAttributeItemProvider.java @@ -64,6 +64,7 @@ public class DataAttributeItemProvider extends DocumentedClassItemProvider { addPresCondPropertyDescriptor( object ); addPresCondArgsPropertyDescriptor( object ); addPresCondArgsIDPropertyDescriptor( object ); + addRefersToPresCondArgsDocPropertyDescriptor( object ); addIsArrayPropertyDescriptor( object ); addMaxIndexAttributePropertyDescriptor( object ); addMinIndexPropertyDescriptor( object ); @@ -577,6 +578,28 @@ public class DataAttributeItemProvider extends DocumentedClassItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Pres Cond Args Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToPresCondArgsDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature", "_UI_AgPresenceCondition_type" ), + NsdPackage.Literals.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This adds a property descriptor for the Qchg feature. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DataObjectItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DataObjectItemProvider.java index 1244b906c27ff50e1055dc487a2c5cdf6625c144..2b079af652dfa916d72a15e862222a2933a158ce 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DataObjectItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DataObjectItemProvider.java @@ -64,9 +64,11 @@ public class DataObjectItemProvider extends DocumentedClassItemProvider { addPresCondPropertyDescriptor( object ); addPresCondArgsPropertyDescriptor( object ); addPresCondArgsIDPropertyDescriptor( object ); + addRefersToPresCondArgsDocPropertyDescriptor( object ); addDsPresCondPropertyDescriptor( object ); addDsPresCondArgsPropertyDescriptor( object ); addDsPresCondArgsIDPropertyDescriptor( object ); + addRefersToDsPresCondArgsDocPropertyDescriptor( object ); addUnderlyingTypePropertyDescriptor( object ); addUnderlyingTypeKindPropertyDescriptor( object ); addNamePropertyDescriptor( object ); @@ -148,6 +150,29 @@ public class DataObjectItemProvider extends DocumentedClassItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Ds Pres Cond Args Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToDsPresCondArgsDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgPresenceConditionDerivedStatistics_refersToDsPresCondArgsDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_AgPresenceConditionDerivedStatistics_refersToDsPresCondArgsDoc_feature", + "_UI_AgPresenceConditionDerivedStatistics_type" ), + NsdPackage.Literals.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This adds a property descriptor for the Name feature. * <!-- begin-user-doc --> @@ -236,6 +261,28 @@ public class DataObjectItemProvider extends DocumentedClassItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Pres Cond Args Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToPresCondArgsDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature", "_UI_AgPresenceCondition_type" ), + NsdPackage.Literals.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This adds a property descriptor for the Transient feature. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocItemProvider.java index 3e64233764955c72cc0ac7b98acd400d689f589f..5d6871be33cdcdbd206ef16a3dd716fccce3dea0 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocItemProvider.java @@ -70,6 +70,14 @@ public class DocItemProvider extends NsdObjectItemProvider { super.getPropertyDescriptors( object ); addIdPropertyDescriptor( object ); + addReferredByAgNSDescPropertyDescriptor( object ); + addReferredByPresenceConditionPropertyDescriptor( object ); + addReferredByAgPresenceConditionPropertyDescriptor( object ); + addReferredByAbbreviationPropertyDescriptor( object ); + addReferredByBasicTypePropertyDescriptor( object ); + addReferredByDocumentedClassPropertyDescriptor( object ); + addReferredByFunctionalConstraintPropertyDescriptor( object ); + addReferredByAgPresenceConditionDerivedStatisticsPropertyDescriptor( object ); } return itemPropertyDescriptors; } @@ -95,6 +103,182 @@ public class DocItemProvider extends NsdObjectItemProvider { null ) ); } + /** + * This adds a property descriptor for the Referred By Ag NS Desc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReferredByAgNSDescPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_Doc_ReferredByAgNSDesc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_Doc_ReferredByAgNSDesc_feature", + "_UI_Doc_type" ), + NsdPackage.Literals.DOC__REFERRED_BY_AG_NS_DESC, + true, + false, + true, + null, + null, + null ) ); + } + + /** + * This adds a property descriptor for the Referred By Presence Condition feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReferredByPresenceConditionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_Doc_referredByPresenceCondition_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_Doc_referredByPresenceCondition_feature", + "_UI_Doc_type" ), + NsdPackage.Literals.DOC__REFERRED_BY_PRESENCE_CONDITION, + true, + false, + true, + null, + null, + null ) ); + } + + /** + * This adds a property descriptor for the Referred By Ag Presence Condition feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReferredByAgPresenceConditionPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_Doc_referredByAgPresenceCondition_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_Doc_referredByAgPresenceCondition_feature", "_UI_Doc_type" ), + NsdPackage.Literals.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, + true, + false, + true, + null, + null, + null ) ); + } + + /** + * This adds a property descriptor for the Referred By Abbreviation feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReferredByAbbreviationPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_Doc_referredByAbbreviation_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_Doc_referredByAbbreviation_feature", + "_UI_Doc_type" ), + NsdPackage.Literals.DOC__REFERRED_BY_ABBREVIATION, + true, + false, + true, + null, + null, + null ) ); + } + + /** + * This adds a property descriptor for the Referred By Basic Type feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReferredByBasicTypePropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_Doc_referredByBasicType_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_Doc_referredByBasicType_feature", + "_UI_Doc_type" ), + NsdPackage.Literals.DOC__REFERRED_BY_BASIC_TYPE, + true, + false, + true, + null, + null, + null ) ); + } + + /** + * This adds a property descriptor for the Referred By Documented Class feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReferredByDocumentedClassPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_Doc_referredByDocumentedClass_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_Doc_referredByDocumentedClass_feature", + "_UI_Doc_type" ), + NsdPackage.Literals.DOC__REFERRED_BY_DOCUMENTED_CLASS, + true, + false, + true, + null, + null, + null ) ); + } + + /** + * This adds a property descriptor for the Referred By Functional Constraint feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReferredByFunctionalConstraintPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_Doc_referredByFunctionalConstraint_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_Doc_referredByFunctionalConstraint_feature", "_UI_Doc_type" ), + NsdPackage.Literals.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT, + true, + false, + true, + null, + null, + null ) ); + } + + /** + * This adds a property descriptor for the Referred By Ag Presence Condition Derived Statistics feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addReferredByAgPresenceConditionDerivedStatisticsPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_Doc_referredByAgPresenceConditionDerivedStatistics_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_Doc_referredByAgPresenceConditionDerivedStatistics_feature", "_UI_Doc_type" ), + NsdPackage.Literals.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS, + true, + false, + true, + null, + 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 diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocumentedClassItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocumentedClassItemProvider.java index 4ee5549add7c34799da46a7d92efccc9c759bfac..4df36e418692043a6e6caf926973087784c11c34 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocumentedClassItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/DocumentedClassItemProvider.java @@ -63,6 +63,7 @@ public class DocumentedClassItemProvider extends NsdObjectItemProvider { addDeprecatedPropertyDescriptor( object ); addDescIDPropertyDescriptor( object ); addInformativePropertyDescriptor( object ); + addRefersToDocPropertyDescriptor( object ); } return itemPropertyDescriptors; } @@ -133,6 +134,28 @@ public class DocumentedClassItemProvider extends NsdObjectItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_DocumentedClass_refersToDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_DocumentedClass_refersToDoc_feature", + "_UI_DocumentedClass_type" ), + NsdPackage.Literals.DOCUMENTED_CLASS__REFERS_TO_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This returns DocumentedClass.gif. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/FunctionalConstraintItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/FunctionalConstraintItemProvider.java index ceec1ddc9df4ae551566460e3a13da80398bed0c..48abfb633c8092515c75d3839be4d893b01d5bab 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/FunctionalConstraintItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/FunctionalConstraintItemProvider.java @@ -67,6 +67,7 @@ public class FunctionalConstraintItemProvider extends NsdObjectItemProvider { addDescIDPropertyDescriptor( object ); addTitleIDPropertyDescriptor( object ); addReferredByDataAttributePropertyDescriptor( object ); + addRefersToDocPropertyDescriptor( object ); } return itemPropertyDescriptors; } @@ -159,6 +160,28 @@ public class FunctionalConstraintItemProvider extends NsdObjectItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_FunctionalConstraint_refersToDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_FunctionalConstraint_refersToDoc_feature", + "_UI_FunctionalConstraint_type" ), + NsdPackage.Literals.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC, + true, + false, + true, + null, + 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 diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/NSItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/NSItemProvider.java index a94fd7cb9edba7911a79295e59487f87bbc7879e..7ef5599e3bb3d0564578973ccf8f185326a4aa92 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/NSItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/NSItemProvider.java @@ -72,6 +72,7 @@ public class NSItemProvider extends CopyrightedItemProvider { addUmlDatePropertyDescriptor( object ); addUmlVersionPropertyDescriptor( object ); addDescIDPropertyDescriptor( object ); + addRefersToDocPropertyDescriptor( object ); addReferredByDependsOnPropertyDescriptor( object ); } return itemPropertyDescriptors; @@ -99,6 +100,28 @@ public class NSItemProvider extends CopyrightedItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgNSdesc_refersToDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_AgNSdesc_refersToDoc_feature", + "_UI_AgNSdesc_type" ), + NsdPackage.Literals.AG_NSDESC__REFERS_TO_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This adds a property descriptor for the Referred By Depends On feature. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/PresenceConditionItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/PresenceConditionItemProvider.java index caef59fcdd8e1275b81f2fee14cc1e0c43778d85..8ca9aadae9072dda448614a88edd3bbf41190ef5 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/PresenceConditionItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/PresenceConditionItemProvider.java @@ -69,6 +69,7 @@ public class PresenceConditionItemProvider extends NsdObjectItemProvider { addReferredBySubDataObjectPropertyDescriptor( object ); addReferredByDataAttributePropertyDescriptor( object ); addReferredBySubDataAttributePropertyDescriptor( object ); + addRefersToDocPropertyDescriptor( object ); } return itemPropertyDescriptors; } @@ -272,6 +273,28 @@ public class PresenceConditionItemProvider extends NsdObjectItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_PresenceCondition_refersToDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_PresenceCondition_refersToDoc_feature", + "_UI_PresenceCondition_type" ), + NsdPackage.Literals.PRESENCE_CONDITION__REFERS_TO_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This returns PresenceCondition.gif. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceDataAttributeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceDataAttributeItemProvider.java index 3e796c799199a7ff51164907b38e80b15072c337..c6f4248874fb527ce72aa971346b1f158a2b30b8 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceDataAttributeItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceDataAttributeItemProvider.java @@ -64,6 +64,7 @@ public class ServiceDataAttributeItemProvider extends DocumentedClassItemProvide addPresCondPropertyDescriptor( object ); addPresCondArgsPropertyDescriptor( object ); addPresCondArgsIDPropertyDescriptor( object ); + addRefersToPresCondArgsDocPropertyDescriptor( object ); addTypePropertyDescriptor( object ); addTypeKindPropertyDescriptor( object ); addUnderlyingTypePropertyDescriptor( object ); @@ -184,6 +185,28 @@ public class ServiceDataAttributeItemProvider extends DocumentedClassItemProvide null ) ); } + /** + * This adds a property descriptor for the Refers To Pres Cond Args Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToPresCondArgsDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature", "_UI_AgPresenceCondition_type" ), + NsdPackage.Literals.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This adds a property descriptor for the Type feature. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceNSItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceNSItemProvider.java index 602c1e6f1fdbf93516d0bee96574f20150721d60..ff4d35dd6390f5076bcd84a12545a7284e9bb513 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceNSItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/ServiceNSItemProvider.java @@ -72,6 +72,7 @@ public class ServiceNSItemProvider extends CopyrightedItemProvider { addUmlDatePropertyDescriptor( object ); addUmlVersionPropertyDescriptor( object ); addDescIDPropertyDescriptor( object ); + addRefersToDocPropertyDescriptor( object ); } return itemPropertyDescriptors; } @@ -98,6 +99,28 @@ public class ServiceNSItemProvider extends CopyrightedItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( + createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgNSdesc_refersToDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", "_UI_AgNSdesc_refersToDoc_feature", + "_UI_AgNSdesc_type" ), + NsdPackage.Literals.AG_NSDESC__REFERS_TO_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This adds a property descriptor for the Id feature. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/SubDataAttributeItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/SubDataAttributeItemProvider.java index 065407958b67ea3b79224bbca2daed319bba7a17..dd8e9cd8c9efa7deeb30843434109328c031a7cc 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/SubDataAttributeItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/SubDataAttributeItemProvider.java @@ -64,6 +64,7 @@ public class SubDataAttributeItemProvider extends DocumentedClassItemProvider { addPresCondPropertyDescriptor( object ); addPresCondArgsPropertyDescriptor( object ); addPresCondArgsIDPropertyDescriptor( object ); + addRefersToPresCondArgsDocPropertyDescriptor( object ); addIsArrayPropertyDescriptor( object ); addMaxIndexAttributePropertyDescriptor( object ); addMinIndexPropertyDescriptor( object ); @@ -321,6 +322,28 @@ public class SubDataAttributeItemProvider extends DocumentedClassItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Pres Cond Args Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToPresCondArgsDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature", "_UI_AgPresenceCondition_type" ), + NsdPackage.Literals.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This adds a property descriptor for the Size Attribute feature. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/SubDataObjectItemProvider.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/SubDataObjectItemProvider.java index e67e95cb07ad4c944f6acce0fa53a88e06304cff..1c81aa1df78e57970b13315e2392fe7d69944290 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/SubDataObjectItemProvider.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd.edit/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/provider/SubDataObjectItemProvider.java @@ -64,6 +64,7 @@ public class SubDataObjectItemProvider extends DocumentedClassItemProvider { addPresCondPropertyDescriptor( object ); addPresCondArgsPropertyDescriptor( object ); addPresCondArgsIDPropertyDescriptor( object ); + addRefersToPresCondArgsDocPropertyDescriptor( object ); addIsArrayPropertyDescriptor( object ); addMaxIndexAttributePropertyDescriptor( object ); addMinIndexPropertyDescriptor( object ); @@ -234,6 +235,28 @@ public class SubDataObjectItemProvider extends DocumentedClassItemProvider { null ) ); } + /** + * This adds a property descriptor for the Refers To Pres Cond Args Doc feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRefersToPresCondArgsDocPropertyDescriptor( Object object ) { + itemPropertyDescriptors.add( createItemPropertyDescriptor( + ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(), + getResourceLocator(), + getString( "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature" ), + getString( "_UI_PropertyDescriptor_description", + "_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature", "_UI_AgPresenceCondition_type" ), + NsdPackage.Literals.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC, + true, + false, + true, + null, + null, + null ) ); + } + /** * This adds a property descriptor for the Size Attribute feature. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.ecore b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.ecore index 968f3ef7cbb844091c7cbb6887ba3547cba5a9e6..ee3e1c7ea01e1055f95588525718e92245ae9f4d 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.ecore +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.ecore @@ -142,6 +142,8 @@ </eStructuralFeatures> <eStructuralFeatures xsi:type="ecore:EReference" name="parentAbbreviations" ordered="false" eType="#//Abbreviations" unsettable="true" resolveProxies="false" eOpposite="#//Abbreviations/abbreviation"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="refersToDoc" ordered="false" + eType="#//Doc" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//Doc/referredByAbbreviation"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Abbreviations" eSuperTypes="#//NsdObject"> <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> @@ -403,6 +405,8 @@ <eStructuralFeatures xsi:type="ecore:EReference" name="referredByDataAttribute" ordered="false" upperBound="-1" eType="#//DataAttribute" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//DataAttribute/refersToBasicType"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="refersToDoc" ordered="false" + eType="#//Doc" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//Doc/referredByBasicType"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="BasicTypes" eSuperTypes="#//NsdObject"> <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> @@ -898,6 +902,30 @@ <eStructuralFeatures xsi:type="ecore:EReference" name="parentNSDoc" ordered="false" eType="#//NSDoc" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//NSDoc/doc"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByAgNSDesc" ordered="false" + upperBound="-1" eType="#//AgNSdesc" transient="true" unsettable="true" resolveProxies="false" + eOpposite="#//AgNSdesc/refersToDoc"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="referredByPresenceCondition" + ordered="false" upperBound="-1" eType="#//PresenceCondition" transient="true" + unsettable="true" resolveProxies="false" eOpposite="#//PresenceCondition/refersToDoc"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="referredByAgPresenceCondition" + ordered="false" upperBound="-1" eType="#//AgPresenceCondition" transient="true" + unsettable="true" resolveProxies="false" eOpposite="#//AgPresenceCondition/refersToPresCondArgsDoc"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="referredByAbbreviation" + ordered="false" upperBound="-1" eType="#//Abbreviation" transient="true" unsettable="true" + resolveProxies="false" eOpposite="#//Abbreviation/refersToDoc"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="referredByBasicType" ordered="false" + upperBound="-1" eType="#//BasicType" transient="true" unsettable="true" resolveProxies="false" + eOpposite="#//BasicType/refersToDoc"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="referredByDocumentedClass" + ordered="false" upperBound="-1" eType="#//DocumentedClass" transient="true" + unsettable="true" resolveProxies="false" eOpposite="#//DocumentedClass/refersToDoc"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="referredByFunctionalConstraint" + ordered="false" upperBound="-1" eType="#//FunctionalConstraint" transient="true" + unsettable="true" resolveProxies="false" eOpposite="#//FunctionalConstraint/refersToDoc"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="referredByAgPresenceConditionDerivedStatistics" + ordered="false" upperBound="-1" eType="#//AgPresenceConditionDerivedStatistics" + transient="true" unsettable="true" resolveProxies="false" eOpposite="#//AgPresenceConditionDerivedStatistics/refersToDsPresCondArgsDoc"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="DocumentedClass" eSuperTypes="#//NsdObject"> <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> @@ -925,6 +953,8 @@ <details key="name" value="informative"/> </eAnnotations> </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="refersToDoc" ordered="false" + eType="#//Doc" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//Doc/referredByDocumentedClass"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Enumeration" eSuperTypes="#//TitledClass"> <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> @@ -1042,6 +1072,8 @@ <eStructuralFeatures xsi:type="ecore:EReference" name="referredByDataAttribute" ordered="false" upperBound="-1" eType="#//DataAttribute" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//DataAttribute/refersToFunctionalConstraint"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="refersToDoc" ordered="false" + eType="#//Doc" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//Doc/referredByFunctionalConstraint"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="FunctionalConstraints" eSuperTypes="#//NsdObject"> <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> @@ -1431,6 +1463,8 @@ <eStructuralFeatures xsi:type="ecore:EReference" name="referredBySubDataAttribute" ordered="false" upperBound="-1" eType="#//SubDataAttribute" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//SubDataAttribute/refersToPresenceCondition"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="refersToDoc" ordered="false" + eType="#//Doc" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//Doc/referredByPresenceCondition"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="PresenceConditions" eSuperTypes="#//NsdObject"> <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> @@ -1940,6 +1974,9 @@ <details key="name" value="presCondArgsID"/> </eAnnotations> </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="refersToPresCondArgsDoc" + ordered="false" eType="#//Doc" transient="true" unsettable="true" resolveProxies="false" + eOpposite="#//Doc/referredByAgPresenceCondition"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="AgPresenceConditionDerivedStatistics" abstract="true"> @@ -1964,6 +2001,9 @@ <details key="name" value="dsPresCondArgsID"/> </eAnnotations> </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="refersToDsPresCondArgsDoc" + ordered="false" eType="#//Doc" transient="true" unsettable="true" resolveProxies="false" + eOpposite="#//Doc/referredByAgPresenceConditionDerivedStatistics"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="AgArray" abstract="true"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="isArray" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean" @@ -2098,6 +2138,8 @@ <details key="name" value="descID"/> </eAnnotations> </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="refersToDoc" ordered="false" + eType="#//Doc" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//Doc/ReferredByAgNSDesc"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="IRiseClipseConsole" instanceClassName="fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole" abstract="true" interface="true"/> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.genmodel b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.genmodel index 5c8c4bccbb1d20d8c699960c6d38a631a43ab708..4868837c0b5a0ceefe6c93136ce4b2d7d1bb82f1 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.genmodel +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/model/nsd.genmodel @@ -131,6 +131,7 @@ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//Abbreviation/descID"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//Abbreviation/name"/> <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//Abbreviation/parentAbbreviations"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Abbreviation/refersToDoc"/> </genClasses> <genClasses ecoreClass="nsd.ecore#//Abbreviations"> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//Abbreviations/abbreviation"/> @@ -164,6 +165,7 @@ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//BasicType/name"/> <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//BasicType/parentBasicTypes"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//BasicType/referredByDataAttribute"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//BasicType/refersToDoc"/> </genClasses> <genClasses ecoreClass="nsd.ecore#//BasicTypes"> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//BasicTypes/basicType"/> @@ -247,11 +249,20 @@ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//Doc/any"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//Doc/id"/> <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//Doc/parentNSDoc"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Doc/ReferredByAgNSDesc"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Doc/referredByPresenceCondition"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Doc/referredByAgPresenceCondition"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Doc/referredByAbbreviation"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Doc/referredByBasicType"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Doc/referredByDocumentedClass"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Doc/referredByFunctionalConstraint"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Doc/referredByAgPresenceConditionDerivedStatistics"/> </genClasses> <genClasses ecoreClass="nsd.ecore#//DocumentedClass"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DocumentedClass/deprecated"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DocumentedClass/descID"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DocumentedClass/informative"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//DocumentedClass/refersToDoc"/> </genClasses> <genClasses ecoreClass="nsd.ecore#//Enumeration"> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//Enumeration/literal"/> @@ -272,6 +283,7 @@ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//FunctionalConstraint/titleID"/> <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//FunctionalConstraint/parentFunctionalConstraints"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//FunctionalConstraint/referredByDataAttribute"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//FunctionalConstraint/refersToDoc"/> </genClasses> <genClasses ecoreClass="nsd.ecore#//FunctionalConstraints"> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//FunctionalConstraints/functionalConstraint"/> @@ -352,6 +364,7 @@ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//PresenceCondition/referredBySubDataObject"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//PresenceCondition/referredByDataAttribute"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//PresenceCondition/referredBySubDataAttribute"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//PresenceCondition/refersToDoc"/> </genClasses> <genClasses ecoreClass="nsd.ecore#//PresenceConditions"> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//PresenceConditions/presenceCondition"/> @@ -438,11 +451,13 @@ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AgPresenceCondition/presCond"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AgPresenceCondition/presCondArgs"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AgPresenceCondition/presCondArgsID"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//AgPresenceCondition/refersToPresCondArgsDoc"/> </genClasses> <genClasses image="false" ecoreClass="nsd.ecore#//AgPresenceConditionDerivedStatistics"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AgPresenceConditionDerivedStatistics/dsPresCond"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AgPresenceConditionDerivedStatistics/dsPresCondArgs"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AgPresenceConditionDerivedStatistics/dsPresCondArgsID"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//AgPresenceConditionDerivedStatistics/refersToDsPresCondArgsDoc"/> </genClasses> <genClasses image="false" ecoreClass="nsd.ecore#//AgArray"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AgArray/isArray"/> @@ -474,6 +489,7 @@ </genClasses> <genClasses image="false" ecoreClass="nsd.ecore#//AgNSdesc"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//AgNSdesc/descID"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//AgNSdesc/refersToDoc"/> </genClasses> <genClasses image="false" ecoreClass="nsd.ecore#//IRiseClipseConsole"/> </genPackages> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/Abbreviation.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/Abbreviation.java index 80affbe2aa769cb133bc60450d484b8f79dcc711..390eec7af52f0799f3f72277e1bae3ae5ce629cd 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/Abbreviation.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/Abbreviation.java @@ -31,6 +31,7 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getDescID <em>Desc ID</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getName <em>Name</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getParentAbbreviations <em>Parent Abbreviations</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAbbreviation() @@ -164,4 +165,55 @@ public interface Abbreviation extends NsdObject { */ void setParentAbbreviations( Abbreviations value ); + /** + * Returns the value of the '<em><b>Refers To Doc</b></em>' reference. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAbbreviation <em>Referred By Abbreviation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #setRefersToDoc(Doc) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAbbreviation_RefersToDoc() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAbbreviation + * @model opposite="referredByAbbreviation" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + Doc getRefersToDoc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @generated + */ + void setRefersToDoc( Doc value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + void unsetRefersToDoc(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getRefersToDoc <em>Refers To Doc</em>}' reference is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Refers To Doc</em>' reference is set. + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + boolean isSetRefersToDoc(); + } // Abbreviation diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgNSdesc.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgNSdesc.java index 64a32e203d6716a09dd51ea3fe35e4de86d5f2e7..e3e16a817ced662fc1eaaa4f35ef31b678599198 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgNSdesc.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgNSdesc.java @@ -31,6 +31,7 @@ import org.eclipse.emf.ecore.EObject; * </p> * <ul> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAgNSdesc() @@ -92,4 +93,55 @@ public interface AgNSdesc extends EObject { */ boolean isSetDescID(); + /** + * Returns the value of the '<em><b>Refers To Doc</b></em>' reference. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgNSDesc <em>Referred By Ag NS Desc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #setRefersToDoc(Doc) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAgNSdesc_RefersToDoc() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgNSDesc + * @model opposite="ReferredByAgNSDesc" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + Doc getRefersToDoc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @generated + */ + void setRefersToDoc( Doc value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + void unsetRefersToDoc(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc#getRefersToDoc <em>Refers To Doc</em>}' reference is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Refers To Doc</em>' reference is set. + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + boolean isSetRefersToDoc(); + } // AgNSdesc diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgPresenceCondition.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgPresenceCondition.java index 89846a790e2aaef0118a977d93a734fc8b6e7874..ce3ad3cac8d2811f1a07e32ee1fbef61fd90f573 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgPresenceCondition.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgPresenceCondition.java @@ -33,6 +33,7 @@ import org.eclipse.emf.ecore.EObject; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getPresCond <em>Pres Cond</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getPresCondArgs <em>Pres Cond Args</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}</li> * </ul> * * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAgPresenceCondition() @@ -203,4 +204,55 @@ public interface AgPresenceCondition extends EObject { */ boolean isSetPresCondArgsID(); + /** + * Returns the value of the '<em><b>Refers To Pres Cond Args Doc</b></em>' reference. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceCondition <em>Referred By Ag Presence Condition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Refers To Pres Cond Args Doc</em>' reference. + * @see #isSetRefersToPresCondArgsDoc() + * @see #unsetRefersToPresCondArgsDoc() + * @see #setRefersToPresCondArgsDoc(Doc) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAgPresenceCondition_RefersToPresCondArgsDoc() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceCondition + * @model opposite="referredByAgPresenceCondition" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + Doc getRefersToPresCondArgsDoc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Refers To Pres Cond Args Doc</em>' reference. + * @see #isSetRefersToPresCondArgsDoc() + * @see #unsetRefersToPresCondArgsDoc() + * @see #getRefersToPresCondArgsDoc() + * @generated + */ + void setRefersToPresCondArgsDoc( Doc value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRefersToPresCondArgsDoc() + * @see #getRefersToPresCondArgsDoc() + * @see #setRefersToPresCondArgsDoc(Doc) + * @generated + */ + void unsetRefersToPresCondArgsDoc(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}' reference is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Refers To Pres Cond Args Doc</em>' reference is set. + * @see #unsetRefersToPresCondArgsDoc() + * @see #getRefersToPresCondArgsDoc() + * @see #setRefersToPresCondArgsDoc(Doc) + * @generated + */ + boolean isSetRefersToPresCondArgsDoc(); + } // AgPresenceCondition diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgPresenceConditionDerivedStatistics.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgPresenceConditionDerivedStatistics.java index 38819714fbb372c352eab43110dce646b3951c3d..e23d624611c807b84ea34fbc4468c525ddcf1b26 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgPresenceConditionDerivedStatistics.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/AgPresenceConditionDerivedStatistics.java @@ -33,6 +33,7 @@ import org.eclipse.emf.ecore.EObject; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getDsPresCond <em>Ds Pres Cond</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getDsPresCondArgs <em>Ds Pres Cond Args</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getDsPresCondArgsID <em>Ds Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getRefersToDsPresCondArgsDoc <em>Refers To Ds Pres Cond Args Doc</em>}</li> * </ul> * * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAgPresenceConditionDerivedStatistics() @@ -203,4 +204,55 @@ public interface AgPresenceConditionDerivedStatistics extends EObject { */ boolean isSetDsPresCondArgsID(); + /** + * Returns the value of the '<em><b>Refers To Ds Pres Cond Args Doc</b></em>' reference. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceConditionDerivedStatistics <em>Referred By Ag Presence Condition Derived Statistics</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Refers To Ds Pres Cond Args Doc</em>' reference. + * @see #isSetRefersToDsPresCondArgsDoc() + * @see #unsetRefersToDsPresCondArgsDoc() + * @see #setRefersToDsPresCondArgsDoc(Doc) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getAgPresenceConditionDerivedStatistics_RefersToDsPresCondArgsDoc() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceConditionDerivedStatistics + * @model opposite="referredByAgPresenceConditionDerivedStatistics" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + Doc getRefersToDsPresCondArgsDoc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getRefersToDsPresCondArgsDoc <em>Refers To Ds Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Refers To Ds Pres Cond Args Doc</em>' reference. + * @see #isSetRefersToDsPresCondArgsDoc() + * @see #unsetRefersToDsPresCondArgsDoc() + * @see #getRefersToDsPresCondArgsDoc() + * @generated + */ + void setRefersToDsPresCondArgsDoc( Doc value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getRefersToDsPresCondArgsDoc <em>Refers To Ds Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRefersToDsPresCondArgsDoc() + * @see #getRefersToDsPresCondArgsDoc() + * @see #setRefersToDsPresCondArgsDoc(Doc) + * @generated + */ + void unsetRefersToDsPresCondArgsDoc(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getRefersToDsPresCondArgsDoc <em>Refers To Ds Pres Cond Args Doc</em>}' reference is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Refers To Ds Pres Cond Args Doc</em>' reference is set. + * @see #unsetRefersToDsPresCondArgsDoc() + * @see #getRefersToDsPresCondArgsDoc() + * @see #setRefersToDsPresCondArgsDoc(Doc) + * @generated + */ + boolean isSetRefersToDsPresCondArgsDoc(); + } // AgPresenceConditionDerivedStatistics diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/BasicType.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/BasicType.java index b637337aaf0cf40fd7e41927be8e239ab750f036..fcd6d93a2e548f694137d642af48cbe01ac8e69f 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/BasicType.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/BasicType.java @@ -34,6 +34,7 @@ import org.eclipse.emf.common.util.EList; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getName <em>Name</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getParentBasicTypes <em>Parent Basic Types</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getReferredByDataAttribute <em>Referred By Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getBasicType() @@ -208,4 +209,55 @@ public interface BasicType extends NsdObject { */ boolean isSetReferredByDataAttribute(); + /** + * Returns the value of the '<em><b>Refers To Doc</b></em>' reference. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByBasicType <em>Referred By Basic Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #setRefersToDoc(Doc) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getBasicType_RefersToDoc() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByBasicType + * @model opposite="referredByBasicType" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + Doc getRefersToDoc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @generated + */ + void setRefersToDoc( Doc value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + void unsetRefersToDoc(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getRefersToDoc <em>Refers To Doc</em>}' reference is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Refers To Doc</em>' reference is set. + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + boolean isSetRefersToDoc(); + } // BasicType diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/Doc.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/Doc.java index 5173d8134e96242fc969d9ca701ea18b64412c9d..4cd89bc7c7c78df0849d567c2ba2f19eddc33dbc 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/Doc.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/Doc.java @@ -19,6 +19,7 @@ */ package fr.centralesupelec.edf.riseclipse.iec61850.nsd; +import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.util.FeatureMap; /** @@ -35,6 +36,14 @@ import org.eclipse.emf.ecore.util.FeatureMap; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getAny <em>Any</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getId <em>Id</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getParentNSDoc <em>Parent NS Doc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgNSDesc <em>Referred By Ag NS Desc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByPresenceCondition <em>Referred By Presence Condition</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceCondition <em>Referred By Ag Presence Condition</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAbbreviation <em>Referred By Abbreviation</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByBasicType <em>Referred By Basic Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByDocumentedClass <em>Referred By Documented Class</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByFunctionalConstraint <em>Referred By Functional Constraint</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceConditionDerivedStatistics <em>Referred By Ag Presence Condition Derived Statistics</em>}</li> * </ul> * * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDoc() @@ -169,4 +178,300 @@ public interface Doc extends NsdObject { */ void setParentNSDoc( NSDoc value ); + /** + * Returns the value of the '<em><b>Referred By Ag NS Desc</b></em>' reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc}. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Referred By Ag NS Desc</em>' reference list. + * @see #isSetReferredByAgNSDesc() + * @see #unsetReferredByAgNSDesc() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDoc_ReferredByAgNSDesc() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc#getRefersToDoc + * @model opposite="refersToDoc" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + EList< AgNSdesc > getReferredByAgNSDesc(); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgNSDesc <em>Referred By Ag NS Desc</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetReferredByAgNSDesc() + * @see #getReferredByAgNSDesc() + * @generated + */ + void unsetReferredByAgNSDesc(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgNSDesc <em>Referred By Ag NS Desc</em>}' reference list is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Referred By Ag NS Desc</em>' reference list is set. + * @see #unsetReferredByAgNSDesc() + * @see #getReferredByAgNSDesc() + * @generated + */ + boolean isSetReferredByAgNSDesc(); + + /** + * Returns the value of the '<em><b>Referred By Presence Condition</b></em>' reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition}. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Referred By Presence Condition</em>' reference list. + * @see #isSetReferredByPresenceCondition() + * @see #unsetReferredByPresenceCondition() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDoc_ReferredByPresenceCondition() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getRefersToDoc + * @model opposite="refersToDoc" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + EList< PresenceCondition > getReferredByPresenceCondition(); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByPresenceCondition <em>Referred By Presence Condition</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetReferredByPresenceCondition() + * @see #getReferredByPresenceCondition() + * @generated + */ + void unsetReferredByPresenceCondition(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByPresenceCondition <em>Referred By Presence Condition</em>}' reference list is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Referred By Presence Condition</em>' reference list is set. + * @see #unsetReferredByPresenceCondition() + * @see #getReferredByPresenceCondition() + * @generated + */ + boolean isSetReferredByPresenceCondition(); + + /** + * Returns the value of the '<em><b>Referred By Ag Presence Condition</b></em>' reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition}. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Referred By Ag Presence Condition</em>' reference list. + * @see #isSetReferredByAgPresenceCondition() + * @see #unsetReferredByAgPresenceCondition() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDoc_ReferredByAgPresenceCondition() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getRefersToPresCondArgsDoc + * @model opposite="refersToPresCondArgsDoc" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + EList< AgPresenceCondition > getReferredByAgPresenceCondition(); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceCondition <em>Referred By Ag Presence Condition</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetReferredByAgPresenceCondition() + * @see #getReferredByAgPresenceCondition() + * @generated + */ + void unsetReferredByAgPresenceCondition(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceCondition <em>Referred By Ag Presence Condition</em>}' reference list is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Referred By Ag Presence Condition</em>' reference list is set. + * @see #unsetReferredByAgPresenceCondition() + * @see #getReferredByAgPresenceCondition() + * @generated + */ + boolean isSetReferredByAgPresenceCondition(); + + /** + * Returns the value of the '<em><b>Referred By Abbreviation</b></em>' reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation}. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Referred By Abbreviation</em>' reference list. + * @see #isSetReferredByAbbreviation() + * @see #unsetReferredByAbbreviation() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDoc_ReferredByAbbreviation() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getRefersToDoc + * @model opposite="refersToDoc" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + EList< Abbreviation > getReferredByAbbreviation(); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAbbreviation <em>Referred By Abbreviation</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetReferredByAbbreviation() + * @see #getReferredByAbbreviation() + * @generated + */ + void unsetReferredByAbbreviation(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAbbreviation <em>Referred By Abbreviation</em>}' reference list is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Referred By Abbreviation</em>' reference list is set. + * @see #unsetReferredByAbbreviation() + * @see #getReferredByAbbreviation() + * @generated + */ + boolean isSetReferredByAbbreviation(); + + /** + * Returns the value of the '<em><b>Referred By Basic Type</b></em>' reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType}. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Referred By Basic Type</em>' reference list. + * @see #isSetReferredByBasicType() + * @see #unsetReferredByBasicType() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDoc_ReferredByBasicType() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getRefersToDoc + * @model opposite="refersToDoc" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + EList< BasicType > getReferredByBasicType(); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByBasicType <em>Referred By Basic Type</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetReferredByBasicType() + * @see #getReferredByBasicType() + * @generated + */ + void unsetReferredByBasicType(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByBasicType <em>Referred By Basic Type</em>}' reference list is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Referred By Basic Type</em>' reference list is set. + * @see #unsetReferredByBasicType() + * @see #getReferredByBasicType() + * @generated + */ + boolean isSetReferredByBasicType(); + + /** + * Returns the value of the '<em><b>Referred By Documented Class</b></em>' reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass}. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Referred By Documented Class</em>' reference list. + * @see #isSetReferredByDocumentedClass() + * @see #unsetReferredByDocumentedClass() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDoc_ReferredByDocumentedClass() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#getRefersToDoc + * @model opposite="refersToDoc" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + EList< DocumentedClass > getReferredByDocumentedClass(); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByDocumentedClass <em>Referred By Documented Class</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetReferredByDocumentedClass() + * @see #getReferredByDocumentedClass() + * @generated + */ + void unsetReferredByDocumentedClass(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByDocumentedClass <em>Referred By Documented Class</em>}' reference list is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Referred By Documented Class</em>' reference list is set. + * @see #unsetReferredByDocumentedClass() + * @see #getReferredByDocumentedClass() + * @generated + */ + boolean isSetReferredByDocumentedClass(); + + /** + * Returns the value of the '<em><b>Referred By Functional Constraint</b></em>' reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint}. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Referred By Functional Constraint</em>' reference list. + * @see #isSetReferredByFunctionalConstraint() + * @see #unsetReferredByFunctionalConstraint() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDoc_ReferredByFunctionalConstraint() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getRefersToDoc + * @model opposite="refersToDoc" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + EList< FunctionalConstraint > getReferredByFunctionalConstraint(); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByFunctionalConstraint <em>Referred By Functional Constraint</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetReferredByFunctionalConstraint() + * @see #getReferredByFunctionalConstraint() + * @generated + */ + void unsetReferredByFunctionalConstraint(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByFunctionalConstraint <em>Referred By Functional Constraint</em>}' reference list is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Referred By Functional Constraint</em>' reference list is set. + * @see #unsetReferredByFunctionalConstraint() + * @see #getReferredByFunctionalConstraint() + * @generated + */ + boolean isSetReferredByFunctionalConstraint(); + + /** + * Returns the value of the '<em><b>Referred By Ag Presence Condition Derived Statistics</b></em>' reference list. + * The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics}. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getRefersToDsPresCondArgsDoc <em>Refers To Ds Pres Cond Args Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Referred By Ag Presence Condition Derived Statistics</em>' reference list. + * @see #isSetReferredByAgPresenceConditionDerivedStatistics() + * @see #unsetReferredByAgPresenceConditionDerivedStatistics() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDoc_ReferredByAgPresenceConditionDerivedStatistics() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getRefersToDsPresCondArgsDoc + * @model opposite="refersToDsPresCondArgsDoc" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + EList< AgPresenceConditionDerivedStatistics > getReferredByAgPresenceConditionDerivedStatistics(); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceConditionDerivedStatistics <em>Referred By Ag Presence Condition Derived Statistics</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetReferredByAgPresenceConditionDerivedStatistics() + * @see #getReferredByAgPresenceConditionDerivedStatistics() + * @generated + */ + void unsetReferredByAgPresenceConditionDerivedStatistics(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceConditionDerivedStatistics <em>Referred By Ag Presence Condition Derived Statistics</em>}' reference list is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Referred By Ag Presence Condition Derived Statistics</em>' reference list is set. + * @see #unsetReferredByAgPresenceConditionDerivedStatistics() + * @see #getReferredByAgPresenceConditionDerivedStatistics() + * @generated + */ + boolean isSetReferredByAgPresenceConditionDerivedStatistics(); + } // Doc diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/DocumentedClass.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/DocumentedClass.java index 2ca1329bcb712b8e133596b74d80e09fafc07b37..b5bdb3cf0825a263092d2e3c0abae7eafd047aa4 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/DocumentedClass.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/DocumentedClass.java @@ -31,6 +31,7 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#isDeprecated <em>Deprecated</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#getDescID <em>Desc ID</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#isInformative <em>Informative</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentedClass() @@ -190,4 +191,55 @@ public interface DocumentedClass extends NsdObject { */ boolean isSetInformative(); + /** + * Returns the value of the '<em><b>Refers To Doc</b></em>' reference. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByDocumentedClass <em>Referred By Documented Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #setRefersToDoc(Doc) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDocumentedClass_RefersToDoc() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByDocumentedClass + * @model opposite="referredByDocumentedClass" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + Doc getRefersToDoc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @generated + */ + void setRefersToDoc( Doc value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + void unsetRefersToDoc(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#getRefersToDoc <em>Refers To Doc</em>}' reference is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Refers To Doc</em>' reference is set. + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + boolean isSetRefersToDoc(); + } // DocumentedClass diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/FunctionalConstraint.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/FunctionalConstraint.java index 37ffcac4c83c732812f9d6ccbb26d4ff043e39b3..2e883b13a6c269d02042257e78457c0a6a57139b 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/FunctionalConstraint.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/FunctionalConstraint.java @@ -36,6 +36,7 @@ import org.eclipse.emf.common.util.EList; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getTitleID <em>Title ID</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getParentFunctionalConstraints <em>Parent Functional Constraints</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getReferredByDataAttribute <em>Referred By Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getFunctionalConstraint() @@ -316,4 +317,55 @@ public interface FunctionalConstraint extends NsdObject { */ boolean isSetReferredByDataAttribute(); + /** + * Returns the value of the '<em><b>Refers To Doc</b></em>' reference. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByFunctionalConstraint <em>Referred By Functional Constraint</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #setRefersToDoc(Doc) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getFunctionalConstraint_RefersToDoc() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByFunctionalConstraint + * @model opposite="referredByFunctionalConstraint" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + Doc getRefersToDoc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @generated + */ + void setRefersToDoc( Doc value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + void unsetRefersToDoc(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getRefersToDoc <em>Refers To Doc</em>}' reference is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Refers To Doc</em>' reference is set. + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + boolean isSetRefersToDoc(); + } // FunctionalConstraint 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 index fd44e7fc84ceb4f741fb0ec78272b59fc9726fc4..286a6af0ab7ac0b9cbad23dd186ad899df211dd5 100644 --- 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 @@ -1122,6 +1122,15 @@ public interface NsdPackage extends EPackage { */ int ABBREVIATION__PARENT_ABBREVIATIONS = NSD_OBJECT_FEATURE_COUNT + 2; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ABBREVIATION__REFERS_TO_DOC = NSD_OBJECT_FEATURE_COUNT + 3; + /** * The number of structural features of the '<em>Abbreviation</em>' class. * <!-- begin-user-doc --> @@ -1129,7 +1138,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int ABBREVIATION_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 3; + int ABBREVIATION_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 4; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -1266,6 +1275,15 @@ public interface NsdPackage extends EPackage { */ int DOCUMENTED_CLASS__INFORMATIVE = NSD_OBJECT_FEATURE_COUNT + 2; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOCUMENTED_CLASS__REFERS_TO_DOC = NSD_OBJECT_FEATURE_COUNT + 3; + /** * The number of structural features of the '<em>Documented Class</em>' class. * <!-- begin-user-doc --> @@ -1273,7 +1291,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DOCUMENTED_CLASS_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 3; + int DOCUMENTED_CLASS_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 4; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -1338,6 +1356,15 @@ public interface NsdPackage extends EPackage { */ int TITLED_CLASS__INFORMATIVE = DOCUMENTED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TITLED_CLASS__REFERS_TO_DOC = DOCUMENTED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Title ID</b></em>' attribute. * <!-- begin-user-doc --> @@ -1419,6 +1446,15 @@ public interface NsdPackage extends EPackage { */ int ANY_LN_CLASS__INFORMATIVE = TITLED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ANY_LN_CLASS__REFERS_TO_DOC = TITLED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Title ID</b></em>' attribute. * <!-- begin-user-doc --> @@ -1545,6 +1581,15 @@ public interface NsdPackage extends EPackage { */ int ABSTRACT_LN_CLASS__INFORMATIVE = ANY_LN_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ABSTRACT_LN_CLASS__REFERS_TO_DOC = ANY_LN_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Title ID</b></em>' attribute. * <!-- begin-user-doc --> @@ -1914,6 +1959,15 @@ public interface NsdPackage extends EPackage { */ int BASIC_TYPE__REFERRED_BY_DATA_ATTRIBUTE = NSD_OBJECT_FEATURE_COUNT + 3; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BASIC_TYPE__REFERS_TO_DOC = NSD_OBJECT_FEATURE_COUNT + 4; + /** * The number of structural features of the '<em>Basic Type</em>' class. * <!-- begin-user-doc --> @@ -1921,7 +1975,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int BASIC_TYPE_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 4; + int BASIC_TYPE_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 5; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -2049,6 +2103,15 @@ public interface NsdPackage extends EPackage { */ int CDC__INFORMATIVE = TITLED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CDC__REFERS_TO_DOC = TITLED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Title ID</b></em>' attribute. * <!-- begin-user-doc --> @@ -2409,6 +2472,15 @@ public interface NsdPackage extends EPackage { */ int CONSTRUCTED_ATTRIBUTE__INFORMATIVE = TITLED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CONSTRUCTED_ATTRIBUTE__REFERS_TO_DOC = TITLED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Title ID</b></em>' attribute. * <!-- begin-user-doc --> @@ -2661,6 +2733,15 @@ public interface NsdPackage extends EPackage { */ int DATA_ATTRIBUTE__INFORMATIVE = DOCUMENTED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_ATTRIBUTE__REFERS_TO_DOC = DOCUMENTED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Pres Cond</b></em>' attribute. * <!-- begin-user-doc --> @@ -2688,6 +2769,15 @@ public interface NsdPackage extends EPackage { */ int DATA_ATTRIBUTE__PRES_COND_ARGS_ID = DOCUMENTED_CLASS_FEATURE_COUNT + 2; + /** + * The feature id for the '<em><b>Refers To Pres Cond Args Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC = DOCUMENTED_CLASS_FEATURE_COUNT + 3; + /** * The feature id for the '<em><b>Is Array</b></em>' attribute. * <!-- begin-user-doc --> @@ -2695,7 +2785,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__IS_ARRAY = DOCUMENTED_CLASS_FEATURE_COUNT + 3; + int DATA_ATTRIBUTE__IS_ARRAY = DOCUMENTED_CLASS_FEATURE_COUNT + 4; /** * The feature id for the '<em><b>Max Index Attribute</b></em>' attribute. @@ -2704,7 +2794,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 4; + int DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 5; /** * The feature id for the '<em><b>Min Index</b></em>' attribute. @@ -2713,7 +2803,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__MIN_INDEX = DOCUMENTED_CLASS_FEATURE_COUNT + 5; + int DATA_ATTRIBUTE__MIN_INDEX = DOCUMENTED_CLASS_FEATURE_COUNT + 6; /** * The feature id for the '<em><b>Size Attribute</b></em>' attribute. @@ -2722,7 +2812,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 6; + int DATA_ATTRIBUTE__SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 7; /** * The feature id for the '<em><b>Dchg</b></em>' attribute. @@ -2731,7 +2821,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__DCHG = DOCUMENTED_CLASS_FEATURE_COUNT + 7; + int DATA_ATTRIBUTE__DCHG = DOCUMENTED_CLASS_FEATURE_COUNT + 8; /** * The feature id for the '<em><b>Dupd</b></em>' attribute. @@ -2740,7 +2830,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__DUPD = DOCUMENTED_CLASS_FEATURE_COUNT + 8; + int DATA_ATTRIBUTE__DUPD = DOCUMENTED_CLASS_FEATURE_COUNT + 9; /** * The feature id for the '<em><b>Qchg</b></em>' attribute. @@ -2749,7 +2839,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__QCHG = DOCUMENTED_CLASS_FEATURE_COUNT + 9; + int DATA_ATTRIBUTE__QCHG = DOCUMENTED_CLASS_FEATURE_COUNT + 10; /** * The feature id for the '<em><b>Type</b></em>' attribute. @@ -2758,7 +2848,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 10; + int DATA_ATTRIBUTE__TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 11; /** * The feature id for the '<em><b>Type Kind</b></em>' attribute. @@ -2767,7 +2857,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 11; + int DATA_ATTRIBUTE__TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 12; /** * The feature id for the '<em><b>Default Value</b></em>' attribute. @@ -2776,7 +2866,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__DEFAULT_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 12; + int DATA_ATTRIBUTE__DEFAULT_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 13; /** * The feature id for the '<em><b>Max Value</b></em>' attribute. @@ -2785,7 +2875,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__MAX_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 13; + int DATA_ATTRIBUTE__MAX_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 14; /** * The feature id for the '<em><b>Min Value</b></em>' attribute. @@ -2794,7 +2884,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__MIN_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 14; + int DATA_ATTRIBUTE__MIN_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 15; /** * The feature id for the '<em><b>Fc</b></em>' attribute. @@ -2803,7 +2893,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__FC = DOCUMENTED_CLASS_FEATURE_COUNT + 15; + int DATA_ATTRIBUTE__FC = DOCUMENTED_CLASS_FEATURE_COUNT + 16; /** * The feature id for the '<em><b>Name</b></em>' attribute. @@ -2812,7 +2902,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__NAME = DOCUMENTED_CLASS_FEATURE_COUNT + 16; + int DATA_ATTRIBUTE__NAME = DOCUMENTED_CLASS_FEATURE_COUNT + 17; /** * The feature id for the '<em><b>Parent CDC</b></em>' container reference. @@ -2821,7 +2911,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__PARENT_CDC = DOCUMENTED_CLASS_FEATURE_COUNT + 17; + int DATA_ATTRIBUTE__PARENT_CDC = DOCUMENTED_CLASS_FEATURE_COUNT + 18; /** * The feature id for the '<em><b>Referred By Sub Data Object As Size Attribute</b></em>' reference list. @@ -2830,7 +2920,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__REFERRED_BY_SUB_DATA_OBJECT_AS_SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 18; + int DATA_ATTRIBUTE__REFERRED_BY_SUB_DATA_OBJECT_AS_SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 19; /** * The feature id for the '<em><b>Referred By Sub Data Object As Max Index Attribute</b></em>' reference list. @@ -2839,7 +2929,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__REFERRED_BY_SUB_DATA_OBJECT_AS_MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 19; + int DATA_ATTRIBUTE__REFERRED_BY_SUB_DATA_OBJECT_AS_MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 20; /** * The feature id for the '<em><b>Refers To Functional Constraint</b></em>' reference. @@ -2848,7 +2938,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__REFERS_TO_FUNCTIONAL_CONSTRAINT = DOCUMENTED_CLASS_FEATURE_COUNT + 20; + int DATA_ATTRIBUTE__REFERS_TO_FUNCTIONAL_CONSTRAINT = DOCUMENTED_CLASS_FEATURE_COUNT + 21; /** * The feature id for the '<em><b>Refers To Presence Condition</b></em>' reference. @@ -2857,7 +2947,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__REFERS_TO_PRESENCE_CONDITION = DOCUMENTED_CLASS_FEATURE_COUNT + 21; + int DATA_ATTRIBUTE__REFERS_TO_PRESENCE_CONDITION = DOCUMENTED_CLASS_FEATURE_COUNT + 22; /** * The feature id for the '<em><b>Refers To Size Attribute</b></em>' reference. @@ -2866,7 +2956,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__REFERS_TO_SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 22; + int DATA_ATTRIBUTE__REFERS_TO_SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 23; /** * The feature id for the '<em><b>Refers To Max Index Attribute</b></em>' reference. @@ -2875,7 +2965,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__REFERS_TO_MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 23; + int DATA_ATTRIBUTE__REFERS_TO_MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 24; /** * The feature id for the '<em><b>Referred By Data Attribute As Size Attribute</b></em>' reference list. @@ -2884,7 +2974,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__REFERRED_BY_DATA_ATTRIBUTE_AS_SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 24; + int DATA_ATTRIBUTE__REFERRED_BY_DATA_ATTRIBUTE_AS_SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 25; /** * The feature id for the '<em><b>Referred By Data Attribute As Max Index Attribute</b></em>' reference list. @@ -2893,7 +2983,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__REFERRED_BY_DATA_ATTRIBUTE_AS_MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 25; + int DATA_ATTRIBUTE__REFERRED_BY_DATA_ATTRIBUTE_AS_MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 26; /** * The feature id for the '<em><b>Refers To Basic Type</b></em>' reference. @@ -2902,7 +2992,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE__REFERS_TO_BASIC_TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 26; + int DATA_ATTRIBUTE__REFERS_TO_BASIC_TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 27; /** * The number of structural features of the '<em>Data Attribute</em>' class. @@ -2911,7 +3001,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_ATTRIBUTE_FEATURE_COUNT = DOCUMENTED_CLASS_FEATURE_COUNT + 27; + int DATA_ATTRIBUTE_FEATURE_COUNT = DOCUMENTED_CLASS_FEATURE_COUNT + 28; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -2976,6 +3066,15 @@ public interface NsdPackage extends EPackage { */ int DATA_OBJECT__INFORMATIVE = DOCUMENTED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_OBJECT__REFERS_TO_DOC = DOCUMENTED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Pres Cond</b></em>' attribute. * <!-- begin-user-doc --> @@ -3003,6 +3102,15 @@ public interface NsdPackage extends EPackage { */ int DATA_OBJECT__PRES_COND_ARGS_ID = DOCUMENTED_CLASS_FEATURE_COUNT + 2; + /** + * The feature id for the '<em><b>Refers To Pres Cond Args Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC = DOCUMENTED_CLASS_FEATURE_COUNT + 3; + /** * The feature id for the '<em><b>Ds Pres Cond</b></em>' attribute. * <!-- begin-user-doc --> @@ -3010,7 +3118,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__DS_PRES_COND = DOCUMENTED_CLASS_FEATURE_COUNT + 3; + int DATA_OBJECT__DS_PRES_COND = DOCUMENTED_CLASS_FEATURE_COUNT + 4; /** * The feature id for the '<em><b>Ds Pres Cond Args</b></em>' attribute. @@ -3019,7 +3127,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__DS_PRES_COND_ARGS = DOCUMENTED_CLASS_FEATURE_COUNT + 4; + int DATA_OBJECT__DS_PRES_COND_ARGS = DOCUMENTED_CLASS_FEATURE_COUNT + 5; /** * The feature id for the '<em><b>Ds Pres Cond Args ID</b></em>' attribute. @@ -3028,7 +3136,16 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__DS_PRES_COND_ARGS_ID = DOCUMENTED_CLASS_FEATURE_COUNT + 5; + int DATA_OBJECT__DS_PRES_COND_ARGS_ID = DOCUMENTED_CLASS_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Refers To Ds Pres Cond Args Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC = DOCUMENTED_CLASS_FEATURE_COUNT + 7; /** * The feature id for the '<em><b>Underlying Type</b></em>' attribute. @@ -3037,7 +3154,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__UNDERLYING_TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 6; + int DATA_OBJECT__UNDERLYING_TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 8; /** * The feature id for the '<em><b>Underlying Type Kind</b></em>' attribute. @@ -3046,7 +3163,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__UNDERLYING_TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 7; + int DATA_OBJECT__UNDERLYING_TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 9; /** * The feature id for the '<em><b>Name</b></em>' attribute. @@ -3055,7 +3172,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__NAME = DOCUMENTED_CLASS_FEATURE_COUNT + 8; + int DATA_OBJECT__NAME = DOCUMENTED_CLASS_FEATURE_COUNT + 10; /** * The feature id for the '<em><b>Transient</b></em>' attribute. @@ -3064,7 +3181,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__TRANSIENT = DOCUMENTED_CLASS_FEATURE_COUNT + 9; + int DATA_OBJECT__TRANSIENT = DOCUMENTED_CLASS_FEATURE_COUNT + 11; /** * The feature id for the '<em><b>Type</b></em>' attribute. @@ -3073,7 +3190,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 10; + int DATA_OBJECT__TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 12; /** * The feature id for the '<em><b>Parent Any LN Class</b></em>' container reference. @@ -3082,7 +3199,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__PARENT_ANY_LN_CLASS = DOCUMENTED_CLASS_FEATURE_COUNT + 11; + int DATA_OBJECT__PARENT_ANY_LN_CLASS = DOCUMENTED_CLASS_FEATURE_COUNT + 13; /** * The feature id for the '<em><b>Refers To CDC</b></em>' reference. @@ -3091,7 +3208,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__REFERS_TO_CDC = DOCUMENTED_CLASS_FEATURE_COUNT + 12; + int DATA_OBJECT__REFERS_TO_CDC = DOCUMENTED_CLASS_FEATURE_COUNT + 14; /** * The feature id for the '<em><b>Refers To Presence Condition</b></em>' reference. @@ -3100,7 +3217,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__REFERS_TO_PRESENCE_CONDITION = DOCUMENTED_CLASS_FEATURE_COUNT + 13; + int DATA_OBJECT__REFERS_TO_PRESENCE_CONDITION = DOCUMENTED_CLASS_FEATURE_COUNT + 15; /** * The feature id for the '<em><b>Refers To Presence Condition Derived Statistics</b></em>' reference. @@ -3109,7 +3226,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT__REFERS_TO_PRESENCE_CONDITION_DERIVED_STATISTICS = DOCUMENTED_CLASS_FEATURE_COUNT + 14; + int DATA_OBJECT__REFERS_TO_PRESENCE_CONDITION_DERIVED_STATISTICS = DOCUMENTED_CLASS_FEATURE_COUNT + 16; /** * The number of structural features of the '<em>Data Object</em>' class. @@ -3118,7 +3235,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DATA_OBJECT_FEATURE_COUNT = DOCUMENTED_CLASS_FEATURE_COUNT + 15; + int DATA_OBJECT_FEATURE_COUNT = DOCUMENTED_CLASS_FEATURE_COUNT + 17; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -3264,6 +3381,78 @@ public interface NsdPackage extends EPackage { */ int DOC__PARENT_NS_DOC = NSD_OBJECT_FEATURE_COUNT + 4; + /** + * The feature id for the '<em><b>Referred By Ag NS Desc</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOC__REFERRED_BY_AG_NS_DESC = NSD_OBJECT_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Referred By Presence Condition</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOC__REFERRED_BY_PRESENCE_CONDITION = NSD_OBJECT_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Referred By Ag Presence Condition</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOC__REFERRED_BY_AG_PRESENCE_CONDITION = NSD_OBJECT_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>Referred By Abbreviation</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOC__REFERRED_BY_ABBREVIATION = NSD_OBJECT_FEATURE_COUNT + 8; + + /** + * The feature id for the '<em><b>Referred By Basic Type</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOC__REFERRED_BY_BASIC_TYPE = NSD_OBJECT_FEATURE_COUNT + 9; + + /** + * The feature id for the '<em><b>Referred By Documented Class</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOC__REFERRED_BY_DOCUMENTED_CLASS = NSD_OBJECT_FEATURE_COUNT + 10; + + /** + * The feature id for the '<em><b>Referred By Functional Constraint</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT = NSD_OBJECT_FEATURE_COUNT + 11; + + /** + * The feature id for the '<em><b>Referred By Ag Presence Condition Derived Statistics</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS = NSD_OBJECT_FEATURE_COUNT + 12; + /** * The number of structural features of the '<em>Doc</em>' class. * <!-- begin-user-doc --> @@ -3271,7 +3460,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int DOC_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 5; + int DOC_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 13; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -3336,6 +3525,15 @@ public interface NsdPackage extends EPackage { */ int ENUMERATION__INFORMATIVE = TITLED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ENUMERATION__REFERS_TO_DOC = TITLED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Title ID</b></em>' attribute. * <!-- begin-user-doc --> @@ -3561,6 +3759,15 @@ public interface NsdPackage extends EPackage { */ int FUNCTIONAL_CONSTRAINT__REFERRED_BY_DATA_ATTRIBUTE = NSD_OBJECT_FEATURE_COUNT + 5; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC = NSD_OBJECT_FEATURE_COUNT + 6; + /** * The number of structural features of the '<em>Functional Constraint</em>' class. * <!-- begin-user-doc --> @@ -3568,7 +3775,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int FUNCTIONAL_CONSTRAINT_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 6; + int FUNCTIONAL_CONSTRAINT_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 7; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -3786,6 +3993,15 @@ public interface NsdPackage extends EPackage { */ int LITERAL__INFORMATIVE = DOCUMENTED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int LITERAL__REFERS_TO_DOC = DOCUMENTED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Literal Val</b></em>' attribute. * <!-- begin-user-doc --> @@ -3885,6 +4101,15 @@ public interface NsdPackage extends EPackage { */ int LN_CLASS__INFORMATIVE = ANY_LN_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int LN_CLASS__REFERS_TO_DOC = ANY_LN_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Title ID</b></em>' attribute. * <!-- begin-user-doc --> @@ -4236,6 +4461,15 @@ public interface NsdPackage extends EPackage { */ int NS__DESC_ID = COPYRIGHTED_FEATURE_COUNT + 7; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int NS__REFERS_TO_DOC = COPYRIGHTED_FEATURE_COUNT + 8; + /** * The feature id for the '<em><b>Changes</b></em>' containment reference. * <!-- begin-user-doc --> @@ -4243,7 +4477,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__CHANGES = COPYRIGHTED_FEATURE_COUNT + 8; + int NS__CHANGES = COPYRIGHTED_FEATURE_COUNT + 9; /** * The feature id for the '<em><b>Depends On</b></em>' containment reference. @@ -4252,7 +4486,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__DEPENDS_ON = COPYRIGHTED_FEATURE_COUNT + 9; + int NS__DEPENDS_ON = COPYRIGHTED_FEATURE_COUNT + 10; /** * The feature id for the '<em><b>Basic Types</b></em>' containment reference. @@ -4261,7 +4495,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__BASIC_TYPES = COPYRIGHTED_FEATURE_COUNT + 10; + int NS__BASIC_TYPES = COPYRIGHTED_FEATURE_COUNT + 11; /** * The feature id for the '<em><b>Functional Constraints</b></em>' containment reference. @@ -4270,7 +4504,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__FUNCTIONAL_CONSTRAINTS = COPYRIGHTED_FEATURE_COUNT + 11; + int NS__FUNCTIONAL_CONSTRAINTS = COPYRIGHTED_FEATURE_COUNT + 12; /** * The feature id for the '<em><b>Presence Conditions</b></em>' containment reference. @@ -4279,7 +4513,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__PRESENCE_CONDITIONS = COPYRIGHTED_FEATURE_COUNT + 12; + int NS__PRESENCE_CONDITIONS = COPYRIGHTED_FEATURE_COUNT + 13; /** * The feature id for the '<em><b>Abbreviations</b></em>' containment reference. @@ -4288,7 +4522,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__ABBREVIATIONS = COPYRIGHTED_FEATURE_COUNT + 13; + int NS__ABBREVIATIONS = COPYRIGHTED_FEATURE_COUNT + 14; /** * The feature id for the '<em><b>Enumerations</b></em>' containment reference. @@ -4297,7 +4531,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__ENUMERATIONS = COPYRIGHTED_FEATURE_COUNT + 14; + int NS__ENUMERATIONS = COPYRIGHTED_FEATURE_COUNT + 15; /** * The feature id for the '<em><b>Constructed Attributes</b></em>' containment reference. @@ -4306,7 +4540,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__CONSTRUCTED_ATTRIBUTES = COPYRIGHTED_FEATURE_COUNT + 15; + int NS__CONSTRUCTED_ATTRIBUTES = COPYRIGHTED_FEATURE_COUNT + 16; /** * The feature id for the '<em><b>CD Cs</b></em>' containment reference. @@ -4315,7 +4549,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__CD_CS = COPYRIGHTED_FEATURE_COUNT + 16; + int NS__CD_CS = COPYRIGHTED_FEATURE_COUNT + 17; /** * The feature id for the '<em><b>LN Classes</b></em>' containment reference. @@ -4324,7 +4558,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__LN_CLASSES = COPYRIGHTED_FEATURE_COUNT + 17; + int NS__LN_CLASSES = COPYRIGHTED_FEATURE_COUNT + 18; /** * The feature id for the '<em><b>Referred By Depends On</b></em>' reference list. @@ -4333,7 +4567,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS__REFERRED_BY_DEPENDS_ON = COPYRIGHTED_FEATURE_COUNT + 18; + int NS__REFERRED_BY_DEPENDS_ON = COPYRIGHTED_FEATURE_COUNT + 19; /** * The number of structural features of the '<em>NS</em>' class. @@ -4342,7 +4576,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int NS_FEATURE_COUNT = COPYRIGHTED_FEATURE_COUNT + 19; + int NS_FEATURE_COUNT = COPYRIGHTED_FEATURE_COUNT + 20; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -4650,6 +4884,15 @@ public interface NsdPackage extends EPackage { */ int PRESENCE_CONDITION__REFERRED_BY_SUB_DATA_ATTRIBUTE = NSD_OBJECT_FEATURE_COUNT + 9; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PRESENCE_CONDITION__REFERS_TO_DOC = NSD_OBJECT_FEATURE_COUNT + 10; + /** * The number of structural features of the '<em>Presence Condition</em>' class. * <!-- begin-user-doc --> @@ -4657,7 +4900,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int PRESENCE_CONDITION_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 10; + int PRESENCE_CONDITION_FEATURE_COUNT = NSD_OBJECT_FEATURE_COUNT + 11; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -4938,6 +5181,15 @@ public interface NsdPackage extends EPackage { */ int SERVICE_CONSTRUCTED_ATTRIBUTE__INFORMATIVE = CONSTRUCTED_ATTRIBUTE__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SERVICE_CONSTRUCTED_ATTRIBUTE__REFERS_TO_DOC = CONSTRUCTED_ATTRIBUTE__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Title ID</b></em>' attribute. * <!-- begin-user-doc --> @@ -5136,6 +5388,15 @@ public interface NsdPackage extends EPackage { */ int SERVICE_DATA_ATTRIBUTE__INFORMATIVE = DOCUMENTED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SERVICE_DATA_ATTRIBUTE__REFERS_TO_DOC = DOCUMENTED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Pres Cond</b></em>' attribute. * <!-- begin-user-doc --> @@ -5163,6 +5424,15 @@ public interface NsdPackage extends EPackage { */ int SERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID = DOCUMENTED_CLASS_FEATURE_COUNT + 2; + /** + * The feature id for the '<em><b>Refers To Pres Cond Args Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC = DOCUMENTED_CLASS_FEATURE_COUNT + 3; + /** * The feature id for the '<em><b>Type</b></em>' attribute. * <!-- begin-user-doc --> @@ -5170,7 +5440,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_DATA_ATTRIBUTE__TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 3; + int SERVICE_DATA_ATTRIBUTE__TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 4; /** * The feature id for the '<em><b>Type Kind</b></em>' attribute. @@ -5179,7 +5449,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_DATA_ATTRIBUTE__TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 4; + int SERVICE_DATA_ATTRIBUTE__TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 5; /** * The feature id for the '<em><b>Underlying Type</b></em>' attribute. @@ -5188,7 +5458,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 5; + int SERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 6; /** * The feature id for the '<em><b>Underlying Type Kind</b></em>' attribute. @@ -5197,7 +5467,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 6; + int SERVICE_DATA_ATTRIBUTE__UNDERLYING_TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 7; /** * The feature id for the '<em><b>Fc</b></em>' attribute. @@ -5206,7 +5476,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_DATA_ATTRIBUTE__FC = DOCUMENTED_CLASS_FEATURE_COUNT + 7; + int SERVICE_DATA_ATTRIBUTE__FC = DOCUMENTED_CLASS_FEATURE_COUNT + 8; /** * The feature id for the '<em><b>Name</b></em>' attribute. @@ -5215,7 +5485,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_DATA_ATTRIBUTE__NAME = DOCUMENTED_CLASS_FEATURE_COUNT + 8; + int SERVICE_DATA_ATTRIBUTE__NAME = DOCUMENTED_CLASS_FEATURE_COUNT + 9; /** * The feature id for the '<em><b>Parent Service CDC</b></em>' container reference. @@ -5224,7 +5494,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_DATA_ATTRIBUTE__PARENT_SERVICE_CDC = DOCUMENTED_CLASS_FEATURE_COUNT + 9; + int SERVICE_DATA_ATTRIBUTE__PARENT_SERVICE_CDC = DOCUMENTED_CLASS_FEATURE_COUNT + 10; /** * The number of structural features of the '<em>Service Data Attribute</em>' class. @@ -5233,7 +5503,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_DATA_ATTRIBUTE_FEATURE_COUNT = DOCUMENTED_CLASS_FEATURE_COUNT + 10; + int SERVICE_DATA_ATTRIBUTE_FEATURE_COUNT = DOCUMENTED_CLASS_FEATURE_COUNT + 11; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -5352,6 +5622,15 @@ public interface NsdPackage extends EPackage { */ int SERVICE_NS__DESC_ID = COPYRIGHTED_FEATURE_COUNT + 7; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SERVICE_NS__REFERS_TO_DOC = COPYRIGHTED_FEATURE_COUNT + 8; + /** * The feature id for the '<em><b>Changes</b></em>' containment reference. * <!-- begin-user-doc --> @@ -5359,7 +5638,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_NS__CHANGES = COPYRIGHTED_FEATURE_COUNT + 8; + int SERVICE_NS__CHANGES = COPYRIGHTED_FEATURE_COUNT + 9; /** * The feature id for the '<em><b>Functional Constraints</b></em>' containment reference. @@ -5368,7 +5647,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_NS__FUNCTIONAL_CONSTRAINTS = COPYRIGHTED_FEATURE_COUNT + 9; + int SERVICE_NS__FUNCTIONAL_CONSTRAINTS = COPYRIGHTED_FEATURE_COUNT + 10; /** * The feature id for the '<em><b>Presence Conditions</b></em>' containment reference. @@ -5377,7 +5656,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_NS__PRESENCE_CONDITIONS = COPYRIGHTED_FEATURE_COUNT + 10; + int SERVICE_NS__PRESENCE_CONDITIONS = COPYRIGHTED_FEATURE_COUNT + 11; /** * The feature id for the '<em><b>Abbreviations</b></em>' containment reference. @@ -5386,7 +5665,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_NS__ABBREVIATIONS = COPYRIGHTED_FEATURE_COUNT + 11; + int SERVICE_NS__ABBREVIATIONS = COPYRIGHTED_FEATURE_COUNT + 12; /** * The feature id for the '<em><b>Service Type Realizations</b></em>' containment reference. @@ -5395,7 +5674,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_NS__SERVICE_TYPE_REALIZATIONS = COPYRIGHTED_FEATURE_COUNT + 12; + int SERVICE_NS__SERVICE_TYPE_REALIZATIONS = COPYRIGHTED_FEATURE_COUNT + 13; /** * The feature id for the '<em><b>Service Constructed Attributes</b></em>' containment reference. @@ -5404,7 +5683,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES = COPYRIGHTED_FEATURE_COUNT + 13; + int SERVICE_NS__SERVICE_CONSTRUCTED_ATTRIBUTES = COPYRIGHTED_FEATURE_COUNT + 14; /** * The feature id for the '<em><b>Service CD Cs</b></em>' containment reference. @@ -5413,7 +5692,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_NS__SERVICE_CD_CS = COPYRIGHTED_FEATURE_COUNT + 14; + int SERVICE_NS__SERVICE_CD_CS = COPYRIGHTED_FEATURE_COUNT + 15; /** * The number of structural features of the '<em>Service NS</em>' class. @@ -5422,7 +5701,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SERVICE_NS_FEATURE_COUNT = COPYRIGHTED_FEATURE_COUNT + 15; + int SERVICE_NS_FEATURE_COUNT = COPYRIGHTED_FEATURE_COUNT + 16; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -5595,6 +5874,15 @@ public interface NsdPackage extends EPackage { */ int SERVICE_PARAMETER__INFORMATIVE = DOCUMENTED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SERVICE_PARAMETER__REFERS_TO_DOC = DOCUMENTED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Type</b></em>' attribute. * <!-- begin-user-doc --> @@ -5793,6 +6081,15 @@ public interface NsdPackage extends EPackage { */ int SUB_DATA_ATTRIBUTE__INFORMATIVE = DOCUMENTED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SUB_DATA_ATTRIBUTE__REFERS_TO_DOC = DOCUMENTED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Pres Cond</b></em>' attribute. * <!-- begin-user-doc --> @@ -5820,6 +6117,15 @@ public interface NsdPackage extends EPackage { */ int SUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID = DOCUMENTED_CLASS_FEATURE_COUNT + 2; + /** + * The feature id for the '<em><b>Refers To Pres Cond Args Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC = DOCUMENTED_CLASS_FEATURE_COUNT + 3; + /** * The feature id for the '<em><b>Is Array</b></em>' attribute. * <!-- begin-user-doc --> @@ -5827,7 +6133,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__IS_ARRAY = DOCUMENTED_CLASS_FEATURE_COUNT + 3; + int SUB_DATA_ATTRIBUTE__IS_ARRAY = DOCUMENTED_CLASS_FEATURE_COUNT + 4; /** * The feature id for the '<em><b>Max Index Attribute</b></em>' attribute. @@ -5836,7 +6142,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 4; + int SUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 5; /** * The feature id for the '<em><b>Min Index</b></em>' attribute. @@ -5845,7 +6151,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__MIN_INDEX = DOCUMENTED_CLASS_FEATURE_COUNT + 5; + int SUB_DATA_ATTRIBUTE__MIN_INDEX = DOCUMENTED_CLASS_FEATURE_COUNT + 6; /** * The feature id for the '<em><b>Size Attribute</b></em>' attribute. @@ -5854,7 +6160,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 6; + int SUB_DATA_ATTRIBUTE__SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 7; /** * The feature id for the '<em><b>Type</b></em>' attribute. @@ -5863,7 +6169,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 7; + int SUB_DATA_ATTRIBUTE__TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 8; /** * The feature id for the '<em><b>Type Kind</b></em>' attribute. @@ -5872,7 +6178,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 8; + int SUB_DATA_ATTRIBUTE__TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 9; /** * The feature id for the '<em><b>Default Value</b></em>' attribute. @@ -5881,7 +6187,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__DEFAULT_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 9; + int SUB_DATA_ATTRIBUTE__DEFAULT_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 10; /** * The feature id for the '<em><b>Max Value</b></em>' attribute. @@ -5890,7 +6196,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__MAX_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 10; + int SUB_DATA_ATTRIBUTE__MAX_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 11; /** * The feature id for the '<em><b>Min Value</b></em>' attribute. @@ -5899,7 +6205,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__MIN_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 11; + int SUB_DATA_ATTRIBUTE__MIN_VALUE = DOCUMENTED_CLASS_FEATURE_COUNT + 12; /** * The feature id for the '<em><b>Name</b></em>' attribute. @@ -5908,7 +6214,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__NAME = DOCUMENTED_CLASS_FEATURE_COUNT + 12; + int SUB_DATA_ATTRIBUTE__NAME = DOCUMENTED_CLASS_FEATURE_COUNT + 13; /** * The feature id for the '<em><b>Parent Constructed Attribute</b></em>' container reference. @@ -5917,7 +6223,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__PARENT_CONSTRUCTED_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 13; + int SUB_DATA_ATTRIBUTE__PARENT_CONSTRUCTED_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 14; /** * The feature id for the '<em><b>Refers To Presence Condition</b></em>' reference. @@ -5926,7 +6232,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE__REFERS_TO_PRESENCE_CONDITION = DOCUMENTED_CLASS_FEATURE_COUNT + 14; + int SUB_DATA_ATTRIBUTE__REFERS_TO_PRESENCE_CONDITION = DOCUMENTED_CLASS_FEATURE_COUNT + 15; /** * The number of structural features of the '<em>Sub Data Attribute</em>' class. @@ -5935,7 +6241,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_ATTRIBUTE_FEATURE_COUNT = DOCUMENTED_CLASS_FEATURE_COUNT + 15; + int SUB_DATA_ATTRIBUTE_FEATURE_COUNT = DOCUMENTED_CLASS_FEATURE_COUNT + 16; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -6000,6 +6306,15 @@ public interface NsdPackage extends EPackage { */ int SUB_DATA_OBJECT__INFORMATIVE = DOCUMENTED_CLASS__INFORMATIVE; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SUB_DATA_OBJECT__REFERS_TO_DOC = DOCUMENTED_CLASS__REFERS_TO_DOC; + /** * The feature id for the '<em><b>Pres Cond</b></em>' attribute. * <!-- begin-user-doc --> @@ -6027,6 +6342,15 @@ public interface NsdPackage extends EPackage { */ int SUB_DATA_OBJECT__PRES_COND_ARGS_ID = DOCUMENTED_CLASS_FEATURE_COUNT + 2; + /** + * The feature id for the '<em><b>Refers To Pres Cond Args Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC = DOCUMENTED_CLASS_FEATURE_COUNT + 3; + /** * The feature id for the '<em><b>Is Array</b></em>' attribute. * <!-- begin-user-doc --> @@ -6034,7 +6358,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__IS_ARRAY = DOCUMENTED_CLASS_FEATURE_COUNT + 3; + int SUB_DATA_OBJECT__IS_ARRAY = DOCUMENTED_CLASS_FEATURE_COUNT + 4; /** * The feature id for the '<em><b>Max Index Attribute</b></em>' attribute. @@ -6043,7 +6367,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 4; + int SUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 5; /** * The feature id for the '<em><b>Min Index</b></em>' attribute. @@ -6052,7 +6376,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__MIN_INDEX = DOCUMENTED_CLASS_FEATURE_COUNT + 5; + int SUB_DATA_OBJECT__MIN_INDEX = DOCUMENTED_CLASS_FEATURE_COUNT + 6; /** * The feature id for the '<em><b>Size Attribute</b></em>' attribute. @@ -6061,7 +6385,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 6; + int SUB_DATA_OBJECT__SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 7; /** * The feature id for the '<em><b>Underlying Type</b></em>' attribute. @@ -6070,7 +6394,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__UNDERLYING_TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 7; + int SUB_DATA_OBJECT__UNDERLYING_TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 8; /** * The feature id for the '<em><b>Underlying Type Kind</b></em>' attribute. @@ -6079,7 +6403,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__UNDERLYING_TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 8; + int SUB_DATA_OBJECT__UNDERLYING_TYPE_KIND = DOCUMENTED_CLASS_FEATURE_COUNT + 9; /** * The feature id for the '<em><b>Name</b></em>' attribute. @@ -6088,7 +6412,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__NAME = DOCUMENTED_CLASS_FEATURE_COUNT + 9; + int SUB_DATA_OBJECT__NAME = DOCUMENTED_CLASS_FEATURE_COUNT + 10; /** * The feature id for the '<em><b>Type</b></em>' attribute. @@ -6097,7 +6421,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 10; + int SUB_DATA_OBJECT__TYPE = DOCUMENTED_CLASS_FEATURE_COUNT + 11; /** * The feature id for the '<em><b>Parent CDC</b></em>' container reference. @@ -6106,7 +6430,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__PARENT_CDC = DOCUMENTED_CLASS_FEATURE_COUNT + 11; + int SUB_DATA_OBJECT__PARENT_CDC = DOCUMENTED_CLASS_FEATURE_COUNT + 12; /** * The feature id for the '<em><b>Refers To CDC</b></em>' reference. @@ -6115,7 +6439,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__REFERS_TO_CDC = DOCUMENTED_CLASS_FEATURE_COUNT + 12; + int SUB_DATA_OBJECT__REFERS_TO_CDC = DOCUMENTED_CLASS_FEATURE_COUNT + 13; /** * The feature id for the '<em><b>Refers To Presence Condition</b></em>' reference. @@ -6124,7 +6448,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__REFERS_TO_PRESENCE_CONDITION = DOCUMENTED_CLASS_FEATURE_COUNT + 13; + int SUB_DATA_OBJECT__REFERS_TO_PRESENCE_CONDITION = DOCUMENTED_CLASS_FEATURE_COUNT + 14; /** * The feature id for the '<em><b>Refers To Size Attribute</b></em>' reference. @@ -6133,7 +6457,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__REFERS_TO_SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 14; + int SUB_DATA_OBJECT__REFERS_TO_SIZE_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 15; /** * The feature id for the '<em><b>Refers To Max Index Attribute</b></em>' reference. @@ -6142,7 +6466,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT__REFERS_TO_MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 15; + int SUB_DATA_OBJECT__REFERS_TO_MAX_INDEX_ATTRIBUTE = DOCUMENTED_CLASS_FEATURE_COUNT + 16; /** * The number of structural features of the '<em>Sub Data Object</em>' class. @@ -6151,7 +6475,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int SUB_DATA_OBJECT_FEATURE_COUNT = DOCUMENTED_CLASS_FEATURE_COUNT + 16; + int SUB_DATA_OBJECT_FEATURE_COUNT = DOCUMENTED_CLASS_FEATURE_COUNT + 17; /** * The operation id for the '<em>Build Explicit Links</em>' operation. @@ -6261,6 +6585,15 @@ public interface NsdPackage extends EPackage { */ int AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID = 2; + /** + * The feature id for the '<em><b>Refers To Pres Cond Args Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC = 3; + /** * The number of structural features of the '<em>Ag Presence Condition</em>' class. * <!-- begin-user-doc --> @@ -6268,7 +6601,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int AG_PRESENCE_CONDITION_FEATURE_COUNT = 3; + int AG_PRESENCE_CONDITION_FEATURE_COUNT = 4; /** * The number of operations of the '<em>Ag Presence Condition</em>' class. @@ -6306,6 +6639,15 @@ public interface NsdPackage extends EPackage { */ int AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS_ID = 2; + /** + * The feature id for the '<em><b>Refers To Ds Pres Cond Args Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC = 3; + /** * The number of structural features of the '<em>Ag Presence Condition Derived Statistics</em>' class. * <!-- begin-user-doc --> @@ -6313,7 +6655,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int AG_PRESENCE_CONDITION_DERIVED_STATISTICS_FEATURE_COUNT = 3; + int AG_PRESENCE_CONDITION_DERIVED_STATISTICS_FEATURE_COUNT = 4; /** * The number of operations of the '<em>Ag Presence Condition Derived Statistics</em>' class. @@ -6603,6 +6945,15 @@ public interface NsdPackage extends EPackage { */ int AG_NSDESC__DESC_ID = 0; + /** + * The feature id for the '<em><b>Refers To Doc</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AG_NSDESC__REFERS_TO_DOC = 1; + /** * The number of structural features of the '<em>Ag NSdesc</em>' class. * <!-- begin-user-doc --> @@ -6610,7 +6961,7 @@ public interface NsdPackage extends EPackage { * @generated * @ordered */ - int AG_NSDESC_FEATURE_COUNT = 1; + int AG_NSDESC_FEATURE_COUNT = 2; /** * The number of operations of the '<em>Ag NSdesc</em>' class. @@ -6994,6 +7345,17 @@ public interface NsdPackage extends EPackage { */ EReference getAbbreviation_ParentAbbreviations(); + /** + * Returns the meta object for the reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Refers To Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation#getRefersToDoc() + * @see #getAbbreviation() + * @generated + */ + EReference getAbbreviation_RefersToDoc(); + /** * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviations <em>Abbreviations</em>}'. * <!-- begin-user-doc --> @@ -7283,6 +7645,17 @@ public interface NsdPackage extends EPackage { */ EReference getBasicType_ReferredByDataAttribute(); + /** + * Returns the meta object for the reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Refers To Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType#getRefersToDoc() + * @see #getBasicType() + * @generated + */ + EReference getBasicType_RefersToDoc(); + /** * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicTypes <em>Basic Types</em>}'. * <!-- begin-user-doc --> @@ -8052,6 +8425,94 @@ public interface NsdPackage extends EPackage { */ EReference getDoc_ParentNSDoc(); + /** + * Returns the meta object for the reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgNSDesc <em>Referred By Ag NS Desc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Referred By Ag NS Desc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgNSDesc() + * @see #getDoc() + * @generated + */ + EReference getDoc_ReferredByAgNSDesc(); + + /** + * Returns the meta object for the reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByPresenceCondition <em>Referred By Presence Condition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Referred By Presence Condition</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByPresenceCondition() + * @see #getDoc() + * @generated + */ + EReference getDoc_ReferredByPresenceCondition(); + + /** + * Returns the meta object for the reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceCondition <em>Referred By Ag Presence Condition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Referred By Ag Presence Condition</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceCondition() + * @see #getDoc() + * @generated + */ + EReference getDoc_ReferredByAgPresenceCondition(); + + /** + * Returns the meta object for the reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAbbreviation <em>Referred By Abbreviation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Referred By Abbreviation</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAbbreviation() + * @see #getDoc() + * @generated + */ + EReference getDoc_ReferredByAbbreviation(); + + /** + * Returns the meta object for the reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByBasicType <em>Referred By Basic Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Referred By Basic Type</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByBasicType() + * @see #getDoc() + * @generated + */ + EReference getDoc_ReferredByBasicType(); + + /** + * Returns the meta object for the reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByDocumentedClass <em>Referred By Documented Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Referred By Documented Class</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByDocumentedClass() + * @see #getDoc() + * @generated + */ + EReference getDoc_ReferredByDocumentedClass(); + + /** + * Returns the meta object for the reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByFunctionalConstraint <em>Referred By Functional Constraint</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Referred By Functional Constraint</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByFunctionalConstraint() + * @see #getDoc() + * @generated + */ + EReference getDoc_ReferredByFunctionalConstraint(); + + /** + * Returns the meta object for the reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceConditionDerivedStatistics <em>Referred By Ag Presence Condition Derived Statistics</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Referred By Ag Presence Condition Derived Statistics</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByAgPresenceConditionDerivedStatistics() + * @see #getDoc() + * @generated + */ + EReference getDoc_ReferredByAgPresenceConditionDerivedStatistics(); + /** * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass <em>Documented Class</em>}'. * <!-- begin-user-doc --> @@ -8095,6 +8556,17 @@ public interface NsdPackage extends EPackage { */ EAttribute getDocumentedClass_Informative(); + /** + * Returns the meta object for the reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Refers To Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass#getRefersToDoc() + * @see #getDocumentedClass() + * @generated + */ + EReference getDocumentedClass_RefersToDoc(); + /** * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration <em>Enumeration</em>}'. * <!-- begin-user-doc --> @@ -8279,6 +8751,17 @@ public interface NsdPackage extends EPackage { */ EReference getFunctionalConstraint_ReferredByDataAttribute(); + /** + * Returns the meta object for the reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Refers To Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint#getRefersToDoc() + * @see #getFunctionalConstraint() + * @generated + */ + EReference getFunctionalConstraint_RefersToDoc(); + /** * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraints <em>Functional Constraints</em>}'. * <!-- begin-user-doc --> @@ -8881,6 +9364,17 @@ public interface NsdPackage extends EPackage { */ EReference getPresenceCondition_ReferredBySubDataAttribute(); + /** + * Returns the meta object for the reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Refers To Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getRefersToDoc() + * @see #getPresenceCondition() + * @generated + */ + EReference getPresenceCondition_RefersToDoc(); + /** * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceConditions <em>Presence Conditions</em>}'. * <!-- begin-user-doc --> @@ -9601,6 +10095,17 @@ public interface NsdPackage extends EPackage { */ EAttribute getAgPresenceCondition_PresCondArgsID(); + /** + * Returns the meta object for the reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Refers To Pres Cond Args Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition#getRefersToPresCondArgsDoc() + * @see #getAgPresenceCondition() + * @generated + */ + EReference getAgPresenceCondition_RefersToPresCondArgsDoc(); + /** * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics <em>Ag Presence Condition Derived Statistics</em>}'. * <!-- begin-user-doc --> @@ -9644,6 +10149,17 @@ public interface NsdPackage extends EPackage { */ EAttribute getAgPresenceConditionDerivedStatistics_DsPresCondArgsID(); + /** + * Returns the meta object for the reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getRefersToDsPresCondArgsDoc <em>Refers To Ds Pres Cond Args Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Refers To Ds Pres Cond Args Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics#getRefersToDsPresCondArgsDoc() + * @see #getAgPresenceConditionDerivedStatistics() + * @generated + */ + EReference getAgPresenceConditionDerivedStatistics_RefersToDsPresCondArgsDoc(); + /** * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgArray <em>Ag Array</em>}'. * <!-- begin-user-doc --> @@ -9901,6 +10417,17 @@ public interface NsdPackage extends EPackage { */ EAttribute getAgNSdesc_DescID(); + /** + * Returns the meta object for the reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc#getRefersToDoc <em>Refers To Doc</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Refers To Doc</em>'. + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc#getRefersToDoc() + * @see #getAgNSdesc() + * @generated + */ + EReference getAgNSdesc_RefersToDoc(); + /** * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole <em>IRise Clipse Console</em>}'. * <!-- begin-user-doc --> @@ -10249,6 +10776,14 @@ public interface NsdPackage extends EPackage { */ EReference ABBREVIATION__PARENT_ABBREVIATIONS = eINSTANCE.getAbbreviation_ParentAbbreviations(); + /** + * The meta object literal for the '<em><b>Refers To Doc</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ABBREVIATION__REFERS_TO_DOC = eINSTANCE.getAbbreviation_RefersToDoc(); + /** * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AbbreviationsImpl <em>Abbreviations</em>}' class. * <!-- begin-user-doc --> @@ -10478,6 +11013,14 @@ public interface NsdPackage extends EPackage { */ EReference BASIC_TYPE__REFERRED_BY_DATA_ATTRIBUTE = eINSTANCE.getBasicType_ReferredByDataAttribute(); + /** + * The meta object literal for the '<em><b>Refers To Doc</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference BASIC_TYPE__REFERS_TO_DOC = eINSTANCE.getBasicType_RefersToDoc(); + /** * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.BasicTypesImpl <em>Basic Types</em>}' class. * <!-- begin-user-doc --> @@ -11082,6 +11625,71 @@ public interface NsdPackage extends EPackage { */ EReference DOC__PARENT_NS_DOC = eINSTANCE.getDoc_ParentNSDoc(); + /** + * The meta object literal for the '<em><b>Referred By Ag NS Desc</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOC__REFERRED_BY_AG_NS_DESC = eINSTANCE.getDoc_ReferredByAgNSDesc(); + + /** + * The meta object literal for the '<em><b>Referred By Presence Condition</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOC__REFERRED_BY_PRESENCE_CONDITION = eINSTANCE.getDoc_ReferredByPresenceCondition(); + + /** + * The meta object literal for the '<em><b>Referred By Ag Presence Condition</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOC__REFERRED_BY_AG_PRESENCE_CONDITION = eINSTANCE.getDoc_ReferredByAgPresenceCondition(); + + /** + * The meta object literal for the '<em><b>Referred By Abbreviation</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOC__REFERRED_BY_ABBREVIATION = eINSTANCE.getDoc_ReferredByAbbreviation(); + + /** + * The meta object literal for the '<em><b>Referred By Basic Type</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOC__REFERRED_BY_BASIC_TYPE = eINSTANCE.getDoc_ReferredByBasicType(); + + /** + * The meta object literal for the '<em><b>Referred By Documented Class</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOC__REFERRED_BY_DOCUMENTED_CLASS = eINSTANCE.getDoc_ReferredByDocumentedClass(); + + /** + * The meta object literal for the '<em><b>Referred By Functional Constraint</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT = eINSTANCE.getDoc_ReferredByFunctionalConstraint(); + + /** + * The meta object literal for the '<em><b>Referred By Ag Presence Condition Derived Statistics</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS = eINSTANCE + .getDoc_ReferredByAgPresenceConditionDerivedStatistics(); + /** * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentedClassImpl <em>Documented Class</em>}' class. * <!-- begin-user-doc --> @@ -11116,6 +11724,14 @@ public interface NsdPackage extends EPackage { */ EAttribute DOCUMENTED_CLASS__INFORMATIVE = eINSTANCE.getDocumentedClass_Informative(); + /** + * The meta object literal for the '<em><b>Refers To Doc</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DOCUMENTED_CLASS__REFERS_TO_DOC = eINSTANCE.getDocumentedClass_RefersToDoc(); + /** * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.EnumerationImpl <em>Enumeration</em>}' class. * <!-- begin-user-doc --> @@ -11261,6 +11877,14 @@ public interface NsdPackage extends EPackage { EReference FUNCTIONAL_CONSTRAINT__REFERRED_BY_DATA_ATTRIBUTE = eINSTANCE .getFunctionalConstraint_ReferredByDataAttribute(); + /** + * The meta object literal for the '<em><b>Refers To Doc</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC = eINSTANCE.getFunctionalConstraint_RefersToDoc(); + /** * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.FunctionalConstraintsImpl <em>Functional Constraints</em>}' class. * <!-- begin-user-doc --> @@ -11737,6 +12361,14 @@ public interface NsdPackage extends EPackage { EReference PRESENCE_CONDITION__REFERRED_BY_SUB_DATA_ATTRIBUTE = eINSTANCE .getPresenceCondition_ReferredBySubDataAttribute(); + /** + * The meta object literal for the '<em><b>Refers To Doc</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference PRESENCE_CONDITION__REFERS_TO_DOC = eINSTANCE.getPresenceCondition_RefersToDoc(); + /** * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.PresenceConditionsImpl <em>Presence Conditions</em>}' class. * <!-- begin-user-doc --> @@ -12317,6 +12949,15 @@ public interface NsdPackage extends EPackage { */ EAttribute AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID = eINSTANCE.getAgPresenceCondition_PresCondArgsID(); + /** + * The meta object literal for the '<em><b>Refers To Pres Cond Args Doc</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC = eINSTANCE + .getAgPresenceCondition_RefersToPresCondArgsDoc(); + /** * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgPresenceConditionDerivedStatisticsImpl <em>Ag Presence Condition Derived Statistics</em>}' class. * <!-- begin-user-doc --> @@ -12354,6 +12995,15 @@ public interface NsdPackage extends EPackage { EAttribute AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS_ID = eINSTANCE .getAgPresenceConditionDerivedStatistics_DsPresCondArgsID(); + /** + * The meta object literal for the '<em><b>Refers To Ds Pres Cond Args Doc</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC = eINSTANCE + .getAgPresenceConditionDerivedStatistics_RefersToDsPresCondArgsDoc(); + /** * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgArrayImpl <em>Ag Array</em>}' class. * <!-- begin-user-doc --> @@ -12560,6 +13210,14 @@ public interface NsdPackage extends EPackage { */ EAttribute AG_NSDESC__DESC_ID = eINSTANCE.getAgNSdesc_DescID(); + /** + * The meta object literal for the '<em><b>Refers To Doc</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference AG_NSDESC__REFERS_TO_DOC = eINSTANCE.getAgNSdesc_RefersToDoc(); + /** * The meta object literal for the '{@link fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole <em>IRise Clipse Console</em>}' class. * <!-- begin-user-doc --> diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/PresenceCondition.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/PresenceCondition.java index 3d51b838bc92f664e4655200d79b018685551f22..8f406e7972ecce04c40443c13f306e7c292ff8a3 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/PresenceCondition.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/PresenceCondition.java @@ -40,6 +40,7 @@ import org.eclipse.emf.common.util.EList; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getReferredBySubDataObject <em>Referred By Sub Data Object</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getReferredByDataAttribute <em>Referred By Data Attribute</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getReferredBySubDataAttribute <em>Referred By Sub Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getPresenceCondition() @@ -478,4 +479,55 @@ public interface PresenceCondition extends NsdObject { */ boolean isSetReferredBySubDataAttribute(); + /** + * Returns the value of the '<em><b>Refers To Doc</b></em>' reference. + * It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByPresenceCondition <em>Referred By Presence Condition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #setRefersToDoc(Doc) + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getPresenceCondition_RefersToDoc() + * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc#getReferredByPresenceCondition + * @model opposite="referredByPresenceCondition" resolveProxies="false" unsettable="true" transient="true" ordered="false" + * @generated + */ + Doc getRefersToDoc(); + + /** + * Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Refers To Doc</em>' reference. + * @see #isSetRefersToDoc() + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @generated + */ + void setRefersToDoc( Doc value ); + + /** + * Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getRefersToDoc <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + void unsetRefersToDoc(); + + /** + * Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition#getRefersToDoc <em>Refers To Doc</em>}' reference is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Refers To Doc</em>' reference is set. + * @see #unsetRefersToDoc() + * @see #getRefersToDoc() + * @see #setRefersToDoc(Doc) + * @generated + */ + boolean isSetRefersToDoc(); + } // PresenceCondition diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AbbreviationImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AbbreviationImpl.java index bd09b9f8e355ab7cd3f49461cabf2925585f6de8..2c636c76a5cb00664d81afee7616516644ec26f0 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AbbreviationImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AbbreviationImpl.java @@ -21,7 +21,10 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviations; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; +import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import org.eclipse.emf.common.notify.Notification; @@ -43,6 +46,7 @@ import org.eclipse.emf.ecore.util.EcoreUtil; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AbbreviationImpl#getDescID <em>Desc ID</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AbbreviationImpl#getName <em>Name</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AbbreviationImpl#getParentAbbreviations <em>Parent Abbreviations</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AbbreviationImpl#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @generated @@ -106,6 +110,25 @@ public class AbbreviationImpl extends NsdObjectImpl implements Abbreviation { */ protected boolean nameESet; + /** + * The cached value of the '{@link #getRefersToDoc() <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToDoc() + * @generated + * @ordered + */ + protected Doc refersToDoc; + + /** + * This is true if the Refers To Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToDocESet; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -278,6 +301,118 @@ public class AbbreviationImpl extends NsdObjectImpl implements Abbreviation { newParentAbbreviations, newParentAbbreviations ) ); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToDoc() { + return refersToDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToDoc( Doc newRefersToDoc, NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = newRefersToDoc; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.ABBREVIATION__REFERS_TO_DOC, oldRefersToDoc, newRefersToDoc, !oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToDoc( Doc newRefersToDoc ) { + if( newRefersToDoc != refersToDoc ) { + NotificationChain msgs = null; + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_ABBREVIATION, Doc.class, msgs ); + if( newRefersToDoc != null ) + msgs = ( ( InternalEObject ) newRefersToDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_ABBREVIATION, Doc.class, msgs ); + msgs = basicSetRefersToDoc( newRefersToDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.ABBREVIATION__REFERS_TO_DOC, + newRefersToDoc, newRefersToDoc, !oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToDoc( NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = null; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.ABBREVIATION__REFERS_TO_DOC, oldRefersToDoc, null, oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToDoc() { + if( refersToDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_ABBREVIATION, + Doc.class, msgs ); + msgs = basicUnsetRefersToDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.ABBREVIATION__REFERS_TO_DOC, null, + null, oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToDoc() { + return refersToDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -290,6 +425,11 @@ public class AbbreviationImpl extends NsdObjectImpl implements Abbreviation { if( eInternalContainer() != null ) msgs = eBasicRemoveFromContainer( msgs ); return basicSetParentAbbreviations( ( Abbreviations ) otherEnd, msgs ); + case NsdPackage.ABBREVIATION__REFERS_TO_DOC: + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_ABBREVIATION, Doc.class, msgs ); + return basicSetRefersToDoc( ( Doc ) otherEnd, msgs ); } return super.eInverseAdd( otherEnd, featureID, msgs ); } @@ -304,6 +444,8 @@ public class AbbreviationImpl extends NsdObjectImpl implements Abbreviation { switch( featureID ) { case NsdPackage.ABBREVIATION__PARENT_ABBREVIATIONS: return basicSetParentAbbreviations( null, msgs ); + case NsdPackage.ABBREVIATION__REFERS_TO_DOC: + return basicUnsetRefersToDoc( msgs ); } return super.eInverseRemove( otherEnd, featureID, msgs ); } @@ -337,6 +479,8 @@ public class AbbreviationImpl extends NsdObjectImpl implements Abbreviation { return getName(); case NsdPackage.ABBREVIATION__PARENT_ABBREVIATIONS: return getParentAbbreviations(); + case NsdPackage.ABBREVIATION__REFERS_TO_DOC: + return getRefersToDoc(); } return super.eGet( featureID, resolve, coreType ); } @@ -358,6 +502,9 @@ public class AbbreviationImpl extends NsdObjectImpl implements Abbreviation { case NsdPackage.ABBREVIATION__PARENT_ABBREVIATIONS: setParentAbbreviations( ( Abbreviations ) newValue ); return; + case NsdPackage.ABBREVIATION__REFERS_TO_DOC: + setRefersToDoc( ( Doc ) newValue ); + return; } super.eSet( featureID, newValue ); } @@ -379,6 +526,9 @@ public class AbbreviationImpl extends NsdObjectImpl implements Abbreviation { case NsdPackage.ABBREVIATION__PARENT_ABBREVIATIONS: setParentAbbreviations( ( Abbreviations ) null ); return; + case NsdPackage.ABBREVIATION__REFERS_TO_DOC: + unsetRefersToDoc(); + return; } super.eUnset( featureID ); } @@ -397,6 +547,8 @@ public class AbbreviationImpl extends NsdObjectImpl implements Abbreviation { return isSetName(); case NsdPackage.ABBREVIATION__PARENT_ABBREVIATIONS: return getParentAbbreviations() != null; + case NsdPackage.ABBREVIATION__REFERS_TO_DOC: + return isSetRefersToDoc(); } return super.eIsSet( featureID ); } @@ -425,4 +577,18 @@ public class AbbreviationImpl extends NsdObjectImpl implements Abbreviation { return result.toString(); } + @Override + public boolean buildExplicitLinks( IRiseClipseConsole console, boolean forceUpdate ) { + if( super.buildExplicitLinks( console, forceUpdate ) ) return true; + + if( isSetDescID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getDescID() ); + if( doc != null ) setRefersToDoc( doc ); + } + } + + return false; + } + } //AbbreviationImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgNSdescImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgNSdescImpl.java index 4be12683c63d1cbe66d79269318defc42e795280..ff28a49ab9c2440184be9a2f0ebabe3bc2588aa3 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgNSdescImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgNSdescImpl.java @@ -20,12 +20,15 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; 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; @@ -38,6 +41,7 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; * </p> * <ul> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgNSdescImpl#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgNSdescImpl#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @generated @@ -72,6 +76,25 @@ public abstract class AgNSdescImpl extends MinimalEObjectImpl.Container implemen */ protected boolean descIDESet; + /** + * The cached value of the '{@link #getRefersToDoc() <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToDoc() + * @generated + * @ordered + */ + protected Doc refersToDoc; + + /** + * This is true if the Refers To Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToDocESet; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -143,6 +166,149 @@ public abstract class AgNSdescImpl extends MinimalEObjectImpl.Container implemen return descIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToDoc() { + return refersToDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToDoc( Doc newRefersToDoc, NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = newRefersToDoc; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.AG_NSDESC__REFERS_TO_DOC, oldRefersToDoc, newRefersToDoc, !oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToDoc( Doc newRefersToDoc ) { + if( newRefersToDoc != refersToDoc ) { + NotificationChain msgs = null; + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + if( newRefersToDoc != null ) + msgs = ( ( InternalEObject ) newRefersToDoc ).eInverseAdd( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + msgs = basicSetRefersToDoc( newRefersToDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.AG_NSDESC__REFERS_TO_DOC, + newRefersToDoc, newRefersToDoc, !oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToDoc( NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = null; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.AG_NSDESC__REFERS_TO_DOC, oldRefersToDoc, null, oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToDoc() { + if( refersToDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + msgs = basicUnsetRefersToDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.AG_NSDESC__REFERS_TO_DOC, null, + null, oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToDoc() { + return refersToDocESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.AG_NSDESC__REFERS_TO_DOC: + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + return basicSetRefersToDoc( ( Doc ) otherEnd, msgs ); + } + return super.eInverseAdd( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.AG_NSDESC__REFERS_TO_DOC: + return basicUnsetRefersToDoc( msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -153,6 +319,8 @@ public abstract class AgNSdescImpl extends MinimalEObjectImpl.Container implemen switch( featureID ) { case NsdPackage.AG_NSDESC__DESC_ID: return getDescID(); + case NsdPackage.AG_NSDESC__REFERS_TO_DOC: + return getRefersToDoc(); } return super.eGet( featureID, resolve, coreType ); } @@ -168,6 +336,9 @@ public abstract class AgNSdescImpl extends MinimalEObjectImpl.Container implemen case NsdPackage.AG_NSDESC__DESC_ID: setDescID( ( String ) newValue ); return; + case NsdPackage.AG_NSDESC__REFERS_TO_DOC: + setRefersToDoc( ( Doc ) newValue ); + return; } super.eSet( featureID, newValue ); } @@ -183,6 +354,9 @@ public abstract class AgNSdescImpl extends MinimalEObjectImpl.Container implemen case NsdPackage.AG_NSDESC__DESC_ID: unsetDescID(); return; + case NsdPackage.AG_NSDESC__REFERS_TO_DOC: + unsetRefersToDoc(); + return; } super.eUnset( featureID ); } @@ -197,6 +371,8 @@ public abstract class AgNSdescImpl extends MinimalEObjectImpl.Container implemen switch( featureID ) { case NsdPackage.AG_NSDESC__DESC_ID: return isSetDescID(); + case NsdPackage.AG_NSDESC__REFERS_TO_DOC: + return isSetRefersToDoc(); } return super.eIsSet( featureID ); } diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgPresenceConditionDerivedStatisticsImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgPresenceConditionDerivedStatisticsImpl.java index 310c9dbc005c1ad1ec08a49292e43d21e256acc9..7718df5093dec425cc676198f4ede7d28f3e19a9 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgPresenceConditionDerivedStatisticsImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgPresenceConditionDerivedStatisticsImpl.java @@ -20,12 +20,15 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; 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; @@ -40,6 +43,7 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgPresenceConditionDerivedStatisticsImpl#getDsPresCond <em>Ds Pres Cond</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgPresenceConditionDerivedStatisticsImpl#getDsPresCondArgs <em>Ds Pres Cond Args</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgPresenceConditionDerivedStatisticsImpl#getDsPresCondArgsID <em>Ds Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgPresenceConditionDerivedStatisticsImpl#getRefersToDsPresCondArgsDoc <em>Refers To Ds Pres Cond Args Doc</em>}</li> * </ul> * * @generated @@ -133,6 +137,25 @@ public abstract class AgPresenceConditionDerivedStatisticsImpl extends MinimalEO */ protected boolean dsPresCondArgsIDESet; + /** + * The cached value of the '{@link #getRefersToDsPresCondArgsDoc() <em>Refers To Ds Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToDsPresCondArgsDoc() + * @generated + * @ordered + */ + protected Doc refersToDsPresCondArgsDoc; + + /** + * This is true if the Refers To Ds Pres Cond Args Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToDsPresCondArgsDocESet; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -314,6 +337,155 @@ public abstract class AgPresenceConditionDerivedStatisticsImpl extends MinimalEO return dsPresCondArgsIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToDsPresCondArgsDoc() { + return refersToDsPresCondArgsDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToDsPresCondArgsDoc( Doc newRefersToDsPresCondArgsDoc, + NotificationChain msgs ) { + Doc oldRefersToDsPresCondArgsDoc = refersToDsPresCondArgsDoc; + refersToDsPresCondArgsDoc = newRefersToDsPresCondArgsDoc; + boolean oldRefersToDsPresCondArgsDocESet = refersToDsPresCondArgsDocESet; + refersToDsPresCondArgsDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC, + oldRefersToDsPresCondArgsDoc, newRefersToDsPresCondArgsDoc, !oldRefersToDsPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToDsPresCondArgsDoc( Doc newRefersToDsPresCondArgsDoc ) { + if( newRefersToDsPresCondArgsDoc != refersToDsPresCondArgsDoc ) { + NotificationChain msgs = null; + if( refersToDsPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToDsPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS, Doc.class, msgs ); + if( newRefersToDsPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) newRefersToDsPresCondArgsDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS, Doc.class, msgs ); + msgs = basicSetRefersToDsPresCondArgsDoc( newRefersToDsPresCondArgsDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDsPresCondArgsDocESet = refersToDsPresCondArgsDocESet; + refersToDsPresCondArgsDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC, + newRefersToDsPresCondArgsDoc, newRefersToDsPresCondArgsDoc, + !oldRefersToDsPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToDsPresCondArgsDoc( NotificationChain msgs ) { + Doc oldRefersToDsPresCondArgsDoc = refersToDsPresCondArgsDoc; + refersToDsPresCondArgsDoc = null; + boolean oldRefersToDsPresCondArgsDocESet = refersToDsPresCondArgsDocESet; + refersToDsPresCondArgsDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC, + oldRefersToDsPresCondArgsDoc, null, oldRefersToDsPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToDsPresCondArgsDoc() { + if( refersToDsPresCondArgsDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToDsPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS, Doc.class, msgs ); + msgs = basicUnsetRefersToDsPresCondArgsDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDsPresCondArgsDocESet = refersToDsPresCondArgsDocESet; + refersToDsPresCondArgsDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC, null, + null, oldRefersToDsPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToDsPresCondArgsDoc() { + return refersToDsPresCondArgsDocESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC: + if( refersToDsPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToDsPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS, Doc.class, msgs ); + return basicSetRefersToDsPresCondArgsDoc( ( Doc ) otherEnd, msgs ); + } + return super.eInverseAdd( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC: + return basicUnsetRefersToDsPresCondArgsDoc( msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -328,6 +500,8 @@ public abstract class AgPresenceConditionDerivedStatisticsImpl extends MinimalEO return getDsPresCondArgs(); case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS_ID: return getDsPresCondArgsID(); + case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC: + return getRefersToDsPresCondArgsDoc(); } return super.eGet( featureID, resolve, coreType ); } @@ -349,6 +523,9 @@ public abstract class AgPresenceConditionDerivedStatisticsImpl extends MinimalEO case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS_ID: setDsPresCondArgsID( ( String ) newValue ); return; + case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC: + setRefersToDsPresCondArgsDoc( ( Doc ) newValue ); + return; } super.eSet( featureID, newValue ); } @@ -370,6 +547,9 @@ public abstract class AgPresenceConditionDerivedStatisticsImpl extends MinimalEO case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS_ID: unsetDsPresCondArgsID(); return; + case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC: + unsetRefersToDsPresCondArgsDoc(); + return; } super.eUnset( featureID ); } @@ -388,6 +568,8 @@ public abstract class AgPresenceConditionDerivedStatisticsImpl extends MinimalEO return isSetDsPresCondArgs(); case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS_ID: return isSetDsPresCondArgsID(); + case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC: + return isSetRefersToDsPresCondArgsDoc(); } return super.eIsSet( featureID ); } diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgPresenceConditionImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgPresenceConditionImpl.java index 09d6747f5e670e473b63558381b49597af4b4009..5d9f195a25c1c2e700115d234fd7603402f1a328 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgPresenceConditionImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/AgPresenceConditionImpl.java @@ -20,12 +20,15 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; 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; @@ -40,6 +43,7 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgPresenceConditionImpl#getPresCond <em>Pres Cond</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgPresenceConditionImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgPresenceConditionImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.AgPresenceConditionImpl#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}</li> * </ul> * * @generated @@ -132,6 +136,25 @@ public abstract class AgPresenceConditionImpl extends MinimalEObjectImpl.Contain */ protected boolean presCondArgsIDESet; + /** + * The cached value of the '{@link #getRefersToPresCondArgsDoc() <em>Refers To Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToPresCondArgsDoc() + * @generated + * @ordered + */ + protected Doc refersToPresCondArgsDoc; + + /** + * This is true if the Refers To Pres Cond Args Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToPresCondArgsDocESet; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -308,6 +331,153 @@ public abstract class AgPresenceConditionImpl extends MinimalEObjectImpl.Contain return presCondArgsIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToPresCondArgsDoc() { + return refersToPresCondArgsDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc, NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = newRefersToPresCondArgsDoc; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc ) { + if( newRefersToPresCondArgsDoc != refersToPresCondArgsDoc ) { + NotificationChain msgs = null; + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + if( newRefersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) newRefersToPresCondArgsDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicSetRefersToPresCondArgsDoc( newRefersToPresCondArgsDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC, newRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToPresCondArgsDoc( NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = null; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, null, + oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToPresCondArgsDoc() { + if( refersToPresCondArgsDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicUnsetRefersToPresCondArgsDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC, null, null, + oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToPresCondArgsDoc() { + return refersToPresCondArgsDocESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + return basicSetRefersToPresCondArgsDoc( ( Doc ) otherEnd, msgs ); + } + return super.eInverseAdd( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + return basicUnsetRefersToPresCondArgsDoc( msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -322,6 +492,8 @@ public abstract class AgPresenceConditionImpl extends MinimalEObjectImpl.Contain return getPresCondArgs(); case NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID: return getPresCondArgsID(); + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + return getRefersToPresCondArgsDoc(); } return super.eGet( featureID, resolve, coreType ); } @@ -343,6 +515,9 @@ public abstract class AgPresenceConditionImpl extends MinimalEObjectImpl.Contain case NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID: setPresCondArgsID( ( String ) newValue ); return; + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + setRefersToPresCondArgsDoc( ( Doc ) newValue ); + return; } super.eSet( featureID, newValue ); } @@ -364,6 +539,9 @@ public abstract class AgPresenceConditionImpl extends MinimalEObjectImpl.Contain case NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID: unsetPresCondArgsID(); return; + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + unsetRefersToPresCondArgsDoc(); + return; } super.eUnset( featureID ); } @@ -382,6 +560,8 @@ public abstract class AgPresenceConditionImpl extends MinimalEObjectImpl.Contain return isSetPresCondArgs(); case NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID: return isSetPresCondArgsID(); + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + return isSetRefersToPresCondArgsDoc(); } return super.eIsSet( featureID ); } diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/BasicTypeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/BasicTypeImpl.java index a8df985ddb82ea423cc485d278c07b96d03459f9..562c4919c77562f4d4c51297a5444ddd459ff5b6 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/BasicTypeImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/BasicTypeImpl.java @@ -22,7 +22,10 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicTypes; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; +import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import java.util.Collection; import org.eclipse.emf.common.notify.Notification; @@ -49,6 +52,7 @@ import org.eclipse.emf.ecore.util.InternalEList; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.BasicTypeImpl#getName <em>Name</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.BasicTypeImpl#getParentBasicTypes <em>Parent Basic Types</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.BasicTypeImpl#getReferredByDataAttribute <em>Referred By Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.BasicTypeImpl#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @generated @@ -122,6 +126,25 @@ public class BasicTypeImpl extends NsdObjectImpl implements BasicType { */ protected EList< DataAttribute > referredByDataAttribute; + /** + * The cached value of the '{@link #getRefersToDoc() <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToDoc() + * @generated + * @ordered + */ + protected Doc refersToDoc; + + /** + * This is true if the Refers To Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToDocESet; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -328,6 +351,118 @@ public class BasicTypeImpl extends NsdObjectImpl implements BasicType { return referredByDataAttribute != null && ( ( InternalEList.Unsettable< ? > ) referredByDataAttribute ).isSet(); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToDoc() { + return refersToDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToDoc( Doc newRefersToDoc, NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = newRefersToDoc; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.BASIC_TYPE__REFERS_TO_DOC, oldRefersToDoc, newRefersToDoc, !oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToDoc( Doc newRefersToDoc ) { + if( newRefersToDoc != refersToDoc ) { + NotificationChain msgs = null; + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_BASIC_TYPE, + Doc.class, msgs ); + if( newRefersToDoc != null ) + msgs = ( ( InternalEObject ) newRefersToDoc ).eInverseAdd( this, NsdPackage.DOC__REFERRED_BY_BASIC_TYPE, + Doc.class, msgs ); + msgs = basicSetRefersToDoc( newRefersToDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.BASIC_TYPE__REFERS_TO_DOC, + newRefersToDoc, newRefersToDoc, !oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToDoc( NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = null; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.BASIC_TYPE__REFERS_TO_DOC, oldRefersToDoc, null, oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToDoc() { + if( refersToDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_BASIC_TYPE, + Doc.class, msgs ); + msgs = basicUnsetRefersToDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.BASIC_TYPE__REFERS_TO_DOC, null, + null, oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToDoc() { + return refersToDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -344,6 +479,11 @@ public class BasicTypeImpl extends NsdObjectImpl implements BasicType { case NsdPackage.BASIC_TYPE__REFERRED_BY_DATA_ATTRIBUTE: return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredByDataAttribute() ) .basicAdd( otherEnd, msgs ); + case NsdPackage.BASIC_TYPE__REFERS_TO_DOC: + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_BASIC_TYPE, + Doc.class, msgs ); + return basicSetRefersToDoc( ( Doc ) otherEnd, msgs ); } return super.eInverseAdd( otherEnd, featureID, msgs ); } @@ -360,6 +500,8 @@ public class BasicTypeImpl extends NsdObjectImpl implements BasicType { return basicSetParentBasicTypes( null, msgs ); case NsdPackage.BASIC_TYPE__REFERRED_BY_DATA_ATTRIBUTE: return ( ( InternalEList< ? > ) getReferredByDataAttribute() ).basicRemove( otherEnd, msgs ); + case NsdPackage.BASIC_TYPE__REFERS_TO_DOC: + return basicUnsetRefersToDoc( msgs ); } return super.eInverseRemove( otherEnd, featureID, msgs ); } @@ -395,6 +537,8 @@ public class BasicTypeImpl extends NsdObjectImpl implements BasicType { return getParentBasicTypes(); case NsdPackage.BASIC_TYPE__REFERRED_BY_DATA_ATTRIBUTE: return getReferredByDataAttribute(); + case NsdPackage.BASIC_TYPE__REFERS_TO_DOC: + return getRefersToDoc(); } return super.eGet( featureID, resolve, coreType ); } @@ -421,6 +565,9 @@ public class BasicTypeImpl extends NsdObjectImpl implements BasicType { getReferredByDataAttribute().clear(); getReferredByDataAttribute().addAll( ( Collection< ? extends DataAttribute > ) newValue ); return; + case NsdPackage.BASIC_TYPE__REFERS_TO_DOC: + setRefersToDoc( ( Doc ) newValue ); + return; } super.eSet( featureID, newValue ); } @@ -445,6 +592,9 @@ public class BasicTypeImpl extends NsdObjectImpl implements BasicType { case NsdPackage.BASIC_TYPE__REFERRED_BY_DATA_ATTRIBUTE: unsetReferredByDataAttribute(); return; + case NsdPackage.BASIC_TYPE__REFERS_TO_DOC: + unsetRefersToDoc(); + return; } super.eUnset( featureID ); } @@ -465,6 +615,8 @@ public class BasicTypeImpl extends NsdObjectImpl implements BasicType { return getParentBasicTypes() != null; case NsdPackage.BASIC_TYPE__REFERRED_BY_DATA_ATTRIBUTE: return isSetReferredByDataAttribute(); + case NsdPackage.BASIC_TYPE__REFERS_TO_DOC: + return isSetRefersToDoc(); } return super.eIsSet( featureID ); } @@ -493,4 +645,18 @@ public class BasicTypeImpl extends NsdObjectImpl implements BasicType { return result.toString(); } + @Override + public boolean buildExplicitLinks( IRiseClipseConsole console, boolean forceUpdate ) { + if( super.buildExplicitLinks( console, forceUpdate ) ) return true; + + if( isSetDescID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getDescID() ); + if( doc != null ) setRefersToDoc( doc ); + } + } + + return false; + } + } //BasicTypeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DataAttributeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DataAttributeImpl.java index 11b0f13fcffe0c0847917539c519e4fe5d23ca1c..ec07a6ece45f9598d3a4383736ad3d3d6d058ea8 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DataAttributeImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DataAttributeImpl.java @@ -28,6 +28,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.CDC; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DefinedAttributeTypeKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NS; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; @@ -35,6 +36,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.SubDataObject; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import java.math.BigDecimal; @@ -65,6 +67,7 @@ import org.eclipse.emf.ecore.util.InternalEList; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataAttributeImpl#getPresCond <em>Pres Cond</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataAttributeImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataAttributeImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataAttributeImpl#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataAttributeImpl#isIsArray <em>Is Array</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataAttributeImpl#getMaxIndexAttribute <em>Max Index Attribute</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataAttributeImpl#getMinIndex <em>Min Index</em>}</li> @@ -181,6 +184,25 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib */ protected boolean presCondArgsIDESet; + /** + * The cached value of the '{@link #getRefersToPresCondArgsDoc() <em>Refers To Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToPresCondArgsDoc() + * @generated + * @ordered + */ + protected Doc refersToPresCondArgsDoc; + + /** + * This is true if the Refers To Pres Cond Args Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToPresCondArgsDocESet; + /** * The default value of the '{@link #isIsArray() <em>Is Array</em>}' attribute. * <!-- begin-user-doc --> @@ -1464,6 +1486,122 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib return presCondArgsIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToPresCondArgsDoc() { + return refersToPresCondArgsDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc, NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = newRefersToPresCondArgsDoc; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc ) { + if( newRefersToPresCondArgsDoc != refersToPresCondArgsDoc ) { + NotificationChain msgs = null; + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + if( newRefersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) newRefersToPresCondArgsDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicSetRefersToPresCondArgsDoc( newRefersToPresCondArgsDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, newRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToPresCondArgsDoc( NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = null; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, null, + oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToPresCondArgsDoc() { + if( refersToPresCondArgsDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicUnsetRefersToPresCondArgsDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, null, null, + oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToPresCondArgsDoc() { + return refersToPresCondArgsDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -2421,6 +2559,11 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib @Override public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + return basicSetRefersToPresCondArgsDoc( ( Doc ) otherEnd, msgs ); case NsdPackage.DATA_ATTRIBUTE__PARENT_CDC: if( eInternalContainer() != null ) msgs = eBasicRemoveFromContainer( msgs ); @@ -2477,6 +2620,8 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib @Override public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return basicUnsetRefersToPresCondArgsDoc( msgs ); case NsdPackage.DATA_ATTRIBUTE__PARENT_CDC: return basicSetParentCDC( null, msgs ); case NsdPackage.DATA_ATTRIBUTE__REFERRED_BY_SUB_DATA_OBJECT_AS_SIZE_ATTRIBUTE: @@ -2531,6 +2676,8 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib return getPresCondArgs(); case NsdPackage.DATA_ATTRIBUTE__PRES_COND_ARGS_ID: return getPresCondArgsID(); + case NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return getRefersToPresCondArgsDoc(); case NsdPackage.DATA_ATTRIBUTE__IS_ARRAY: return isIsArray(); case NsdPackage.DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: @@ -2601,6 +2748,9 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib case NsdPackage.DATA_ATTRIBUTE__PRES_COND_ARGS_ID: setPresCondArgsID( ( String ) newValue ); return; + case NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + setRefersToPresCondArgsDoc( ( Doc ) newValue ); + return; case NsdPackage.DATA_ATTRIBUTE__IS_ARRAY: setIsArray( ( Boolean ) newValue ); return; @@ -2700,6 +2850,9 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib case NsdPackage.DATA_ATTRIBUTE__PRES_COND_ARGS_ID: unsetPresCondArgsID(); return; + case NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + unsetRefersToPresCondArgsDoc(); + return; case NsdPackage.DATA_ATTRIBUTE__IS_ARRAY: unsetIsArray(); return; @@ -2790,6 +2943,8 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib return isSetPresCondArgs(); case NsdPackage.DATA_ATTRIBUTE__PRES_COND_ARGS_ID: return isSetPresCondArgsID(); + case NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return isSetRefersToPresCondArgsDoc(); case NsdPackage.DATA_ATTRIBUTE__IS_ARRAY: return isSetIsArray(); case NsdPackage.DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: @@ -2857,6 +3012,8 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib return NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS; case NsdPackage.DATA_ATTRIBUTE__PRES_COND_ARGS_ID: return NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID; + case NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC; default: return -1; } @@ -2927,6 +3084,8 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib return NsdPackage.DATA_ATTRIBUTE__PRES_COND_ARGS; case NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID: return NsdPackage.DATA_ATTRIBUTE__PRES_COND_ARGS_ID; + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + return NsdPackage.DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC; default: return -1; } @@ -3178,6 +3337,13 @@ public class DataAttributeImpl extends DocumentedClassImpl implements DataAttrib + getRefersToBasicType().getParentBasicTypes().getParentNS().getId() + ")" ); } } + + if( isSetPresCondArgsID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getPresCondArgsID() ); + if( doc != null ) setRefersToPresCondArgsDoc( doc ); + } + } return false; } diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DataObjectImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DataObjectImpl.java index 30c0d5daf1f8bec2adef14b5e7cfd79beaf07ab7..35febc98794249e5bb6dead6d7128b1e1374842c 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DataObjectImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DataObjectImpl.java @@ -26,10 +26,12 @@ import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AnyLNClass; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.CDC; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataObject; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DefinedAttributeTypeKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NS; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import org.eclipse.emf.common.notify.Notification; @@ -52,9 +54,11 @@ import org.eclipse.emf.ecore.util.EcoreUtil; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getPresCond <em>Pres Cond</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getDsPresCond <em>Ds Pres Cond</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getDsPresCondArgs <em>Ds Pres Cond Args</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getDsPresCondArgsID <em>Ds Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getRefersToDsPresCondArgsDoc <em>Refers To Ds Pres Cond Args Doc</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getUnderlyingType <em>Underlying Type</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getUnderlyingTypeKind <em>Underlying Type Kind</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DataObjectImpl#getName <em>Name</em>}</li> @@ -156,6 +160,25 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { */ protected boolean presCondArgsIDESet; + /** + * The cached value of the '{@link #getRefersToPresCondArgsDoc() <em>Refers To Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToPresCondArgsDoc() + * @generated + * @ordered + */ + protected Doc refersToPresCondArgsDoc; + + /** + * This is true if the Refers To Pres Cond Args Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToPresCondArgsDocESet; + /** * The default value of the '{@link #getDsPresCond() <em>Ds Pres Cond</em>}' attribute. * <!-- begin-user-doc --> @@ -243,6 +266,25 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { */ protected boolean dsPresCondArgsIDESet; + /** + * The cached value of the '{@link #getRefersToDsPresCondArgsDoc() <em>Refers To Ds Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToDsPresCondArgsDoc() + * @generated + * @ordered + */ + protected Doc refersToDsPresCondArgsDoc; + + /** + * This is true if the Refers To Ds Pres Cond Args Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToDsPresCondArgsDocESet; + /** * The default value of the '{@link #getUnderlyingType() <em>Underlying Type</em>}' attribute. * <!-- begin-user-doc --> @@ -620,6 +662,123 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { return dsPresCondArgsIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToDsPresCondArgsDoc() { + return refersToDsPresCondArgsDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToDsPresCondArgsDoc( Doc newRefersToDsPresCondArgsDoc, + NotificationChain msgs ) { + Doc oldRefersToDsPresCondArgsDoc = refersToDsPresCondArgsDoc; + refersToDsPresCondArgsDoc = newRefersToDsPresCondArgsDoc; + boolean oldRefersToDsPresCondArgsDocESet = refersToDsPresCondArgsDocESet; + refersToDsPresCondArgsDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC, oldRefersToDsPresCondArgsDoc, + newRefersToDsPresCondArgsDoc, !oldRefersToDsPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToDsPresCondArgsDoc( Doc newRefersToDsPresCondArgsDoc ) { + if( newRefersToDsPresCondArgsDoc != refersToDsPresCondArgsDoc ) { + NotificationChain msgs = null; + if( refersToDsPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToDsPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS, Doc.class, msgs ); + if( newRefersToDsPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) newRefersToDsPresCondArgsDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS, Doc.class, msgs ); + msgs = basicSetRefersToDsPresCondArgsDoc( newRefersToDsPresCondArgsDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDsPresCondArgsDocESet = refersToDsPresCondArgsDocESet; + refersToDsPresCondArgsDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC, newRefersToDsPresCondArgsDoc, + newRefersToDsPresCondArgsDoc, !oldRefersToDsPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToDsPresCondArgsDoc( NotificationChain msgs ) { + Doc oldRefersToDsPresCondArgsDoc = refersToDsPresCondArgsDoc; + refersToDsPresCondArgsDoc = null; + boolean oldRefersToDsPresCondArgsDocESet = refersToDsPresCondArgsDocESet; + refersToDsPresCondArgsDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC, oldRefersToDsPresCondArgsDoc, null, + oldRefersToDsPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToDsPresCondArgsDoc() { + if( refersToDsPresCondArgsDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToDsPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS, Doc.class, msgs ); + msgs = basicUnsetRefersToDsPresCondArgsDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDsPresCondArgsDocESet = refersToDsPresCondArgsDocESet; + refersToDsPresCondArgsDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC, null, null, + oldRefersToDsPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToDsPresCondArgsDoc() { + return refersToDsPresCondArgsDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -828,6 +987,122 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { return presCondArgsIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToPresCondArgsDoc() { + return refersToPresCondArgsDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc, NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = newRefersToPresCondArgsDoc; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc ) { + if( newRefersToPresCondArgsDoc != refersToPresCondArgsDoc ) { + NotificationChain msgs = null; + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + if( newRefersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) newRefersToPresCondArgsDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicSetRefersToPresCondArgsDoc( newRefersToPresCondArgsDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC, newRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToPresCondArgsDoc( NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = null; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, null, + oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToPresCondArgsDoc() { + if( refersToPresCondArgsDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicUnsetRefersToPresCondArgsDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC, null, null, + oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToPresCondArgsDoc() { + return refersToPresCondArgsDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1446,6 +1721,16 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { @Override public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + return basicSetRefersToPresCondArgsDoc( ( Doc ) otherEnd, msgs ); + case NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC: + if( refersToDsPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToDsPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS, Doc.class, msgs ); + return basicSetRefersToDsPresCondArgsDoc( ( Doc ) otherEnd, msgs ); case NsdPackage.DATA_OBJECT__PARENT_ANY_LN_CLASS: if( eInternalContainer() != null ) msgs = eBasicRemoveFromContainer( msgs ); @@ -1478,6 +1763,10 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { @Override public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + return basicUnsetRefersToPresCondArgsDoc( msgs ); + case NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC: + return basicUnsetRefersToDsPresCondArgsDoc( msgs ); case NsdPackage.DATA_OBJECT__PARENT_ANY_LN_CLASS: return basicSetParentAnyLNClass( null, msgs ); case NsdPackage.DATA_OBJECT__REFERS_TO_CDC: @@ -1519,12 +1808,16 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { return getPresCondArgs(); case NsdPackage.DATA_OBJECT__PRES_COND_ARGS_ID: return getPresCondArgsID(); + case NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + return getRefersToPresCondArgsDoc(); case NsdPackage.DATA_OBJECT__DS_PRES_COND: return getDsPresCond(); case NsdPackage.DATA_OBJECT__DS_PRES_COND_ARGS: return getDsPresCondArgs(); case NsdPackage.DATA_OBJECT__DS_PRES_COND_ARGS_ID: return getDsPresCondArgsID(); + case NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC: + return getRefersToDsPresCondArgsDoc(); case NsdPackage.DATA_OBJECT__UNDERLYING_TYPE: return getUnderlyingType(); case NsdPackage.DATA_OBJECT__UNDERLYING_TYPE_KIND: @@ -1564,6 +1857,9 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { case NsdPackage.DATA_OBJECT__PRES_COND_ARGS_ID: setPresCondArgsID( ( String ) newValue ); return; + case NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + setRefersToPresCondArgsDoc( ( Doc ) newValue ); + return; case NsdPackage.DATA_OBJECT__DS_PRES_COND: setDsPresCond( ( String ) newValue ); return; @@ -1573,6 +1869,9 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { case NsdPackage.DATA_OBJECT__DS_PRES_COND_ARGS_ID: setDsPresCondArgsID( ( String ) newValue ); return; + case NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC: + setRefersToDsPresCondArgsDoc( ( Doc ) newValue ); + return; case NsdPackage.DATA_OBJECT__UNDERLYING_TYPE: setUnderlyingType( ( String ) newValue ); return; @@ -1621,6 +1920,9 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { case NsdPackage.DATA_OBJECT__PRES_COND_ARGS_ID: unsetPresCondArgsID(); return; + case NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + unsetRefersToPresCondArgsDoc(); + return; case NsdPackage.DATA_OBJECT__DS_PRES_COND: unsetDsPresCond(); return; @@ -1630,6 +1932,9 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { case NsdPackage.DATA_OBJECT__DS_PRES_COND_ARGS_ID: unsetDsPresCondArgsID(); return; + case NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC: + unsetRefersToDsPresCondArgsDoc(); + return; case NsdPackage.DATA_OBJECT__UNDERLYING_TYPE: unsetUnderlyingType(); return; @@ -1675,12 +1980,16 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { return isSetPresCondArgs(); case NsdPackage.DATA_OBJECT__PRES_COND_ARGS_ID: return isSetPresCondArgsID(); + case NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + return isSetRefersToPresCondArgsDoc(); case NsdPackage.DATA_OBJECT__DS_PRES_COND: return isSetDsPresCond(); case NsdPackage.DATA_OBJECT__DS_PRES_COND_ARGS: return isSetDsPresCondArgs(); case NsdPackage.DATA_OBJECT__DS_PRES_COND_ARGS_ID: return isSetDsPresCondArgsID(); + case NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC: + return isSetRefersToDsPresCondArgsDoc(); case NsdPackage.DATA_OBJECT__UNDERLYING_TYPE: return isSetUnderlyingType(); case NsdPackage.DATA_OBJECT__UNDERLYING_TYPE_KIND: @@ -1718,6 +2027,8 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { return NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS; case NsdPackage.DATA_OBJECT__PRES_COND_ARGS_ID: return NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID; + case NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + return NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC; default: return -1; } @@ -1730,6 +2041,8 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { return NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS; case NsdPackage.DATA_OBJECT__DS_PRES_COND_ARGS_ID: return NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS_ID; + case NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC: + return NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC; default: return -1; } @@ -1762,6 +2075,8 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { return NsdPackage.DATA_OBJECT__PRES_COND_ARGS; case NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID: return NsdPackage.DATA_OBJECT__PRES_COND_ARGS_ID; + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + return NsdPackage.DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC; default: return -1; } @@ -1774,6 +2089,8 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { return NsdPackage.DATA_OBJECT__DS_PRES_COND_ARGS; case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS_ID: return NsdPackage.DATA_OBJECT__DS_PRES_COND_ARGS_ID; + case NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC: + return NsdPackage.DATA_OBJECT__REFERS_TO_DS_PRES_COND_ARGS_DOC; default: return -1; } @@ -1913,11 +2230,27 @@ public class DataObjectImpl extends DocumentedClassImpl implements DataObject { console.verbose( "PresenceCondition (name: " + getDsPresCond() + ") refers by DataObject (name: " + getName() + ") in NS (id:" + getParentAnyLNClass().getParentLNClasses().getParentNS().getId() + ") found in NS (id:" - + getRefersToPresenceConditionDerivedStatistics().getParentPresenceConditions().getParentNS().getId() + + getRefersToPresenceConditionDerivedStatistics().getParentPresenceConditions().getParentNS() + .getId() + ")" ); } } - return false; + + if( isSetPresCondArgsID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getPresCondArgsID() ); + if( doc != null ) setRefersToPresCondArgsDoc( doc ); + } + } + + if( isSetDsPresCondArgsID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getDsPresCondArgsID() ); + if( doc != null ) setRefersToDsPresCondArgsDoc( doc ); + } + } + + return false; } } //DataObjectImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DependsOnImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DependsOnImpl.java index b804d3ea7bd09f1caaa4ac205a88519afe1926a8..d6f1457ee21c52fc7f3ff8305075987677b144a0 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DependsOnImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DependsOnImpl.java @@ -912,7 +912,8 @@ public class DependsOnImpl extends NsdObjectImpl implements DependsOn { NS ns = ( ( NsdResourceSetImpl ) eResource().getResourceSet() ).getNS( getId() ); if( ns == null ) { console.error( - "NS (id: " + getId() + ") and refers by DependsOn in NS (id:" + getParentNS().getId() + ") is unknown" ); + "NS (id: " + getId() + ") and refers by DependsOn in NS (id:" + getParentNS().getId() + + ") is unknown" ); } else { setRefersToNS( ns ); diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocImpl.java index 1d80f037ee199ba2c2c1a111307dc2682881afa8..e3f726ff512e91d76240f63ed4ad3abc8ab13149 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocImpl.java @@ -19,18 +19,29 @@ */ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Abbreviation; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceConditionDerivedStatistics; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.BasicType; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NSDoc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition; +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.BasicFeatureMap; +import org.eclipse.emf.ecore.util.EObjectWithInverseEList; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.emf.ecore.util.FeatureMap; import org.eclipse.emf.ecore.util.InternalEList; @@ -48,6 +59,14 @@ import org.eclipse.emf.ecore.util.InternalEList; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getAny <em>Any</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getId <em>Id</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getParentNSDoc <em>Parent NS Doc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getReferredByAgNSDesc <em>Referred By Ag NS Desc</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getReferredByPresenceCondition <em>Referred By Presence Condition</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getReferredByAgPresenceCondition <em>Referred By Ag Presence Condition</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getReferredByAbbreviation <em>Referred By Abbreviation</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getReferredByBasicType <em>Referred By Basic Type</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getReferredByDocumentedClass <em>Referred By Documented Class</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getReferredByFunctionalConstraint <em>Referred By Functional Constraint</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocImpl#getReferredByAgPresenceConditionDerivedStatistics <em>Referred By Ag Presence Condition Derived Statistics</em>}</li> * </ul> * * @generated @@ -92,6 +111,86 @@ public class DocImpl extends NsdObjectImpl implements Doc { */ protected boolean idESet; + /** + * The cached value of the '{@link #getReferredByAgNSDesc() <em>Referred By Ag NS Desc</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferredByAgNSDesc() + * @generated + * @ordered + */ + protected EList< AgNSdesc > referredByAgNSDesc; + + /** + * The cached value of the '{@link #getReferredByPresenceCondition() <em>Referred By Presence Condition</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferredByPresenceCondition() + * @generated + * @ordered + */ + protected EList< PresenceCondition > referredByPresenceCondition; + + /** + * The cached value of the '{@link #getReferredByAgPresenceCondition() <em>Referred By Ag Presence Condition</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferredByAgPresenceCondition() + * @generated + * @ordered + */ + protected EList< AgPresenceCondition > referredByAgPresenceCondition; + + /** + * The cached value of the '{@link #getReferredByAbbreviation() <em>Referred By Abbreviation</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferredByAbbreviation() + * @generated + * @ordered + */ + protected EList< Abbreviation > referredByAbbreviation; + + /** + * The cached value of the '{@link #getReferredByBasicType() <em>Referred By Basic Type</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferredByBasicType() + * @generated + * @ordered + */ + protected EList< BasicType > referredByBasicType; + + /** + * The cached value of the '{@link #getReferredByDocumentedClass() <em>Referred By Documented Class</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferredByDocumentedClass() + * @generated + * @ordered + */ + protected EList< DocumentedClass > referredByDocumentedClass; + + /** + * The cached value of the '{@link #getReferredByFunctionalConstraint() <em>Referred By Functional Constraint</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferredByFunctionalConstraint() + * @generated + * @ordered + */ + protected EList< FunctionalConstraint > referredByFunctionalConstraint; + + /** + * The cached value of the '{@link #getReferredByAgPresenceConditionDerivedStatistics() <em>Referred By Ag Presence Condition Derived Statistics</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferredByAgPresenceConditionDerivedStatistics() + * @generated + * @ordered + */ + protected EList< AgPresenceConditionDerivedStatistics > referredByAgPresenceConditionDerivedStatistics; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -247,12 +346,324 @@ public class DocImpl extends NsdObjectImpl implements Doc { * @generated */ @Override + public EList< AgNSdesc > getReferredByAgNSDesc() { + if( referredByAgNSDesc == null ) { + referredByAgNSDesc = new EObjectWithInverseEList.Unsettable< AgNSdesc >( AgNSdesc.class, this, + NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, NsdPackage.AG_NSDESC__REFERS_TO_DOC ); + } + return referredByAgNSDesc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetReferredByAgNSDesc() { + if( referredByAgNSDesc != null ) ( ( InternalEList.Unsettable< ? > ) referredByAgNSDesc ).unset(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetReferredByAgNSDesc() { + return referredByAgNSDesc != null && ( ( InternalEList.Unsettable< ? > ) referredByAgNSDesc ).isSet(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< PresenceCondition > getReferredByPresenceCondition() { + if( referredByPresenceCondition == null ) { + referredByPresenceCondition = new EObjectWithInverseEList.Unsettable< PresenceCondition >( + PresenceCondition.class, this, NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION, + NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC ); + } + return referredByPresenceCondition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetReferredByPresenceCondition() { + if( referredByPresenceCondition != null ) + ( ( InternalEList.Unsettable< ? > ) referredByPresenceCondition ).unset(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetReferredByPresenceCondition() { + return referredByPresenceCondition != null + && ( ( InternalEList.Unsettable< ? > ) referredByPresenceCondition ).isSet(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< AgPresenceCondition > getReferredByAgPresenceCondition() { + if( referredByAgPresenceCondition == null ) { + referredByAgPresenceCondition = new EObjectWithInverseEList.Unsettable< AgPresenceCondition >( + AgPresenceCondition.class, this, NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, + NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC ); + } + return referredByAgPresenceCondition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetReferredByAgPresenceCondition() { + if( referredByAgPresenceCondition != null ) + ( ( InternalEList.Unsettable< ? > ) referredByAgPresenceCondition ).unset(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetReferredByAgPresenceCondition() { + return referredByAgPresenceCondition != null + && ( ( InternalEList.Unsettable< ? > ) referredByAgPresenceCondition ).isSet(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< Abbreviation > getReferredByAbbreviation() { + if( referredByAbbreviation == null ) { + referredByAbbreviation = new EObjectWithInverseEList.Unsettable< Abbreviation >( Abbreviation.class, this, + NsdPackage.DOC__REFERRED_BY_ABBREVIATION, NsdPackage.ABBREVIATION__REFERS_TO_DOC ); + } + return referredByAbbreviation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetReferredByAbbreviation() { + if( referredByAbbreviation != null ) ( ( InternalEList.Unsettable< ? > ) referredByAbbreviation ).unset(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetReferredByAbbreviation() { + return referredByAbbreviation != null && ( ( InternalEList.Unsettable< ? > ) referredByAbbreviation ).isSet(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< BasicType > getReferredByBasicType() { + if( referredByBasicType == null ) { + referredByBasicType = new EObjectWithInverseEList.Unsettable< BasicType >( BasicType.class, this, + NsdPackage.DOC__REFERRED_BY_BASIC_TYPE, NsdPackage.BASIC_TYPE__REFERS_TO_DOC ); + } + return referredByBasicType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetReferredByBasicType() { + if( referredByBasicType != null ) ( ( InternalEList.Unsettable< ? > ) referredByBasicType ).unset(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetReferredByBasicType() { + return referredByBasicType != null && ( ( InternalEList.Unsettable< ? > ) referredByBasicType ).isSet(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< DocumentedClass > getReferredByDocumentedClass() { + if( referredByDocumentedClass == null ) { + referredByDocumentedClass = new EObjectWithInverseEList.Unsettable< DocumentedClass >( + DocumentedClass.class, this, NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS, + NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC ); + } + return referredByDocumentedClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetReferredByDocumentedClass() { + if( referredByDocumentedClass != null ) ( ( InternalEList.Unsettable< ? > ) referredByDocumentedClass ).unset(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetReferredByDocumentedClass() { + return referredByDocumentedClass != null + && ( ( InternalEList.Unsettable< ? > ) referredByDocumentedClass ).isSet(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< FunctionalConstraint > getReferredByFunctionalConstraint() { + if( referredByFunctionalConstraint == null ) { + referredByFunctionalConstraint = new EObjectWithInverseEList.Unsettable< FunctionalConstraint >( + FunctionalConstraint.class, this, NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT, + NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC ); + } + return referredByFunctionalConstraint; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetReferredByFunctionalConstraint() { + if( referredByFunctionalConstraint != null ) + ( ( InternalEList.Unsettable< ? > ) referredByFunctionalConstraint ).unset(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetReferredByFunctionalConstraint() { + return referredByFunctionalConstraint != null + && ( ( InternalEList.Unsettable< ? > ) referredByFunctionalConstraint ).isSet(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList< AgPresenceConditionDerivedStatistics > getReferredByAgPresenceConditionDerivedStatistics() { + if( referredByAgPresenceConditionDerivedStatistics == null ) { + referredByAgPresenceConditionDerivedStatistics = new EObjectWithInverseEList.Unsettable< AgPresenceConditionDerivedStatistics >( + AgPresenceConditionDerivedStatistics.class, this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS, + NsdPackage.AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC ); + } + return referredByAgPresenceConditionDerivedStatistics; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetReferredByAgPresenceConditionDerivedStatistics() { + if( referredByAgPresenceConditionDerivedStatistics != null ) + ( ( InternalEList.Unsettable< ? > ) referredByAgPresenceConditionDerivedStatistics ).unset(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetReferredByAgPresenceConditionDerivedStatistics() { + return referredByAgPresenceConditionDerivedStatistics != null + && ( ( InternalEList.Unsettable< ? > ) referredByAgPresenceConditionDerivedStatistics ).isSet(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings( "unchecked" ) + @Override public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { case NsdPackage.DOC__PARENT_NS_DOC: if( eInternalContainer() != null ) msgs = eBasicRemoveFromContainer( msgs ); return basicSetParentNSDoc( ( NSDoc ) otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_AG_NS_DESC: + return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredByAgNSDesc() ) + .basicAdd( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION: + return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredByPresenceCondition() ) + .basicAdd( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION: + return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredByAgPresenceCondition() ) + .basicAdd( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_ABBREVIATION: + return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredByAbbreviation() ) + .basicAdd( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_BASIC_TYPE: + return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredByBasicType() ) + .basicAdd( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS: + return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredByDocumentedClass() ) + .basicAdd( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT: + return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredByFunctionalConstraint() ) + .basicAdd( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS: + return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredByAgPresenceConditionDerivedStatistics() ) + .basicAdd( otherEnd, msgs ); } return super.eInverseAdd( otherEnd, featureID, msgs ); } @@ -273,6 +684,23 @@ public class DocImpl extends NsdObjectImpl implements Doc { return ( ( InternalEList< ? > ) getAny() ).basicRemove( otherEnd, msgs ); case NsdPackage.DOC__PARENT_NS_DOC: return basicSetParentNSDoc( null, msgs ); + case NsdPackage.DOC__REFERRED_BY_AG_NS_DESC: + return ( ( InternalEList< ? > ) getReferredByAgNSDesc() ).basicRemove( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION: + return ( ( InternalEList< ? > ) getReferredByPresenceCondition() ).basicRemove( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION: + return ( ( InternalEList< ? > ) getReferredByAgPresenceCondition() ).basicRemove( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_ABBREVIATION: + return ( ( InternalEList< ? > ) getReferredByAbbreviation() ).basicRemove( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_BASIC_TYPE: + return ( ( InternalEList< ? > ) getReferredByBasicType() ).basicRemove( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS: + return ( ( InternalEList< ? > ) getReferredByDocumentedClass() ).basicRemove( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT: + return ( ( InternalEList< ? > ) getReferredByFunctionalConstraint() ).basicRemove( otherEnd, msgs ); + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS: + return ( ( InternalEList< ? > ) getReferredByAgPresenceConditionDerivedStatistics() ).basicRemove( otherEnd, + msgs ); } return super.eInverseRemove( otherEnd, featureID, msgs ); } @@ -312,6 +740,22 @@ public class DocImpl extends NsdObjectImpl implements Doc { return getId(); case NsdPackage.DOC__PARENT_NS_DOC: return getParentNSDoc(); + case NsdPackage.DOC__REFERRED_BY_AG_NS_DESC: + return getReferredByAgNSDesc(); + case NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION: + return getReferredByPresenceCondition(); + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION: + return getReferredByAgPresenceCondition(); + case NsdPackage.DOC__REFERRED_BY_ABBREVIATION: + return getReferredByAbbreviation(); + case NsdPackage.DOC__REFERRED_BY_BASIC_TYPE: + return getReferredByBasicType(); + case NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS: + return getReferredByDocumentedClass(); + case NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT: + return getReferredByFunctionalConstraint(); + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS: + return getReferredByAgPresenceConditionDerivedStatistics(); } return super.eGet( featureID, resolve, coreType ); } @@ -321,6 +765,7 @@ public class DocImpl extends NsdObjectImpl implements Doc { * <!-- end-user-doc --> * @generated */ + @SuppressWarnings( "unchecked" ) @Override public void eSet( int featureID, Object newValue ) { switch( featureID ) { @@ -339,6 +784,39 @@ public class DocImpl extends NsdObjectImpl implements Doc { case NsdPackage.DOC__PARENT_NS_DOC: setParentNSDoc( ( NSDoc ) newValue ); return; + case NsdPackage.DOC__REFERRED_BY_AG_NS_DESC: + getReferredByAgNSDesc().clear(); + getReferredByAgNSDesc().addAll( ( Collection< ? extends AgNSdesc > ) newValue ); + return; + case NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION: + getReferredByPresenceCondition().clear(); + getReferredByPresenceCondition().addAll( ( Collection< ? extends PresenceCondition > ) newValue ); + return; + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION: + getReferredByAgPresenceCondition().clear(); + getReferredByAgPresenceCondition().addAll( ( Collection< ? extends AgPresenceCondition > ) newValue ); + return; + case NsdPackage.DOC__REFERRED_BY_ABBREVIATION: + getReferredByAbbreviation().clear(); + getReferredByAbbreviation().addAll( ( Collection< ? extends Abbreviation > ) newValue ); + return; + case NsdPackage.DOC__REFERRED_BY_BASIC_TYPE: + getReferredByBasicType().clear(); + getReferredByBasicType().addAll( ( Collection< ? extends BasicType > ) newValue ); + return; + case NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS: + getReferredByDocumentedClass().clear(); + getReferredByDocumentedClass().addAll( ( Collection< ? extends DocumentedClass > ) newValue ); + return; + case NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT: + getReferredByFunctionalConstraint().clear(); + getReferredByFunctionalConstraint().addAll( ( Collection< ? extends FunctionalConstraint > ) newValue ); + return; + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS: + getReferredByAgPresenceConditionDerivedStatistics().clear(); + getReferredByAgPresenceConditionDerivedStatistics() + .addAll( ( Collection< ? extends AgPresenceConditionDerivedStatistics > ) newValue ); + return; } super.eSet( featureID, newValue ); } @@ -366,6 +844,30 @@ public class DocImpl extends NsdObjectImpl implements Doc { case NsdPackage.DOC__PARENT_NS_DOC: setParentNSDoc( ( NSDoc ) null ); return; + case NsdPackage.DOC__REFERRED_BY_AG_NS_DESC: + unsetReferredByAgNSDesc(); + return; + case NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION: + unsetReferredByPresenceCondition(); + return; + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION: + unsetReferredByAgPresenceCondition(); + return; + case NsdPackage.DOC__REFERRED_BY_ABBREVIATION: + unsetReferredByAbbreviation(); + return; + case NsdPackage.DOC__REFERRED_BY_BASIC_TYPE: + unsetReferredByBasicType(); + return; + case NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS: + unsetReferredByDocumentedClass(); + return; + case NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT: + unsetReferredByFunctionalConstraint(); + return; + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS: + unsetReferredByAgPresenceConditionDerivedStatistics(); + return; } super.eUnset( featureID ); } @@ -388,6 +890,22 @@ public class DocImpl extends NsdObjectImpl implements Doc { return isSetId(); case NsdPackage.DOC__PARENT_NS_DOC: return getParentNSDoc() != null; + case NsdPackage.DOC__REFERRED_BY_AG_NS_DESC: + return isSetReferredByAgNSDesc(); + case NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION: + return isSetReferredByPresenceCondition(); + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION: + return isSetReferredByAgPresenceCondition(); + case NsdPackage.DOC__REFERRED_BY_ABBREVIATION: + return isSetReferredByAbbreviation(); + case NsdPackage.DOC__REFERRED_BY_BASIC_TYPE: + return isSetReferredByBasicType(); + case NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS: + return isSetReferredByDocumentedClass(); + case NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT: + return isSetReferredByFunctionalConstraint(); + case NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS: + return isSetReferredByAgPresenceConditionDerivedStatistics(); } return super.eIsSet( featureID ); } diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocumentedClassImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocumentedClassImpl.java index d619dc1bbaaa2bc49e2546df6e988cf5e25f06aa..f763e73deb094f233eb7ee51db16f0d1023e6095 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocumentedClassImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/DocumentedClassImpl.java @@ -19,13 +19,18 @@ */ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentedClass; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; +import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; 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; /** @@ -39,6 +44,7 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentedClassImpl#isDeprecated <em>Deprecated</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentedClassImpl#getDescID <em>Desc ID</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentedClassImpl#isInformative <em>Informative</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.DocumentedClassImpl#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @generated @@ -131,6 +137,25 @@ public class DocumentedClassImpl extends NsdObjectImpl implements DocumentedClas */ protected boolean informativeESet; + /** + * The cached value of the '{@link #getRefersToDoc() <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToDoc() + * @generated + * @ordered + */ + protected Doc refersToDoc; + + /** + * This is true if the Refers To Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToDocESet; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -306,6 +331,149 @@ public class DocumentedClassImpl extends NsdObjectImpl implements DocumentedClas return informativeESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToDoc() { + return refersToDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToDoc( Doc newRefersToDoc, NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = newRefersToDoc; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC, oldRefersToDoc, newRefersToDoc, !oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToDoc( Doc newRefersToDoc ) { + if( newRefersToDoc != refersToDoc ) { + NotificationChain msgs = null; + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS, Doc.class, msgs ); + if( newRefersToDoc != null ) + msgs = ( ( InternalEObject ) newRefersToDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS, Doc.class, msgs ); + msgs = basicSetRefersToDoc( newRefersToDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC, + newRefersToDoc, newRefersToDoc, !oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToDoc( NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = null; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC, oldRefersToDoc, null, oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToDoc() { + if( refersToDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS, Doc.class, msgs ); + msgs = basicUnsetRefersToDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC, + null, null, oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToDoc() { + return refersToDocESet; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC: + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_DOCUMENTED_CLASS, Doc.class, msgs ); + return basicSetRefersToDoc( ( Doc ) otherEnd, msgs ); + } + return super.eInverseAdd( otherEnd, featureID, msgs ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { + switch( featureID ) { + case NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC: + return basicUnsetRefersToDoc( msgs ); + } + return super.eInverseRemove( otherEnd, featureID, msgs ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -320,6 +488,8 @@ public class DocumentedClassImpl extends NsdObjectImpl implements DocumentedClas return getDescID(); case NsdPackage.DOCUMENTED_CLASS__INFORMATIVE: return isInformative(); + case NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC: + return getRefersToDoc(); } return super.eGet( featureID, resolve, coreType ); } @@ -341,6 +511,9 @@ public class DocumentedClassImpl extends NsdObjectImpl implements DocumentedClas case NsdPackage.DOCUMENTED_CLASS__INFORMATIVE: setInformative( ( Boolean ) newValue ); return; + case NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC: + setRefersToDoc( ( Doc ) newValue ); + return; } super.eSet( featureID, newValue ); } @@ -362,6 +535,9 @@ public class DocumentedClassImpl extends NsdObjectImpl implements DocumentedClas case NsdPackage.DOCUMENTED_CLASS__INFORMATIVE: unsetInformative(); return; + case NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC: + unsetRefersToDoc(); + return; } super.eUnset( featureID ); } @@ -380,6 +556,8 @@ public class DocumentedClassImpl extends NsdObjectImpl implements DocumentedClas return isSetDescID(); case NsdPackage.DOCUMENTED_CLASS__INFORMATIVE: return isSetInformative(); + case NsdPackage.DOCUMENTED_CLASS__REFERS_TO_DOC: + return isSetRefersToDoc(); } return super.eIsSet( featureID ); } @@ -413,4 +591,18 @@ public class DocumentedClassImpl extends NsdObjectImpl implements DocumentedClas return result.toString(); } + @Override + public boolean buildExplicitLinks( IRiseClipseConsole console, boolean forceUpdate ) { + if( super.buildExplicitLinks( console, forceUpdate ) ) return true; + + if( isSetDescID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getDescID() ); + if( doc != null ) setRefersToDoc( doc ); + } + } + + return false; + } + } //DocumentedClassImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/FunctionalConstraintImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/FunctionalConstraintImpl.java index 39dce4dd9b54d0b2ae3e87d23192051f6e75ff93..e9ff7a216d3c791a4c83ccd684f6129fb6b57808 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/FunctionalConstraintImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/FunctionalConstraintImpl.java @@ -21,9 +21,12 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ApplicableServices; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraints; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; +import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import java.util.Collection; import org.eclipse.emf.common.notify.Notification; @@ -52,6 +55,7 @@ import org.eclipse.emf.ecore.util.InternalEList; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.FunctionalConstraintImpl#getTitleID <em>Title ID</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.FunctionalConstraintImpl#getParentFunctionalConstraints <em>Parent Functional Constraints</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.FunctionalConstraintImpl#getReferredByDataAttribute <em>Referred By Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.FunctionalConstraintImpl#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @generated @@ -173,6 +177,25 @@ public class FunctionalConstraintImpl extends NsdObjectImpl implements Functiona */ protected EList< DataAttribute > referredByDataAttribute; + /** + * The cached value of the '{@link #getRefersToDoc() <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToDoc() + * @generated + * @ordered + */ + protected Doc refersToDoc; + + /** + * This is true if the Refers To Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToDocESet; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -550,6 +573,119 @@ public class FunctionalConstraintImpl extends NsdObjectImpl implements Functiona return referredByDataAttribute != null && ( ( InternalEList.Unsettable< ? > ) referredByDataAttribute ).isSet(); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToDoc() { + return refersToDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToDoc( Doc newRefersToDoc, NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = newRefersToDoc; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC, oldRefersToDoc, newRefersToDoc, + !oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToDoc( Doc newRefersToDoc ) { + if( newRefersToDoc != refersToDoc ) { + NotificationChain msgs = null; + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT, Doc.class, msgs ); + if( newRefersToDoc != null ) + msgs = ( ( InternalEObject ) newRefersToDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT, Doc.class, msgs ); + msgs = basicSetRefersToDoc( newRefersToDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC, + newRefersToDoc, newRefersToDoc, !oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToDoc( NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = null; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC, oldRefersToDoc, null, oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToDoc() { + if( refersToDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT, Doc.class, msgs ); + msgs = basicUnsetRefersToDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC, null, null, oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToDoc() { + return refersToDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -571,6 +707,11 @@ public class FunctionalConstraintImpl extends NsdObjectImpl implements Functiona case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERRED_BY_DATA_ATTRIBUTE: return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredByDataAttribute() ) .basicAdd( otherEnd, msgs ); + case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC: + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT, Doc.class, msgs ); + return basicSetRefersToDoc( ( Doc ) otherEnd, msgs ); } return super.eInverseAdd( otherEnd, featureID, msgs ); } @@ -589,6 +730,8 @@ public class FunctionalConstraintImpl extends NsdObjectImpl implements Functiona return basicSetParentFunctionalConstraints( null, msgs ); case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERRED_BY_DATA_ATTRIBUTE: return ( ( InternalEList< ? > ) getReferredByDataAttribute() ).basicRemove( otherEnd, msgs ); + case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC: + return basicUnsetRefersToDoc( msgs ); } return super.eInverseRemove( otherEnd, featureID, msgs ); } @@ -628,6 +771,8 @@ public class FunctionalConstraintImpl extends NsdObjectImpl implements Functiona return getParentFunctionalConstraints(); case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERRED_BY_DATA_ATTRIBUTE: return getReferredByDataAttribute(); + case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC: + return getRefersToDoc(); } return super.eGet( featureID, resolve, coreType ); } @@ -660,6 +805,9 @@ public class FunctionalConstraintImpl extends NsdObjectImpl implements Functiona getReferredByDataAttribute().clear(); getReferredByDataAttribute().addAll( ( Collection< ? extends DataAttribute > ) newValue ); return; + case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC: + setRefersToDoc( ( Doc ) newValue ); + return; } super.eSet( featureID, newValue ); } @@ -690,6 +838,9 @@ public class FunctionalConstraintImpl extends NsdObjectImpl implements Functiona case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERRED_BY_DATA_ATTRIBUTE: unsetReferredByDataAttribute(); return; + case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC: + unsetRefersToDoc(); + return; } super.eUnset( featureID ); } @@ -714,6 +865,8 @@ public class FunctionalConstraintImpl extends NsdObjectImpl implements Functiona return getParentFunctionalConstraints() != null; case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERRED_BY_DATA_ATTRIBUTE: return isSetReferredByDataAttribute(); + case NsdPackage.FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC: + return isSetRefersToDoc(); } return super.eIsSet( featureID ); } @@ -747,4 +900,18 @@ public class FunctionalConstraintImpl extends NsdObjectImpl implements Functiona return result.toString(); } + @Override + public boolean buildExplicitLinks( IRiseClipseConsole console, boolean forceUpdate ) { + if( super.buildExplicitLinks( console, forceUpdate ) ) return true; + + if( isSetDescID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getDescID() ); + if( doc != null ) setRefersToDoc( doc ); + } + } + + return false; + } + } //FunctionalConstraintImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/NSImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/NSImpl.java index a842df72e285597f6f3b0894990189952da95fe0..2d1bc065b860ed7b1ffcf46c64838f44d5b49100 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/NSImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/NSImpl.java @@ -30,6 +30,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.nsd.CDCs; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Changes; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttributes; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DependsOn; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumerations; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraint; @@ -40,6 +41,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceConditions; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PubStage; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import java.lang.reflect.InvocationTargetException; import java.util.Collection; @@ -72,6 +74,7 @@ import org.eclipse.emf.ecore.util.InternalEList; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NSImpl#getUmlDate <em>Uml Date</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NSImpl#getUmlVersion <em>Uml Version</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NSImpl#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NSImpl#getRefersToDoc <em>Refers To Doc</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NSImpl#getChanges <em>Changes</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NSImpl#getDependsOn <em>Depends On</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.NSImpl#getBasicTypes <em>Basic Types</em>}</li> @@ -320,6 +323,25 @@ public class NSImpl extends CopyrightedImpl implements NS { */ protected boolean descIDESet; + /** + * The cached value of the '{@link #getRefersToDoc() <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToDoc() + * @generated + * @ordered + */ + protected Doc refersToDoc; + + /** + * This is true if the Refers To Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToDocESet; + /** * The cached value of the '{@link #getChanges() <em>Changes</em>}' containment reference. * <!-- begin-user-doc --> @@ -1869,6 +1891,118 @@ public class NSImpl extends CopyrightedImpl implements NS { return descIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToDoc() { + return refersToDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToDoc( Doc newRefersToDoc, NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = newRefersToDoc; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.NS__REFERS_TO_DOC, oldRefersToDoc, newRefersToDoc, !oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToDoc( Doc newRefersToDoc ) { + if( newRefersToDoc != refersToDoc ) { + NotificationChain msgs = null; + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + if( newRefersToDoc != null ) + msgs = ( ( InternalEObject ) newRefersToDoc ).eInverseAdd( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + msgs = basicSetRefersToDoc( newRefersToDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.NS__REFERS_TO_DOC, newRefersToDoc, + newRefersToDoc, !oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToDoc( NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = null; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.NS__REFERS_TO_DOC, oldRefersToDoc, null, oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToDoc() { + if( refersToDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + msgs = basicUnsetRefersToDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.NS__REFERS_TO_DOC, null, null, + oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToDoc() { + return refersToDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -2189,6 +2323,11 @@ public class NSImpl extends CopyrightedImpl implements NS { @Override public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.NS__REFERS_TO_DOC: + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + return basicSetRefersToDoc( ( Doc ) otherEnd, msgs ); case NsdPackage.NS__CHANGES: if( changes != null ) msgs = ( ( InternalEObject ) changes ).eInverseRemove( this, @@ -2306,6 +2445,8 @@ public class NSImpl extends CopyrightedImpl implements NS { @Override public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.NS__REFERS_TO_DOC: + return basicUnsetRefersToDoc( msgs ); case NsdPackage.NS__CHANGES: return basicUnsetChanges( msgs ); case NsdPackage.NS__DEPENDS_ON: @@ -2356,6 +2497,8 @@ public class NSImpl extends CopyrightedImpl implements NS { return getUmlVersion(); case NsdPackage.NS__DESC_ID: return getDescID(); + case NsdPackage.NS__REFERS_TO_DOC: + return getRefersToDoc(); case NsdPackage.NS__CHANGES: return getChanges(); case NsdPackage.NS__DEPENDS_ON: @@ -2415,6 +2558,9 @@ public class NSImpl extends CopyrightedImpl implements NS { case NsdPackage.NS__DESC_ID: setDescID( ( String ) newValue ); return; + case NsdPackage.NS__REFERS_TO_DOC: + setRefersToDoc( ( Doc ) newValue ); + return; case NsdPackage.NS__CHANGES: setChanges( ( Changes ) newValue ); return; @@ -2485,6 +2631,9 @@ public class NSImpl extends CopyrightedImpl implements NS { case NsdPackage.NS__DESC_ID: unsetDescID(); return; + case NsdPackage.NS__REFERS_TO_DOC: + unsetRefersToDoc(); + return; case NsdPackage.NS__CHANGES: unsetChanges(); return; @@ -2546,6 +2695,8 @@ public class NSImpl extends CopyrightedImpl implements NS { return isSetUmlVersion(); case NsdPackage.NS__DESC_ID: return isSetDescID(); + case NsdPackage.NS__REFERS_TO_DOC: + return isSetRefersToDoc(); case NsdPackage.NS__CHANGES: return isSetChanges(); case NsdPackage.NS__DEPENDS_ON: @@ -2609,6 +2760,8 @@ public class NSImpl extends CopyrightedImpl implements NS { switch( derivedFeatureID ) { case NsdPackage.NS__DESC_ID: return NsdPackage.AG_NSDESC__DESC_ID; + case NsdPackage.NS__REFERS_TO_DOC: + return NsdPackage.AG_NSDESC__REFERS_TO_DOC; default: return -1; } @@ -2653,6 +2806,8 @@ public class NSImpl extends CopyrightedImpl implements NS { switch( baseFeatureID ) { case NsdPackage.AG_NSDESC__DESC_ID: return NsdPackage.NS__DESC_ID; + case NsdPackage.AG_NSDESC__REFERS_TO_DOC: + return NsdPackage.NS__REFERS_TO_DOC; default: return -1; } @@ -2736,4 +2891,18 @@ public class NSImpl extends CopyrightedImpl implements NS { return result.toString(); } + @Override + public boolean buildExplicitLinks( IRiseClipseConsole console, boolean forceUpdate ) { + if( super.buildExplicitLinks( console, forceUpdate ) ) return true; + + if( isSetDescID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getDescID() ); + if( doc != null ) setRefersToDoc( doc ); + } + } + + return false; + } + } //NSImpl 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 index 9d85ba5db8278b284f3751837fb77d14cee06acb..114aac1ec8a372df9ea635a0057af30bc13d2d4b 100644 --- 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 @@ -904,6 +904,16 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { return ( EReference ) abbreviationEClass.getEStructuralFeatures().get( 2 ); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getAbbreviation_RefersToDoc() { + return ( EReference ) abbreviationEClass.getEStructuralFeatures().get( 3 ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1174,6 +1184,16 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { return ( EReference ) basicTypeEClass.getEStructuralFeatures().get( 3 ); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getBasicType_RefersToDoc() { + return ( EReference ) basicTypeEClass.getEStructuralFeatures().get( 4 ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1884,6 +1904,86 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { return ( EReference ) docEClass.getEStructuralFeatures().get( 4 ); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDoc_ReferredByAgNSDesc() { + return ( EReference ) docEClass.getEStructuralFeatures().get( 5 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDoc_ReferredByPresenceCondition() { + return ( EReference ) docEClass.getEStructuralFeatures().get( 6 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDoc_ReferredByAgPresenceCondition() { + return ( EReference ) docEClass.getEStructuralFeatures().get( 7 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDoc_ReferredByAbbreviation() { + return ( EReference ) docEClass.getEStructuralFeatures().get( 8 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDoc_ReferredByBasicType() { + return ( EReference ) docEClass.getEStructuralFeatures().get( 9 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDoc_ReferredByDocumentedClass() { + return ( EReference ) docEClass.getEStructuralFeatures().get( 10 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDoc_ReferredByFunctionalConstraint() { + return ( EReference ) docEClass.getEStructuralFeatures().get( 11 ); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDoc_ReferredByAgPresenceConditionDerivedStatistics() { + return ( EReference ) docEClass.getEStructuralFeatures().get( 12 ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1924,6 +2024,16 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { return ( EAttribute ) documentedClassEClass.getEStructuralFeatures().get( 2 ); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getDocumentedClass_RefersToDoc() { + return ( EReference ) documentedClassEClass.getEStructuralFeatures().get( 3 ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -2094,6 +2204,16 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { return ( EReference ) functionalConstraintEClass.getEStructuralFeatures().get( 5 ); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getFunctionalConstraint_RefersToDoc() { + return ( EReference ) functionalConstraintEClass.getEStructuralFeatures().get( 6 ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -2654,6 +2774,16 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { return ( EReference ) presenceConditionEClass.getEStructuralFeatures().get( 9 ); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getPresenceCondition_RefersToDoc() { + return ( EReference ) presenceConditionEClass.getEStructuralFeatures().get( 10 ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -3324,6 +3454,16 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { return ( EAttribute ) agPresenceConditionEClass.getEStructuralFeatures().get( 2 ); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getAgPresenceCondition_RefersToPresCondArgsDoc() { + return ( EReference ) agPresenceConditionEClass.getEStructuralFeatures().get( 3 ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -3364,6 +3504,16 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { return ( EAttribute ) agPresenceConditionDerivedStatisticsEClass.getEStructuralFeatures().get( 2 ); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getAgPresenceConditionDerivedStatistics_RefersToDsPresCondArgsDoc() { + return ( EReference ) agPresenceConditionDerivedStatisticsEClass.getEStructuralFeatures().get( 3 ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -3604,6 +3754,16 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { return ( EAttribute ) agNSdescEClass.getEStructuralFeatures().get( 0 ); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getAgNSdesc_RefersToDoc() { + return ( EReference ) agNSdescEClass.getEStructuralFeatures().get( 1 ); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -3797,6 +3957,7 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { createEAttribute( abbreviationEClass, ABBREVIATION__DESC_ID ); createEAttribute( abbreviationEClass, ABBREVIATION__NAME ); createEReference( abbreviationEClass, ABBREVIATION__PARENT_ABBREVIATIONS ); + createEReference( abbreviationEClass, ABBREVIATION__REFERS_TO_DOC ); abbreviationsEClass = createEClass( ABBREVIATIONS ); createEReference( abbreviationsEClass, ABBREVIATIONS__ABBREVIATION ); @@ -3830,6 +3991,7 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { createEAttribute( basicTypeEClass, BASIC_TYPE__NAME ); createEReference( basicTypeEClass, BASIC_TYPE__PARENT_BASIC_TYPES ); createEReference( basicTypeEClass, BASIC_TYPE__REFERRED_BY_DATA_ATTRIBUTE ); + createEReference( basicTypeEClass, BASIC_TYPE__REFERS_TO_DOC ); basicTypesEClass = createEClass( BASIC_TYPES ); createEReference( basicTypesEClass, BASIC_TYPES__BASIC_TYPE ); @@ -3913,11 +4075,20 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { createEAttribute( docEClass, DOC__ANY ); createEAttribute( docEClass, DOC__ID ); createEReference( docEClass, DOC__PARENT_NS_DOC ); + createEReference( docEClass, DOC__REFERRED_BY_AG_NS_DESC ); + createEReference( docEClass, DOC__REFERRED_BY_PRESENCE_CONDITION ); + createEReference( docEClass, DOC__REFERRED_BY_AG_PRESENCE_CONDITION ); + createEReference( docEClass, DOC__REFERRED_BY_ABBREVIATION ); + createEReference( docEClass, DOC__REFERRED_BY_BASIC_TYPE ); + createEReference( docEClass, DOC__REFERRED_BY_DOCUMENTED_CLASS ); + createEReference( docEClass, DOC__REFERRED_BY_FUNCTIONAL_CONSTRAINT ); + createEReference( docEClass, DOC__REFERRED_BY_AG_PRESENCE_CONDITION_DERIVED_STATISTICS ); documentedClassEClass = createEClass( DOCUMENTED_CLASS ); createEAttribute( documentedClassEClass, DOCUMENTED_CLASS__DEPRECATED ); createEAttribute( documentedClassEClass, DOCUMENTED_CLASS__DESC_ID ); createEAttribute( documentedClassEClass, DOCUMENTED_CLASS__INFORMATIVE ); + createEReference( documentedClassEClass, DOCUMENTED_CLASS__REFERS_TO_DOC ); enumerationEClass = createEClass( ENUMERATION ); createEReference( enumerationEClass, ENUMERATION__LITERAL ); @@ -3938,6 +4109,7 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { createEAttribute( functionalConstraintEClass, FUNCTIONAL_CONSTRAINT__TITLE_ID ); createEReference( functionalConstraintEClass, FUNCTIONAL_CONSTRAINT__PARENT_FUNCTIONAL_CONSTRAINTS ); createEReference( functionalConstraintEClass, FUNCTIONAL_CONSTRAINT__REFERRED_BY_DATA_ATTRIBUTE ); + createEReference( functionalConstraintEClass, FUNCTIONAL_CONSTRAINT__REFERS_TO_DOC ); functionalConstraintsEClass = createEClass( FUNCTIONAL_CONSTRAINTS ); createEReference( functionalConstraintsEClass, FUNCTIONAL_CONSTRAINTS__FUNCTIONAL_CONSTRAINT ); @@ -4003,6 +4175,7 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { createEReference( presenceConditionEClass, PRESENCE_CONDITION__REFERRED_BY_SUB_DATA_OBJECT ); createEReference( presenceConditionEClass, PRESENCE_CONDITION__REFERRED_BY_DATA_ATTRIBUTE ); createEReference( presenceConditionEClass, PRESENCE_CONDITION__REFERRED_BY_SUB_DATA_ATTRIBUTE ); + createEReference( presenceConditionEClass, PRESENCE_CONDITION__REFERS_TO_DOC ); presenceConditionsEClass = createEClass( PRESENCE_CONDITIONS ); createEReference( presenceConditionsEClass, PRESENCE_CONDITIONS__PRESENCE_CONDITION ); @@ -4088,6 +4261,7 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { createEAttribute( agPresenceConditionEClass, AG_PRESENCE_CONDITION__PRES_COND ); createEAttribute( agPresenceConditionEClass, AG_PRESENCE_CONDITION__PRES_COND_ARGS ); createEAttribute( agPresenceConditionEClass, AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID ); + createEReference( agPresenceConditionEClass, AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC ); agPresenceConditionDerivedStatisticsEClass = createEClass( AG_PRESENCE_CONDITION_DERIVED_STATISTICS ); createEAttribute( agPresenceConditionDerivedStatisticsEClass, @@ -4096,6 +4270,8 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS ); createEAttribute( agPresenceConditionDerivedStatisticsEClass, AG_PRESENCE_CONDITION_DERIVED_STATISTICS__DS_PRES_COND_ARGS_ID ); + createEReference( agPresenceConditionDerivedStatisticsEClass, + AG_PRESENCE_CONDITION_DERIVED_STATISTICS__REFERS_TO_DS_PRES_COND_ARGS_DOC ); agArrayEClass = createEClass( AG_ARRAY ); createEAttribute( agArrayEClass, AG_ARRAY__IS_ARRAY ); @@ -4127,6 +4303,7 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { agNSdescEClass = createEClass( AG_NSDESC ); createEAttribute( agNSdescEClass, AG_NSDESC__DESC_ID ); + createEReference( agNSdescEClass, AG_NSDESC__REFERS_TO_DOC ); iRiseClipseConsoleEClass = createEClass( IRISE_CLIPSE_CONSOLE ); @@ -4317,6 +4494,9 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { this.getAbbreviations_Abbreviation(), "parentAbbreviations", null, 0, 1, Abbreviation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); + initEReference( getAbbreviation_RefersToDoc(), this.getDoc(), this.getDoc_ReferredByAbbreviation(), + "refersToDoc", null, 0, 1, Abbreviation.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); initEClass( abbreviationsEClass, Abbreviations.class, "Abbreviations", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); @@ -4402,6 +4582,9 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { this.getDataAttribute_RefersToBasicType(), "referredByDataAttribute", null, 0, -1, BasicType.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); + initEReference( getBasicType_RefersToDoc(), this.getDoc(), this.getDoc_ReferredByBasicType(), "refersToDoc", + null, 0, 1, BasicType.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); initEClass( basicTypesEClass, BasicTypes.class, "BasicTypes", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); @@ -4620,6 +4803,36 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { initEReference( getDoc_ParentNSDoc(), this.getNSDoc(), this.getNSDoc_Doc(), "parentNSDoc", null, 0, 1, Doc.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); + initEReference( getDoc_ReferredByAgNSDesc(), this.getAgNSdesc(), this.getAgNSdesc_RefersToDoc(), + "ReferredByAgNSDesc", null, 0, -1, Doc.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); + initEReference( getDoc_ReferredByPresenceCondition(), this.getPresenceCondition(), + this.getPresenceCondition_RefersToDoc(), "referredByPresenceCondition", null, 0, -1, Doc.class, + IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, + !IS_DERIVED, !IS_ORDERED ); + initEReference( getDoc_ReferredByAgPresenceCondition(), this.getAgPresenceCondition(), + this.getAgPresenceCondition_RefersToPresCondArgsDoc(), "referredByAgPresenceCondition", null, 0, -1, + Doc.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); + initEReference( getDoc_ReferredByAbbreviation(), this.getAbbreviation(), this.getAbbreviation_RefersToDoc(), + "referredByAbbreviation", null, 0, -1, Doc.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); + initEReference( getDoc_ReferredByBasicType(), this.getBasicType(), this.getBasicType_RefersToDoc(), + "referredByBasicType", null, 0, -1, Doc.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); + initEReference( getDoc_ReferredByDocumentedClass(), this.getDocumentedClass(), + this.getDocumentedClass_RefersToDoc(), "referredByDocumentedClass", null, 0, -1, Doc.class, + IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, + !IS_DERIVED, !IS_ORDERED ); + initEReference( getDoc_ReferredByFunctionalConstraint(), this.getFunctionalConstraint(), + this.getFunctionalConstraint_RefersToDoc(), "referredByFunctionalConstraint", null, 0, -1, Doc.class, + IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, + !IS_DERIVED, !IS_ORDERED ); + initEReference( getDoc_ReferredByAgPresenceConditionDerivedStatistics(), + this.getAgPresenceConditionDerivedStatistics(), + this.getAgPresenceConditionDerivedStatistics_RefersToDsPresCondArgsDoc(), + "referredByAgPresenceConditionDerivedStatistics", null, 0, -1, Doc.class, IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); initEClass( documentedClassEClass, DocumentedClass.class, "DocumentedClass", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); @@ -4632,6 +4845,9 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { initEAttribute( getDocumentedClass_Informative(), theXMLTypePackage.getBoolean(), "informative", "false", 0, 1, DocumentedClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getDocumentedClass_RefersToDoc(), this.getDoc(), this.getDoc_ReferredByDocumentedClass(), + "refersToDoc", null, 0, 1, DocumentedClass.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); initEClass( enumerationEClass, Enumeration.class, "Enumeration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); @@ -4687,6 +4903,10 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { this.getDataAttribute_RefersToFunctionalConstraint(), "referredByDataAttribute", null, 0, -1, FunctionalConstraint.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); + initEReference( getFunctionalConstraint_RefersToDoc(), this.getDoc(), + this.getDoc_ReferredByFunctionalConstraint(), "refersToDoc", null, 0, 1, FunctionalConstraint.class, + IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, + !IS_DERIVED, !IS_ORDERED ); initEClass( functionalConstraintsEClass, FunctionalConstraints.class, "FunctionalConstraints", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); @@ -4870,6 +5090,9 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { this.getSubDataAttribute_RefersToPresenceCondition(), "referredBySubDataAttribute", null, 0, -1, PresenceCondition.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); + initEReference( getPresenceCondition_RefersToDoc(), this.getDoc(), this.getDoc_ReferredByPresenceCondition(), + "refersToDoc", null, 0, 1, PresenceCondition.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); initEClass( presenceConditionsEClass, PresenceConditions.class, "PresenceConditions", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); @@ -5090,6 +5313,10 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { initEAttribute( getAgPresenceCondition_PresCondArgsID(), ecorePackage.getEString(), "presCondArgsID", null, 0, 1, AgPresenceCondition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getAgPresenceCondition_RefersToPresCondArgsDoc(), this.getDoc(), + this.getDoc_ReferredByAgPresenceCondition(), "refersToPresCondArgsDoc", null, 0, 1, + AgPresenceCondition.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); initEClass( agPresenceConditionDerivedStatisticsEClass, AgPresenceConditionDerivedStatistics.class, "AgPresenceConditionDerivedStatistics", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); @@ -5102,6 +5329,10 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { initEAttribute( getAgPresenceConditionDerivedStatistics_DsPresCondArgsID(), ecorePackage.getEString(), "dsPresCondArgsID", null, 0, 1, AgPresenceConditionDerivedStatistics.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getAgPresenceConditionDerivedStatistics_RefersToDsPresCondArgsDoc(), this.getDoc(), + this.getDoc_ReferredByAgPresenceConditionDerivedStatistics(), "refersToDsPresCondArgsDoc", null, 0, 1, + AgPresenceConditionDerivedStatistics.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + !IS_RESOLVE_PROXIES, IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); initEClass( agArrayEClass, AgArray.class, "AgArray", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS ); initEAttribute( getAgArray_IsArray(), theXMLTypePackage.getBoolean(), "isArray", "false", 0, 1, AgArray.class, @@ -5162,6 +5393,9 @@ public class NsdPackageImpl extends EPackageImpl implements NsdPackage { IS_GENERATED_INSTANCE_CLASS ); initEAttribute( getAgNSdesc_DescID(), ecorePackage.getEString(), "descID", null, 0, 1, AgNSdesc.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED ); + initEReference( getAgNSdesc_RefersToDoc(), this.getDoc(), this.getDoc_ReferredByAgNSDesc(), "refersToDoc", null, + 0, 1, AgNSdesc.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, + IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED ); initEClass( iRiseClipseConsoleEClass, IRiseClipseConsole.class, "IRiseClipseConsole", IS_ABSTRACT, IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS ); diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/PresenceConditionImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/PresenceConditionImpl.java index 4c90d000559f32805781d9b38e07fd4aa7247b62..3489f1e9de01513c42c430c364b2292dd43e25c2 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/PresenceConditionImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/PresenceConditionImpl.java @@ -21,12 +21,16 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataObject; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceConditions; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.SubDataAttribute; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.SubDataObject; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; +import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; + import java.util.Collection; import org.eclipse.emf.common.notify.Notification; @@ -58,6 +62,7 @@ import org.eclipse.emf.ecore.util.InternalEList; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.PresenceConditionImpl#getReferredBySubDataObject <em>Referred By Sub Data Object</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.PresenceConditionImpl#getReferredByDataAttribute <em>Referred By Data Attribute</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.PresenceConditionImpl#getReferredBySubDataAttribute <em>Referred By Sub Data Attribute</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.PresenceConditionImpl#getRefersToDoc <em>Refers To Doc</em>}</li> * </ul> * * @generated @@ -229,6 +234,25 @@ public class PresenceConditionImpl extends NsdObjectImpl implements PresenceCond */ protected EList< SubDataAttribute > referredBySubDataAttribute; + /** + * The cached value of the '{@link #getRefersToDoc() <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToDoc() + * @generated + * @ordered + */ + protected Doc refersToDoc; + + /** + * This is true if the Refers To Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToDocESet; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -686,6 +710,118 @@ public class PresenceConditionImpl extends NsdObjectImpl implements PresenceCond && ( ( InternalEList.Unsettable< ? > ) referredBySubDataAttribute ).isSet(); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToDoc() { + return refersToDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToDoc( Doc newRefersToDoc, NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = newRefersToDoc; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC, oldRefersToDoc, newRefersToDoc, !oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToDoc( Doc newRefersToDoc ) { + if( newRefersToDoc != refersToDoc ) { + NotificationChain msgs = null; + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION, Doc.class, msgs ); + if( newRefersToDoc != null ) + msgs = ( ( InternalEObject ) newRefersToDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicSetRefersToDoc( newRefersToDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC, + newRefersToDoc, newRefersToDoc, !oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToDoc( NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = null; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC, oldRefersToDoc, null, oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToDoc() { + if( refersToDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicUnsetRefersToDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC, + null, null, oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToDoc() { + return refersToDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -714,6 +850,11 @@ public class PresenceConditionImpl extends NsdObjectImpl implements PresenceCond case NsdPackage.PRESENCE_CONDITION__REFERRED_BY_SUB_DATA_ATTRIBUTE: return ( ( InternalEList< InternalEObject > ) ( InternalEList< ? > ) getReferredBySubDataAttribute() ) .basicAdd( otherEnd, msgs ); + case NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC: + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_PRESENCE_CONDITION, Doc.class, msgs ); + return basicSetRefersToDoc( ( Doc ) otherEnd, msgs ); } return super.eInverseAdd( otherEnd, featureID, msgs ); } @@ -739,6 +880,8 @@ public class PresenceConditionImpl extends NsdObjectImpl implements PresenceCond return ( ( InternalEList< ? > ) getReferredByDataAttribute() ).basicRemove( otherEnd, msgs ); case NsdPackage.PRESENCE_CONDITION__REFERRED_BY_SUB_DATA_ATTRIBUTE: return ( ( InternalEList< ? > ) getReferredBySubDataAttribute() ).basicRemove( otherEnd, msgs ); + case NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC: + return basicUnsetRefersToDoc( msgs ); } return super.eInverseRemove( otherEnd, featureID, msgs ); } @@ -786,6 +929,8 @@ public class PresenceConditionImpl extends NsdObjectImpl implements PresenceCond return getReferredByDataAttribute(); case NsdPackage.PRESENCE_CONDITION__REFERRED_BY_SUB_DATA_ATTRIBUTE: return getReferredBySubDataAttribute(); + case NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC: + return getRefersToDoc(); } return super.eGet( featureID, resolve, coreType ); } @@ -834,6 +979,9 @@ public class PresenceConditionImpl extends NsdObjectImpl implements PresenceCond getReferredBySubDataAttribute().clear(); getReferredBySubDataAttribute().addAll( ( Collection< ? extends SubDataAttribute > ) newValue ); return; + case NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC: + setRefersToDoc( ( Doc ) newValue ); + return; } super.eSet( featureID, newValue ); } @@ -876,6 +1024,9 @@ public class PresenceConditionImpl extends NsdObjectImpl implements PresenceCond case NsdPackage.PRESENCE_CONDITION__REFERRED_BY_SUB_DATA_ATTRIBUTE: unsetReferredBySubDataAttribute(); return; + case NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC: + unsetRefersToDoc(); + return; } super.eUnset( featureID ); } @@ -908,6 +1059,8 @@ public class PresenceConditionImpl extends NsdObjectImpl implements PresenceCond return isSetReferredByDataAttribute(); case NsdPackage.PRESENCE_CONDITION__REFERRED_BY_SUB_DATA_ATTRIBUTE: return isSetReferredBySubDataAttribute(); + case NsdPackage.PRESENCE_CONDITION__REFERS_TO_DOC: + return isSetRefersToDoc(); } return super.eIsSet( featureID ); } @@ -946,4 +1099,18 @@ public class PresenceConditionImpl extends NsdObjectImpl implements PresenceCond return result.toString(); } + @Override + public boolean buildExplicitLinks( IRiseClipseConsole console, boolean forceUpdate ) { + if( super.buildExplicitLinks( console, forceUpdate ) ) return true; + + if( isSetDescID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getDescID() ); + if( doc != null ) setRefersToDoc( doc ); + } + } + + return false; + } + } //PresenceConditionImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceDataAttributeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceDataAttributeImpl.java index 6e73f61303dc4c86f7e241e01adcc2eb6750e285..bf6661b49102bed01fa87875698e6a607890e2f0 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceDataAttributeImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceDataAttributeImpl.java @@ -23,10 +23,13 @@ import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgAttributeType; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgUnderlyingType; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DefinedAttributeTypeKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceCDC; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceDataAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; +import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import org.eclipse.emf.common.notify.Notification; @@ -50,6 +53,7 @@ import org.eclipse.emf.ecore.util.EcoreUtil; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceDataAttributeImpl#getPresCond <em>Pres Cond</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceDataAttributeImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceDataAttributeImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceDataAttributeImpl#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceDataAttributeImpl#getType <em>Type</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceDataAttributeImpl#getTypeKind <em>Type Kind</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceDataAttributeImpl#getUnderlyingType <em>Underlying Type</em>}</li> @@ -149,6 +153,25 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser */ protected boolean presCondArgsIDESet; + /** + * The cached value of the '{@link #getRefersToPresCondArgsDoc() <em>Refers To Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToPresCondArgsDoc() + * @generated + * @ordered + */ + protected Doc refersToPresCondArgsDoc; + + /** + * This is true if the Refers To Pres Cond Args Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToPresCondArgsDocESet; + /** * The default value of the '{@link #getType() <em>Type</em>}' attribute. * <!-- begin-user-doc --> @@ -653,6 +676,122 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser return presCondArgsIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToPresCondArgsDoc() { + return refersToPresCondArgsDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc, NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = newRefersToPresCondArgsDoc; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc ) { + if( newRefersToPresCondArgsDoc != refersToPresCondArgsDoc ) { + NotificationChain msgs = null; + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + if( newRefersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) newRefersToPresCondArgsDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicSetRefersToPresCondArgsDoc( newRefersToPresCondArgsDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, newRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToPresCondArgsDoc( NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = null; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, null, + oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToPresCondArgsDoc() { + if( refersToPresCondArgsDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicUnsetRefersToPresCondArgsDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, null, null, + oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToPresCondArgsDoc() { + return refersToPresCondArgsDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -872,6 +1011,11 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser @Override public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + return basicSetRefersToPresCondArgsDoc( ( Doc ) otherEnd, msgs ); case NsdPackage.SERVICE_DATA_ATTRIBUTE__PARENT_SERVICE_CDC: if( eInternalContainer() != null ) msgs = eBasicRemoveFromContainer( msgs ); @@ -888,6 +1032,8 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser @Override public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return basicUnsetRefersToPresCondArgsDoc( msgs ); case NsdPackage.SERVICE_DATA_ATTRIBUTE__PARENT_SERVICE_CDC: return basicSetParentServiceCDC( null, msgs ); } @@ -923,6 +1069,8 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser return getPresCondArgs(); case NsdPackage.SERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: return getPresCondArgsID(); + case NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return getRefersToPresCondArgsDoc(); case NsdPackage.SERVICE_DATA_ATTRIBUTE__TYPE: return getType(); case NsdPackage.SERVICE_DATA_ATTRIBUTE__TYPE_KIND: @@ -958,6 +1106,9 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser case NsdPackage.SERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: setPresCondArgsID( ( String ) newValue ); return; + case NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + setRefersToPresCondArgsDoc( ( Doc ) newValue ); + return; case NsdPackage.SERVICE_DATA_ATTRIBUTE__TYPE: setType( ( String ) newValue ); return; @@ -1000,6 +1151,9 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser case NsdPackage.SERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: unsetPresCondArgsID(); return; + case NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + unsetRefersToPresCondArgsDoc(); + return; case NsdPackage.SERVICE_DATA_ATTRIBUTE__TYPE: unsetType(); return; @@ -1039,6 +1193,8 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser return isSetPresCondArgs(); case NsdPackage.SERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: return isSetPresCondArgsID(); + case NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return isSetRefersToPresCondArgsDoc(); case NsdPackage.SERVICE_DATA_ATTRIBUTE__TYPE: return isSetType(); case NsdPackage.SERVICE_DATA_ATTRIBUTE__TYPE_KIND: @@ -1072,6 +1228,8 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser return NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS; case NsdPackage.SERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: return NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID; + case NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC; default: return -1; } @@ -1114,6 +1272,8 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser return NsdPackage.SERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS; case NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID: return NsdPackage.SERVICE_DATA_ATTRIBUTE__PRES_COND_ARGS_ID; + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + return NsdPackage.SERVICE_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC; default: return -1; } @@ -1200,4 +1360,18 @@ public class ServiceDataAttributeImpl extends DocumentedClassImpl implements Ser return result.toString(); } + @Override + public boolean buildExplicitLinks( IRiseClipseConsole console, boolean forceUpdate ) { + if( super.buildExplicitLinks( console, forceUpdate ) ) return true; + + if( isSetPresCondArgsID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getPresCondArgsID() ); + if( doc != null ) setRefersToPresCondArgsDoc( doc ); + } + } + + return false; + } + } //ServiceDataAttributeImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceNSImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceNSImpl.java index 054633fcef67a5ecac9e34d14432373b809844d5..848d742ec255ee4b1c6f24c3c6ca618608592c51 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceNSImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/ServiceNSImpl.java @@ -24,6 +24,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSIdentification; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgNSdesc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgUML; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Changes; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.FunctionalConstraints; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceConditions; @@ -32,6 +33,8 @@ import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceCDCs; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceConstructedAttributes; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceNS; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceTypeRealizations; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; +import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import javax.xml.datatype.XMLGregorianCalendar; @@ -59,6 +62,7 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceNSImpl#getUmlDate <em>Uml Date</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceNSImpl#getUmlVersion <em>Uml Version</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceNSImpl#getDescID <em>Desc ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceNSImpl#getRefersToDoc <em>Refers To Doc</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceNSImpl#getChanges <em>Changes</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceNSImpl#getFunctionalConstraints <em>Functional Constraints</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ServiceNSImpl#getPresenceConditions <em>Presence Conditions</em>}</li> @@ -303,6 +307,25 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { */ protected boolean descIDESet; + /** + * The cached value of the '{@link #getRefersToDoc() <em>Refers To Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToDoc() + * @generated + * @ordered + */ + protected Doc refersToDoc; + + /** + * This is true if the Refers To Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToDocESet; + /** * The cached value of the '{@link #getChanges() <em>Changes</em>}' containment reference. * <!-- begin-user-doc --> @@ -1310,6 +1333,118 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { return descIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToDoc() { + return refersToDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToDoc( Doc newRefersToDoc, NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = newRefersToDoc; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.SERVICE_NS__REFERS_TO_DOC, oldRefersToDoc, newRefersToDoc, !oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToDoc( Doc newRefersToDoc ) { + if( newRefersToDoc != refersToDoc ) { + NotificationChain msgs = null; + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + if( newRefersToDoc != null ) + msgs = ( ( InternalEObject ) newRefersToDoc ).eInverseAdd( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + msgs = basicSetRefersToDoc( newRefersToDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, NsdPackage.SERVICE_NS__REFERS_TO_DOC, + newRefersToDoc, newRefersToDoc, !oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToDoc( NotificationChain msgs ) { + Doc oldRefersToDoc = refersToDoc; + refersToDoc = null; + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.SERVICE_NS__REFERS_TO_DOC, oldRefersToDoc, null, oldRefersToDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToDoc() { + if( refersToDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + msgs = basicUnsetRefersToDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToDocESet = refersToDocESet; + refersToDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, NsdPackage.SERVICE_NS__REFERS_TO_DOC, null, + null, oldRefersToDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToDoc() { + return refersToDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1630,6 +1765,11 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { @Override public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.SERVICE_NS__REFERS_TO_DOC: + if( refersToDoc != null ) + msgs = ( ( InternalEObject ) refersToDoc ).eInverseRemove( this, NsdPackage.DOC__REFERRED_BY_AG_NS_DESC, + Doc.class, msgs ); + return basicSetRefersToDoc( ( Doc ) otherEnd, msgs ); case NsdPackage.SERVICE_NS__CHANGES: if( changes != null ) msgs = ( ( InternalEObject ) changes ).eInverseRemove( this, @@ -1729,6 +1869,8 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { @Override public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.SERVICE_NS__REFERS_TO_DOC: + return basicUnsetRefersToDoc( msgs ); case NsdPackage.SERVICE_NS__CHANGES: return basicUnsetChanges( msgs ); case NsdPackage.SERVICE_NS__FUNCTIONAL_CONSTRAINTS: @@ -1771,6 +1913,8 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { return getUmlVersion(); case NsdPackage.SERVICE_NS__DESC_ID: return getDescID(); + case NsdPackage.SERVICE_NS__REFERS_TO_DOC: + return getRefersToDoc(); case NsdPackage.SERVICE_NS__CHANGES: return getChanges(); case NsdPackage.SERVICE_NS__FUNCTIONAL_CONSTRAINTS: @@ -1821,6 +1965,9 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { case NsdPackage.SERVICE_NS__DESC_ID: setDescID( ( String ) newValue ); return; + case NsdPackage.SERVICE_NS__REFERS_TO_DOC: + setRefersToDoc( ( Doc ) newValue ); + return; case NsdPackage.SERVICE_NS__CHANGES: setChanges( ( Changes ) newValue ); return; @@ -1878,6 +2025,9 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { case NsdPackage.SERVICE_NS__DESC_ID: unsetDescID(); return; + case NsdPackage.SERVICE_NS__REFERS_TO_DOC: + unsetRefersToDoc(); + return; case NsdPackage.SERVICE_NS__CHANGES: unsetChanges(); return; @@ -1927,6 +2077,8 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { return isSetUmlVersion(); case NsdPackage.SERVICE_NS__DESC_ID: return isSetDescID(); + case NsdPackage.SERVICE_NS__REFERS_TO_DOC: + return isSetRefersToDoc(); case NsdPackage.SERVICE_NS__CHANGES: return isSetChanges(); case NsdPackage.SERVICE_NS__FUNCTIONAL_CONSTRAINTS: @@ -1982,6 +2134,8 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { switch( derivedFeatureID ) { case NsdPackage.SERVICE_NS__DESC_ID: return NsdPackage.AG_NSDESC__DESC_ID; + case NsdPackage.SERVICE_NS__REFERS_TO_DOC: + return NsdPackage.AG_NSDESC__REFERS_TO_DOC; default: return -1; } @@ -2026,6 +2180,8 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { switch( baseFeatureID ) { case NsdPackage.AG_NSDESC__DESC_ID: return NsdPackage.SERVICE_NS__DESC_ID; + case NsdPackage.AG_NSDESC__REFERS_TO_DOC: + return NsdPackage.SERVICE_NS__REFERS_TO_DOC; default: return -1; } @@ -2087,4 +2243,18 @@ public class ServiceNSImpl extends CopyrightedImpl implements ServiceNS { return result.toString(); } + @Override + public boolean buildExplicitLinks( IRiseClipseConsole console, boolean forceUpdate ) { + if( super.buildExplicitLinks( console, forceUpdate ) ) return true; + + if( isSetDescID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getDescID() ); + if( doc != null ) setRefersToDoc( doc ); + } + } + + return false; + } + } //ServiceNSImpl diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/SubDataAttributeImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/SubDataAttributeImpl.java index 3452e3c7c40f86f634d301ea702a4f4f7c378030..b3df570d4797e0e5e3d413fdcd9afffe01e354f4 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/SubDataAttributeImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/SubDataAttributeImpl.java @@ -24,11 +24,13 @@ import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgAttributeType; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgAttributeTypeAndValues; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgPresenceCondition; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NS; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdFactory; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.SubDataAttribute; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import java.math.BigDecimal; @@ -55,6 +57,7 @@ import org.eclipse.emf.ecore.util.EcoreUtil; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataAttributeImpl#getPresCond <em>Pres Cond</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataAttributeImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataAttributeImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataAttributeImpl#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataAttributeImpl#isIsArray <em>Is Array</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataAttributeImpl#getMaxIndexAttribute <em>Max Index Attribute</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataAttributeImpl#getMinIndex <em>Min Index</em>}</li> @@ -159,6 +162,25 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData */ protected boolean presCondArgsIDESet; + /** + * The cached value of the '{@link #getRefersToPresCondArgsDoc() <em>Refers To Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToPresCondArgsDoc() + * @generated + * @ordered + */ + protected Doc refersToPresCondArgsDoc; + + /** + * This is true if the Refers To Pres Cond Args Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToPresCondArgsDocESet; + /** * The default value of the '{@link #isIsArray() <em>Is Array</em>}' attribute. * <!-- begin-user-doc --> @@ -1059,6 +1081,122 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData return presCondArgsIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToPresCondArgsDoc() { + return refersToPresCondArgsDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc, NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = newRefersToPresCondArgsDoc; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc ) { + if( newRefersToPresCondArgsDoc != refersToPresCondArgsDoc ) { + NotificationChain msgs = null; + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + if( newRefersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) newRefersToPresCondArgsDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicSetRefersToPresCondArgsDoc( newRefersToPresCondArgsDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, newRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToPresCondArgsDoc( NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = null; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, null, + oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToPresCondArgsDoc() { + if( refersToPresCondArgsDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicUnsetRefersToPresCondArgsDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC, null, null, + oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToPresCondArgsDoc() { + return refersToPresCondArgsDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1340,6 +1478,11 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData @Override public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + return basicSetRefersToPresCondArgsDoc( ( Doc ) otherEnd, msgs ); case NsdPackage.SUB_DATA_ATTRIBUTE__PARENT_CONSTRUCTED_ATTRIBUTE: if( eInternalContainer() != null ) msgs = eBasicRemoveFromContainer( msgs ); @@ -1361,6 +1504,8 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData @Override public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return basicUnsetRefersToPresCondArgsDoc( msgs ); case NsdPackage.SUB_DATA_ATTRIBUTE__PARENT_CONSTRUCTED_ATTRIBUTE: return basicSetParentConstructedAttribute( null, msgs ); case NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRESENCE_CONDITION: @@ -1398,6 +1543,8 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData return getPresCondArgs(); case NsdPackage.SUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: return getPresCondArgsID(); + case NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return getRefersToPresCondArgsDoc(); case NsdPackage.SUB_DATA_ATTRIBUTE__IS_ARRAY: return isIsArray(); case NsdPackage.SUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: @@ -1443,6 +1590,9 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData case NsdPackage.SUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: setPresCondArgsID( ( String ) newValue ); return; + case NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + setRefersToPresCondArgsDoc( ( Doc ) newValue ); + return; case NsdPackage.SUB_DATA_ATTRIBUTE__IS_ARRAY: setIsArray( ( Boolean ) newValue ); return; @@ -1500,6 +1650,9 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData case NsdPackage.SUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: unsetPresCondArgsID(); return; + case NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + unsetRefersToPresCondArgsDoc(); + return; case NsdPackage.SUB_DATA_ATTRIBUTE__IS_ARRAY: unsetIsArray(); return; @@ -1554,6 +1707,8 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData return isSetPresCondArgs(); case NsdPackage.SUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: return isSetPresCondArgsID(); + case NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return isSetRefersToPresCondArgsDoc(); case NsdPackage.SUB_DATA_ATTRIBUTE__IS_ARRAY: return isSetIsArray(); case NsdPackage.SUB_DATA_ATTRIBUTE__MAX_INDEX_ATTRIBUTE: @@ -1597,6 +1752,8 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData return NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS; case NsdPackage.SUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID: return NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID; + case NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC: + return NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC; default: return -1; } @@ -1655,6 +1812,8 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData return NsdPackage.SUB_DATA_ATTRIBUTE__PRES_COND_ARGS; case NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID: return NsdPackage.SUB_DATA_ATTRIBUTE__PRES_COND_ARGS_ID; + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + return NsdPackage.SUB_DATA_ATTRIBUTE__REFERS_TO_PRES_COND_ARGS_DOC; default: return -1; } @@ -1801,6 +1960,13 @@ public class SubDataAttributeImpl extends DocumentedClassImpl implements SubData } } + if( isSetPresCondArgsID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getPresCondArgsID() ); + if( doc != null ) setRefersToPresCondArgsDoc( doc ); + } + } + return false; } diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/SubDataObjectImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/SubDataObjectImpl.java index 59d078dc0357cdd9ad7df361adc15be0f48e051f..03384d7067c25efc069ad694684db99eeb655c9e 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/SubDataObjectImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/impl/SubDataObjectImpl.java @@ -25,10 +25,12 @@ import fr.centralesupelec.edf.riseclipse.iec61850.nsd.AgUnderlyingType; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.CDC; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DefinedAttributeTypeKind; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NS; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.PresenceCondition; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.SubDataObject; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.util.NsdResourceSetImpl; import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import org.eclipse.emf.common.notify.Notification; @@ -51,6 +53,7 @@ import org.eclipse.emf.ecore.util.EcoreUtil; * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataObjectImpl#getPresCond <em>Pres Cond</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataObjectImpl#getPresCondArgs <em>Pres Cond Args</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataObjectImpl#getPresCondArgsID <em>Pres Cond Args ID</em>}</li> + * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataObjectImpl#getRefersToPresCondArgsDoc <em>Refers To Pres Cond Args Doc</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataObjectImpl#isIsArray <em>Is Array</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataObjectImpl#getMaxIndexAttribute <em>Max Index Attribute</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.SubDataObjectImpl#getMinIndex <em>Min Index</em>}</li> @@ -156,6 +159,25 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj */ protected boolean presCondArgsIDESet; + /** + * The cached value of the '{@link #getRefersToPresCondArgsDoc() <em>Refers To Pres Cond Args Doc</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefersToPresCondArgsDoc() + * @generated + * @ordered + */ + protected Doc refersToPresCondArgsDoc; + + /** + * This is true if the Refers To Pres Cond Args Doc reference has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean refersToPresCondArgsDocESet; + /** * The default value of the '{@link #isIsArray() <em>Is Array</em>}' attribute. * <!-- begin-user-doc --> @@ -847,6 +869,122 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj return presCondArgsIDESet; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Doc getRefersToPresCondArgsDoc() { + return refersToPresCondArgsDoc; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc, NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = newRefersToPresCondArgsDoc; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.SET, + NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRefersToPresCondArgsDoc( Doc newRefersToPresCondArgsDoc ) { + if( newRefersToPresCondArgsDoc != refersToPresCondArgsDoc ) { + NotificationChain msgs = null; + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + if( newRefersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) newRefersToPresCondArgsDoc ).eInverseAdd( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicSetRefersToPresCondArgsDoc( newRefersToPresCondArgsDoc, msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = true; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.SET, + NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC, newRefersToPresCondArgsDoc, + newRefersToPresCondArgsDoc, !oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicUnsetRefersToPresCondArgsDoc( NotificationChain msgs ) { + Doc oldRefersToPresCondArgsDoc = refersToPresCondArgsDoc; + refersToPresCondArgsDoc = null; + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) { + ENotificationImpl notification = new ENotificationImpl( this, Notification.UNSET, + NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC, oldRefersToPresCondArgsDoc, null, + oldRefersToPresCondArgsDocESet ); + if( msgs == null ) + msgs = notification; + else + msgs.add( notification ); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void unsetRefersToPresCondArgsDoc() { + if( refersToPresCondArgsDoc != null ) { + NotificationChain msgs = null; + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + msgs = basicUnsetRefersToPresCondArgsDoc( msgs ); + if( msgs != null ) msgs.dispatch(); + } + else { + boolean oldRefersToPresCondArgsDocESet = refersToPresCondArgsDocESet; + refersToPresCondArgsDocESet = false; + if( eNotificationRequired() ) + eNotify( new ENotificationImpl( this, Notification.UNSET, + NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC, null, null, + oldRefersToPresCondArgsDocESet ) ); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean isSetRefersToPresCondArgsDoc() { + return refersToPresCondArgsDocESet; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1578,6 +1716,11 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj @Override public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + if( refersToPresCondArgsDoc != null ) + msgs = ( ( InternalEObject ) refersToPresCondArgsDoc ).eInverseRemove( this, + NsdPackage.DOC__REFERRED_BY_AG_PRESENCE_CONDITION, Doc.class, msgs ); + return basicSetRefersToPresCondArgsDoc( ( Doc ) otherEnd, msgs ); case NsdPackage.SUB_DATA_OBJECT__PARENT_CDC: if( eInternalContainer() != null ) msgs = eBasicRemoveFromContainer( msgs ); @@ -1616,6 +1759,8 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj @Override public NotificationChain eInverseRemove( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { switch( featureID ) { + case NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + return basicUnsetRefersToPresCondArgsDoc( msgs ); case NsdPackage.SUB_DATA_OBJECT__PARENT_CDC: return basicSetParentCDC( null, msgs ); case NsdPackage.SUB_DATA_OBJECT__REFERS_TO_CDC: @@ -1658,6 +1803,8 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj return getPresCondArgs(); case NsdPackage.SUB_DATA_OBJECT__PRES_COND_ARGS_ID: return getPresCondArgsID(); + case NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + return getRefersToPresCondArgsDoc(); case NsdPackage.SUB_DATA_OBJECT__IS_ARRAY: return isIsArray(); case NsdPackage.SUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE: @@ -1705,6 +1852,9 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj case NsdPackage.SUB_DATA_OBJECT__PRES_COND_ARGS_ID: setPresCondArgsID( ( String ) newValue ); return; + case NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + setRefersToPresCondArgsDoc( ( Doc ) newValue ); + return; case NsdPackage.SUB_DATA_OBJECT__IS_ARRAY: setIsArray( ( Boolean ) newValue ); return; @@ -1765,6 +1915,9 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj case NsdPackage.SUB_DATA_OBJECT__PRES_COND_ARGS_ID: unsetPresCondArgsID(); return; + case NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + unsetRefersToPresCondArgsDoc(); + return; case NsdPackage.SUB_DATA_OBJECT__IS_ARRAY: unsetIsArray(); return; @@ -1822,6 +1975,8 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj return isSetPresCondArgs(); case NsdPackage.SUB_DATA_OBJECT__PRES_COND_ARGS_ID: return isSetPresCondArgsID(); + case NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + return isSetRefersToPresCondArgsDoc(); case NsdPackage.SUB_DATA_OBJECT__IS_ARRAY: return isSetIsArray(); case NsdPackage.SUB_DATA_OBJECT__MAX_INDEX_ATTRIBUTE: @@ -1867,6 +2022,8 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj return NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS; case NsdPackage.SUB_DATA_OBJECT__PRES_COND_ARGS_ID: return NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID; + case NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC: + return NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC; default: return -1; } @@ -1913,6 +2070,8 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj return NsdPackage.SUB_DATA_OBJECT__PRES_COND_ARGS; case NsdPackage.AG_PRESENCE_CONDITION__PRES_COND_ARGS_ID: return NsdPackage.SUB_DATA_OBJECT__PRES_COND_ARGS_ID; + case NsdPackage.AG_PRESENCE_CONDITION__REFERS_TO_PRES_COND_ARGS_DOC: + return NsdPackage.SUB_DATA_OBJECT__REFERS_TO_PRES_COND_ARGS_DOC; default: return -1; } @@ -2095,6 +2254,13 @@ public class SubDataObjectImpl extends DocumentedClassImpl implements SubDataObj } } + if( isSetPresCondArgsID() ) { + if( this.eResource().getResourceSet() instanceof NsdResourceSetImpl ) { + Doc doc = (( NsdResourceSetImpl ) this.eResource().getResourceSet() ).findDoc( getPresCondArgsID() ); + if( doc != null ) setRefersToPresCondArgsDoc( doc ); + } + } + return false; } diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdResourceSetImpl.java b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdResourceSetImpl.java index b2f72334ef78308572d8df97d8465084a837e8e0..c6e97aca0ae004157bcde0d8fcf469a9cf16a62c 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdResourceSetImpl.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.nsd/src/fr/centralesupelec/edf/riseclipse/iec61850/nsd/util/NsdResourceSetImpl.java @@ -23,13 +23,17 @@ import java.io.IOException; import java.util.HashMap; import java.util.Iterator; import java.util.Map; +import java.util.Optional; import java.util.stream.Stream; import org.eclipse.emf.ecore.resource.Resource; + +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.Doc; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.LNClass; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.LNClasses; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NS; +import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NSDoc; import fr.centralesupelec.edf.riseclipse.util.AbstractRiseClipseConsole; import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; import fr.centralesupelec.edf.riseclipse.util.RiseClipseResourceSet; @@ -38,11 +42,13 @@ import fr.centralesupelec.edf.riseclipse.util.RiseClipseResourceSet; public class NsdResourceSetImpl extends RiseClipseResourceSet { private Map< String, NS > nsdResources; + private Map< String, NSDoc > nsdocResources; public NsdResourceSetImpl( boolean strictContent, IRiseClipseConsole console ) { super( strictContent, console ); - nsdResources = new HashMap< String, NS >(); + nsdResources = new HashMap<>(); + nsdocResources = new HashMap<>(); } @Override @@ -60,18 +66,29 @@ public class NsdResourceSetImpl extends RiseClipseResourceSet { return; } DocumentRoot root = (DocumentRoot) resource.getContents().get( 0 ); - if( ! ( root.getNS() instanceof NS )) { - AbstractRiseClipseConsole.getConsole().error( "The file " + resource.getURI() + " is not an NSD file" ); - this.getResources().remove( resource ); + if( root.getNS() != null ) { + NS ns = ( NS ) root.getNS(); + if( nsdResources.get( ns.getId() ) != null ) { + AbstractRiseClipseConsole.getConsole().error( "There is already an NSD file with is " + ns.getId() + ", " + resource.getURI() + " is ignored" ); + this.getResources().remove( resource ); + return; + } + nsdResources.put( ns.getId(), ns ); return; } - NS ns = ( NS ) root.getNS(); - if( nsdResources.get( ns.getId() ) != null ) { - AbstractRiseClipseConsole.getConsole().error( "There is already an NSD file with is " + ns.getId() + ", " + resource.getURI() + " is ignored" ); - this.getResources().remove( resource ); + if( root.getNSDoc() != null ) { + NSDoc nsdoc = ( NSDoc ) root.getNSDoc(); + if( nsdocResources.get( nsdoc.getId() ) != null ) { + AbstractRiseClipseConsole.getConsole().error( "There is already an NSDoc file with is " + nsdoc.getId() + ", " + resource.getURI() + " is ignored" ); + this.getResources().remove( resource ); + return; + } + nsdocResources.put( nsdoc.getId(), nsdoc ); return; } - nsdResources.put( ns.getId(), ns ); + AbstractRiseClipseConsole.getConsole().error( "The file " + resource.getURI() + " is not an NSD file" ); + this.getResources().remove( resource ); + return; } /* (non-Javadoc) @@ -116,8 +133,9 @@ public class NsdResourceSetImpl extends RiseClipseResourceSet { for( Resource resource : getResources() ) { if( resource instanceof NsdResourceImpl ) { DocumentRoot root = (DocumentRoot) resource.getContents().get( 0 ); - NS ns = ( NS ) root.getNS(); - ns.buildExplicitLinks( console, true ); + if( root.getNS() != null ) { + root.getNS().buildExplicitLinks( console, true ); + } } } @@ -233,28 +251,33 @@ public class NsdResourceSetImpl extends RiseClipseResourceSet { */ public Stream< LNClass > getLNClassStream() { - if( nsdResources.isEmpty() ) { - return null; - } - Stream< LNClass > lnClassStream = null; + Stream< LNClass > lnClassStream = Stream.empty(); Iterator< NS > it = nsdResources.values().iterator(); while( it.hasNext() ) { LNClasses lnClasses = it.next().getLNClasses(); if( lnClasses != null ) { - if( lnClassStream == null ) { - lnClassStream = lnClasses.getLNClass().stream(); - } - else { - // Warning: Resource leak: 'lnClassStream' is not closed at this location ?? - //lnClassStream = Stream.concat( lnClassStream, lnClasses.getLNClass().stream() ); - Stream< LNClass > tmp = Stream.concat( lnClassStream, lnClasses.getLNClass().stream() ); - lnClassStream = tmp; - } + // Warning: Resource leak: 'lnClassStream' is not closed at this location ?? + //lnClassStream = Stream.concat( lnClassStream, lnClasses.getLNClass().stream() ); + Stream< LNClass > tmp = Stream.concat( lnClassStream, lnClasses.getLNClass().stream() ); + lnClassStream = tmp; } } return lnClassStream; } + public Doc findDoc( String id ) { + for( NSDoc nsdoc : nsdocResources.values() ) { + Optional< Doc > doc = nsdoc + .getDoc() + .stream() + .filter( d -> d.getId().equals( id )) + .findFirst(); + if( doc.isPresent() ) { + return doc.get(); + } + } + return null; + } }