Commit 8736980f authored by Dominique Marcadet's avatar Dominique Marcadet

add links from DataAttribute to Enumeration and ConstructedAttribute

parent 6e21a087
...@@ -573,3 +573,7 @@ _UI_PresenceCondition_refersToDoc_feature = Refers To Doc ...@@ -573,3 +573,7 @@ _UI_PresenceCondition_refersToDoc_feature = Refers To Doc
_UI_AgPresenceCondition_refersToPresCondArgsDoc_feature = Refers To Pres Cond Args Doc _UI_AgPresenceCondition_refersToPresCondArgsDoc_feature = Refers To Pres Cond Args Doc
_UI_AgPresenceConditionDerivedStatistics_refersToDsPresCondArgsDoc_feature = Refers To Ds Pres Cond Args Doc _UI_AgPresenceConditionDerivedStatistics_refersToDsPresCondArgsDoc_feature = Refers To Ds Pres Cond Args Doc
_UI_AgNSdesc_refersToDoc_feature = Refers To Doc _UI_AgNSdesc_refersToDoc_feature = Refers To Doc
_UI_ConstructedAttribute_referredByDataAttribute_feature = Referred By Data Attribute
_UI_DataAttribute_refersToConstructedAttribute_feature = Refers To Constructed Attribute
_UI_DataAttribute_refersToEnumeration_feature = Refers To Enumeration
_UI_Enumeration_referredByDataAttribute_feature = Referred By Data Attribute
...@@ -65,6 +65,7 @@ public class ConstructedAttributeItemProvider extends TitledClassItemProvider { ...@@ -65,6 +65,7 @@ public class ConstructedAttributeItemProvider extends TitledClassItemProvider {
super.getPropertyDescriptors( object ); super.getPropertyDescriptors( object );
addNamePropertyDescriptor( object ); addNamePropertyDescriptor( object );
addReferredByDataAttributePropertyDescriptor( object );
} }
return itemPropertyDescriptors; return itemPropertyDescriptors;
} }
...@@ -91,6 +92,28 @@ public class ConstructedAttributeItemProvider extends TitledClassItemProvider { ...@@ -91,6 +92,28 @@ public class ConstructedAttributeItemProvider extends TitledClassItemProvider {
null ) ); null ) );
} }
/**
* This adds a property descriptor for the Referred By Data Attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addReferredByDataAttributePropertyDescriptor( Object object ) {
itemPropertyDescriptors.add( createItemPropertyDescriptor(
( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(),
getResourceLocator(),
getString( "_UI_ConstructedAttribute_referredByDataAttribute_feature" ),
getString( "_UI_PropertyDescriptor_description",
"_UI_ConstructedAttribute_referredByDataAttribute_feature", "_UI_ConstructedAttribute_type" ),
NsdPackage.Literals.CONSTRUCTED_ATTRIBUTE__REFERRED_BY_DATA_ATTRIBUTE,
true,
false,
true,
null,
null,
null ) );
}
/** /**
* This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
* {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
......
...@@ -88,6 +88,8 @@ public class DataAttributeItemProvider extends DocumentedClassItemProvider { ...@@ -88,6 +88,8 @@ public class DataAttributeItemProvider extends DocumentedClassItemProvider {
addReferredByDataAttributeAsSizeAttributePropertyDescriptor( object ); addReferredByDataAttributeAsSizeAttributePropertyDescriptor( object );
addReferredByDataAttributeAsMaxIndexAttributePropertyDescriptor( object ); addReferredByDataAttributeAsMaxIndexAttributePropertyDescriptor( object );
addRefersToBasicTypePropertyDescriptor( object ); addRefersToBasicTypePropertyDescriptor( object );
addRefersToConstructedAttributePropertyDescriptor( object );
addRefersToEnumerationPropertyDescriptor( object );
} }
return itemPropertyDescriptors; return itemPropertyDescriptors;
} }
...@@ -512,6 +514,50 @@ public class DataAttributeItemProvider extends DocumentedClassItemProvider { ...@@ -512,6 +514,50 @@ public class DataAttributeItemProvider extends DocumentedClassItemProvider {
null ) ); null ) );
} }
/**
* This adds a property descriptor for the Refers To Constructed Attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addRefersToConstructedAttributePropertyDescriptor( Object object ) {
itemPropertyDescriptors.add(
createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(),
getResourceLocator(),
getString( "_UI_DataAttribute_refersToConstructedAttribute_feature" ),
getString( "_UI_PropertyDescriptor_description",
"_UI_DataAttribute_refersToConstructedAttribute_feature", "_UI_DataAttribute_type" ),
NsdPackage.Literals.DATA_ATTRIBUTE__REFERS_TO_CONSTRUCTED_ATTRIBUTE,
true,
false,
true,
null,
null,
null ) );
}
/**
* This adds a property descriptor for the Refers To Enumeration feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addRefersToEnumerationPropertyDescriptor( Object object ) {
itemPropertyDescriptors.add(
createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(),
getResourceLocator(),
getString( "_UI_DataAttribute_refersToEnumeration_feature" ),
getString( "_UI_PropertyDescriptor_description",
"_UI_DataAttribute_refersToEnumeration_feature", "_UI_DataAttribute_type" ),
NsdPackage.Literals.DATA_ATTRIBUTE__REFERS_TO_ENUMERATION,
true,
false,
true,
null,
null,
null ) );
}
/** /**
* This adds a property descriptor for the Pres Cond feature. * This adds a property descriptor for the Pres Cond feature.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
......
...@@ -68,6 +68,7 @@ public class EnumerationItemProvider extends TitledClassItemProvider { ...@@ -68,6 +68,7 @@ public class EnumerationItemProvider extends TitledClassItemProvider {
addNamePropertyDescriptor( object ); addNamePropertyDescriptor( object );
addRefersToBaseEnumerationPropertyDescriptor( object ); addRefersToBaseEnumerationPropertyDescriptor( object );
addReferredByEnumerationAsBasePropertyDescriptor( object ); addReferredByEnumerationAsBasePropertyDescriptor( object );
addReferredByDataAttributePropertyDescriptor( object );
} }
return itemPropertyDescriptors; return itemPropertyDescriptors;
} }
...@@ -160,6 +161,28 @@ public class EnumerationItemProvider extends TitledClassItemProvider { ...@@ -160,6 +161,28 @@ public class EnumerationItemProvider extends TitledClassItemProvider {
null ) ); null ) );
} }
/**
* This adds a property descriptor for the Referred By Data Attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addReferredByDataAttributePropertyDescriptor( Object object ) {
itemPropertyDescriptors.add(
createItemPropertyDescriptor( ( ( ComposeableAdapterFactory ) adapterFactory ).getRootAdapterFactory(),
getResourceLocator(),
getString( "_UI_Enumeration_referredByDataAttribute_feature" ),
getString( "_UI_PropertyDescriptor_description",
"_UI_Enumeration_referredByDataAttribute_feature", "_UI_Enumeration_type" ),
NsdPackage.Literals.ENUMERATION__REFERRED_BY_DATA_ATTRIBUTE,
true,
false,
true,
null,
null,
null ) );
}
/** /**
* This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
* {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
......
...@@ -641,6 +641,9 @@ ...@@ -641,6 +641,9 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="parentServiceTypeRealizations" <eStructuralFeatures xsi:type="ecore:EReference" name="parentServiceTypeRealizations"
ordered="false" eType="#//ServiceTypeRealizations" transient="true" unsettable="true" ordered="false" eType="#//ServiceTypeRealizations" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//ServiceTypeRealizations/serviceTypeRealization"/> resolveProxies="false" eOpposite="#//ServiceTypeRealizations/serviceTypeRealization"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredByDataAttribute"
ordered="false" upperBound="-1" eType="#//DataAttribute" transient="true"
unsettable="true" resolveProxies="false" eOpposite="#//DataAttribute/refersToConstructedAttribute"/>
</eClassifiers> </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ConstructedAttributes" eSuperTypes="#//NsdObject"> <eClassifiers xsi:type="ecore:EClass" name="ConstructedAttributes" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
...@@ -762,6 +765,12 @@ ...@@ -762,6 +765,12 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToBasicType" ordered="false" <eStructuralFeatures xsi:type="ecore:EReference" name="refersToBasicType" ordered="false"
eType="#//BasicType" transient="true" unsettable="true" resolveProxies="false" eType="#//BasicType" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//BasicType/referredByDataAttribute"/> eOpposite="#//BasicType/referredByDataAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToConstructedAttribute"
ordered="false" eType="#//ConstructedAttribute" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//ConstructedAttribute/referredByDataAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToEnumeration" ordered="false"
eType="#//Enumeration" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//Enumeration/referredByDataAttribute"/>
</eClassifiers> </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DataObject" eSuperTypes="#//DocumentedClass #//AgPresenceCondition #//AgPresenceConditionDerivedStatistics #//AgUnderlyingType"> <eClassifiers xsi:type="ecore:EClass" name="DataObject" eSuperTypes="#//DocumentedClass #//AgPresenceCondition #//AgPresenceConditionDerivedStatistics #//AgUnderlyingType">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
...@@ -1001,6 +1010,9 @@ ...@@ -1001,6 +1010,9 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="referredByEnumerationAsBase" <eStructuralFeatures xsi:type="ecore:EReference" name="referredByEnumerationAsBase"
ordered="false" upperBound="-1" eType="#//Enumeration" transient="true" unsettable="true" ordered="false" upperBound="-1" eType="#//Enumeration" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//Enumeration/refersToBaseEnumeration"/> resolveProxies="false" eOpposite="#//Enumeration/refersToBaseEnumeration"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredByDataAttribute"
ordered="false" upperBound="-1" eType="#//DataAttribute" transient="true"
unsettable="true" resolveProxies="false" eOpposite="#//DataAttribute/refersToEnumeration"/>
</eClassifiers> </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Enumerations" eSuperTypes="#//NsdObject"> <eClassifiers xsi:type="ecore:EClass" name="Enumerations" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData"> <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
...@@ -1285,6 +1297,10 @@ ...@@ -1285,6 +1297,10 @@
<eParameters name="basicTypeName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eParameters name="basicTypeName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eParameters name="console" eType="#//IRiseClipseConsole"/> <eParameters name="console" eType="#//IRiseClipseConsole"/>
</eOperations> </eOperations>
<eOperations name="findConstructedAttribute" eType="#//ConstructedAttribute">
<eParameters name="constructedAttributeName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eParameters name="console" eType="#//IRiseClipseConsole"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="changes" ordered="false" <eStructuralFeatures xsi:type="ecore:EReference" name="changes" ordered="false"
eType="#//Changes" unsettable="true" containment="true" resolveProxies="false" eType="#//Changes" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//Changes/parentNS"> eOpposite="#//Changes/parentNS">
......
...@@ -203,6 +203,7 @@ ...@@ -203,6 +203,7 @@
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//ConstructedAttribute/name"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//ConstructedAttribute/name"/>
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//ConstructedAttribute/parentConstructedAttributes"/> <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//ConstructedAttribute/parentConstructedAttributes"/>
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//ConstructedAttribute/parentServiceTypeRealizations"/> <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//ConstructedAttribute/parentServiceTypeRealizations"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//ConstructedAttribute/referredByDataAttribute"/>
</genClasses> </genClasses>
<genClasses ecoreClass="nsd.ecore#//ConstructedAttributes"> <genClasses ecoreClass="nsd.ecore#//ConstructedAttributes">
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//ConstructedAttributes/constructedAttribute"/> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//ConstructedAttributes/constructedAttribute"/>
...@@ -229,6 +230,8 @@ ...@@ -229,6 +230,8 @@
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//DataAttribute/referredByDataAttributeAsSizeAttribute"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//DataAttribute/referredByDataAttributeAsSizeAttribute"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//DataAttribute/referredByDataAttributeAsMaxIndexAttribute"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//DataAttribute/referredByDataAttributeAsMaxIndexAttribute"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//DataAttribute/refersToBasicType"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//DataAttribute/refersToBasicType"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//DataAttribute/refersToConstructedAttribute"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//DataAttribute/refersToEnumeration"/>
</genClasses> </genClasses>
<genClasses ecoreClass="nsd.ecore#//DataObject"> <genClasses ecoreClass="nsd.ecore#//DataObject">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DataObject/name"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute nsd.ecore#//DataObject/name"/>
...@@ -271,6 +274,7 @@ ...@@ -271,6 +274,7 @@
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//Enumeration/parentEnumerations"/> <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference nsd.ecore#//Enumeration/parentEnumerations"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Enumeration/refersToBaseEnumeration"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Enumeration/refersToBaseEnumeration"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Enumeration/referredByEnumerationAsBase"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Enumeration/referredByEnumerationAsBase"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference nsd.ecore#//Enumeration/referredByDataAttribute"/>
</genClasses> </genClasses>
<genClasses ecoreClass="nsd.ecore#//Enumerations"> <genClasses ecoreClass="nsd.ecore#//Enumerations">
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//Enumerations/enumeration"/> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//Enumerations/enumeration"/>
...@@ -348,6 +352,10 @@ ...@@ -348,6 +352,10 @@
<genParameters ecoreParameter="nsd.ecore#//NS/findBasicType/basicTypeName"/> <genParameters ecoreParameter="nsd.ecore#//NS/findBasicType/basicTypeName"/>
<genParameters ecoreParameter="nsd.ecore#//NS/findBasicType/console"/> <genParameters ecoreParameter="nsd.ecore#//NS/findBasicType/console"/>
</genOperations> </genOperations>
<genOperations ecoreOperation="nsd.ecore#//NS/findConstructedAttribute">
<genParameters ecoreParameter="nsd.ecore#//NS/findConstructedAttribute/constructedAttributeName"/>
<genParameters ecoreParameter="nsd.ecore#//NS/findConstructedAttribute/console"/>
</genOperations>
</genClasses> </genClasses>
<genClasses ecoreClass="nsd.ecore#//NSDoc"> <genClasses ecoreClass="nsd.ecore#//NSDoc">
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//NSDoc/doc"/> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference nsd.ecore#//NSDoc/doc"/>
......
...@@ -34,6 +34,7 @@ import org.eclipse.emf.common.util.EList; ...@@ -34,6 +34,7 @@ import org.eclipse.emf.common.util.EList;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getName <em>Name</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getName <em>Name</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getParentConstructedAttributes <em>Parent Constructed Attributes</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getParentConstructedAttributes <em>Parent Constructed Attributes</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getParentServiceTypeRealizations <em>Parent Service Type Realizations</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getParentServiceTypeRealizations <em>Parent Service Type Realizations</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getReferredByDataAttribute <em>Referred By Data Attribute</em>}</li>
* </ul> * </ul>
* *
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getConstructedAttribute() * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getConstructedAttribute()
...@@ -183,4 +184,41 @@ public interface ConstructedAttribute extends TitledClass { ...@@ -183,4 +184,41 @@ public interface ConstructedAttribute extends TitledClass {
*/ */
void setParentServiceTypeRealizations( ServiceTypeRealizations value ); void setParentServiceTypeRealizations( ServiceTypeRealizations value );
/**
* Returns the value of the '<em><b>Referred By Data Attribute</b></em>' reference list.
* The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute}.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToConstructedAttribute <em>Refers To Constructed Attribute</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Referred By Data Attribute</em>' reference list.
* @see #isSetReferredByDataAttribute()
* @see #unsetReferredByDataAttribute()
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getConstructedAttribute_ReferredByDataAttribute()
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToConstructedAttribute
* @model opposite="refersToConstructedAttribute" resolveProxies="false" unsettable="true" transient="true" ordered="false"
* @generated
*/
EList< DataAttribute > getReferredByDataAttribute();
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getReferredByDataAttribute <em>Referred By Data Attribute</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetReferredByDataAttribute()
* @see #getReferredByDataAttribute()
* @generated
*/
void unsetReferredByDataAttribute();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getReferredByDataAttribute <em>Referred By Data Attribute</em>}' reference list is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>Referred By Data Attribute</em>' reference list is set.
* @see #unsetReferredByDataAttribute()
* @see #getReferredByDataAttribute()
* @generated
*/
boolean isSetReferredByDataAttribute();
} // ConstructedAttribute } // ConstructedAttribute
...@@ -42,6 +42,8 @@ import org.eclipse.emf.common.util.EList; ...@@ -42,6 +42,8 @@ import org.eclipse.emf.common.util.EList;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getReferredByDataAttributeAsSizeAttribute <em>Referred By Data Attribute As Size Attribute</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getReferredByDataAttributeAsSizeAttribute <em>Referred By Data Attribute As Size Attribute</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getReferredByDataAttributeAsMaxIndexAttribute <em>Referred By Data Attribute As Max Index Attribute</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getReferredByDataAttributeAsMaxIndexAttribute <em>Referred By Data Attribute As Max Index Attribute</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToBasicType <em>Refers To Basic Type</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToBasicType <em>Refers To Basic Type</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToConstructedAttribute <em>Refers To Constructed Attribute</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToEnumeration <em>Refers To Enumeration</em>}</li>
* </ul> * </ul>
* *
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDataAttribute() * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDataAttribute()
...@@ -615,4 +617,106 @@ public interface DataAttribute ...@@ -615,4 +617,106 @@ public interface DataAttribute
*/ */
boolean isSetRefersToBasicType(); boolean isSetRefersToBasicType();
/**
* Returns the value of the '<em><b>Refers To Constructed Attribute</b></em>' reference.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getReferredByDataAttribute <em>Referred By Data Attribute</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Refers To Constructed Attribute</em>' reference.
* @see #isSetRefersToConstructedAttribute()
* @see #unsetRefersToConstructedAttribute()
* @see #setRefersToConstructedAttribute(ConstructedAttribute)
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDataAttribute_RefersToConstructedAttribute()
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute#getReferredByDataAttribute
* @model opposite="referredByDataAttribute" resolveProxies="false" unsettable="true" transient="true" ordered="false"
* @generated
*/
ConstructedAttribute getRefersToConstructedAttribute();
/**
* Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToConstructedAttribute <em>Refers To Constructed Attribute</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Refers To Constructed Attribute</em>' reference.
* @see #isSetRefersToConstructedAttribute()
* @see #unsetRefersToConstructedAttribute()
* @see #getRefersToConstructedAttribute()
* @generated
*/
void setRefersToConstructedAttribute( ConstructedAttribute value );
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToConstructedAttribute <em>Refers To Constructed Attribute</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetRefersToConstructedAttribute()
* @see #getRefersToConstructedAttribute()
* @see #setRefersToConstructedAttribute(ConstructedAttribute)
* @generated
*/
void unsetRefersToConstructedAttribute();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToConstructedAttribute <em>Refers To Constructed Attribute</em>}' reference is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>Refers To Constructed Attribute</em>' reference is set.
* @see #unsetRefersToConstructedAttribute()
* @see #getRefersToConstructedAttribute()
* @see #setRefersToConstructedAttribute(ConstructedAttribute)
* @generated
*/
boolean isSetRefersToConstructedAttribute();
/**
* Returns the value of the '<em><b>Refers To Enumeration</b></em>' reference.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getReferredByDataAttribute <em>Referred By Data Attribute</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Refers To Enumeration</em>' reference.
* @see #isSetRefersToEnumeration()
* @see #unsetRefersToEnumeration()
* @see #setRefersToEnumeration(Enumeration)
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getDataAttribute_RefersToEnumeration()
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getReferredByDataAttribute
* @model opposite="referredByDataAttribute" resolveProxies="false" unsettable="true" transient="true" ordered="false"
* @generated
*/
Enumeration getRefersToEnumeration();
/**
* Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToEnumeration <em>Refers To Enumeration</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Refers To Enumeration</em>' reference.
* @see #isSetRefersToEnumeration()
* @see #unsetRefersToEnumeration()
* @see #getRefersToEnumeration()
* @generated
*/
void setRefersToEnumeration( Enumeration value );
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToEnumeration <em>Refers To Enumeration</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetRefersToEnumeration()
* @see #getRefersToEnumeration()
* @see #setRefersToEnumeration(Enumeration)
* @generated
*/
void unsetRefersToEnumeration();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToEnumeration <em>Refers To Enumeration</em>}' reference is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>Refers To Enumeration</em>' reference is set.
* @see #unsetRefersToEnumeration()
* @see #getRefersToEnumeration()
* @see #setRefersToEnumeration(Enumeration)
* @generated
*/
boolean isSetRefersToEnumeration();
} // DataAttribute } // DataAttribute
...@@ -36,6 +36,7 @@ import org.eclipse.emf.common.util.EList; ...@@ -36,6 +36,7 @@ import org.eclipse.emf.common.util.EList;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getParentEnumerations <em>Parent Enumerations</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getParentEnumerations <em>Parent Enumerations</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getRefersToBaseEnumeration <em>Refers To Base Enumeration</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getRefersToBaseEnumeration <em>Refers To Base Enumeration</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getReferredByEnumerationAsBase <em>Referred By Enumeration As Base</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getReferredByEnumerationAsBase <em>Referred By Enumeration As Base</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getReferredByDataAttribute <em>Referred By Data Attribute</em>}</li>
* </ul> * </ul>
* *
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getEnumeration() * @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getEnumeration()
...@@ -307,4 +308,41 @@ public interface Enumeration extends TitledClass { ...@@ -307,4 +308,41 @@ public interface Enumeration extends TitledClass {
*/ */
boolean isSetReferredByEnumerationAsBase(); boolean isSetReferredByEnumerationAsBase();
/**
* Returns the value of the '<em><b>Referred By Data Attribute</b></em>' reference list.
* The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute}.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToEnumeration <em>Refers To Enumeration</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Referred By Data Attribute</em>' reference list.
* @see #isSetReferredByDataAttribute()
* @see #unsetReferredByDataAttribute()
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage#getEnumeration_ReferredByDataAttribute()
* @see fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute#getRefersToEnumeration
* @model opposite="refersToEnumeration" resolveProxies="false" unsettable="true" transient="true" ordered="false"
* @generated
*/
EList< DataAttribute > getReferredByDataAttribute();
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getReferredByDataAttribute <em>Referred By Data Attribute</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetReferredByDataAttribute()
* @see #getReferredByDataAttribute()
* @generated
*/
void unsetReferredByDataAttribute();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.Enumeration#getReferredByDataAttribute <em>Referred By Data Attribute</em>}' reference list is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>Referred By Data Attribute</em>' reference list is set.
* @see #unsetReferredByDataAttribute()
* @see #getReferredByDataAttribute()
* @generated
*/
boolean isSetReferredByDataAttribute();
} // Enumeration } // Enumeration
...@@ -651,4 +651,12 @@ public interface NS extends Copyrighted, AgNSIdentification, AgUML, AgNSdesc { ...@@ -651,4 +651,12 @@ public interface NS extends Copyrighted, AgNSIdentification, AgUML, AgNSdesc {
*/ */
BasicType findBasicType( String basicTypeName, IRiseClipseConsole console ); BasicType findBasicType( String basicTypeName, IRiseClipseConsole console );
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model consoleType="fr.centralesupelec.edf.riseclipse.iec61850.nsd.IRiseClipseConsole"
* @generated
*/
ConstructedAttribute findConstructedAttribute( String constructedAttributeName, IRiseClipseConsole console );
} // NS } // NS
...@@ -21,6 +21,7 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl; ...@@ -21,6 +21,7 @@ package fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl;
import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttribute;
import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttributes; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ConstructedAttributes;
import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DataAttribute;
import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.NsdPackage;
import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceTypeRealizations; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.ServiceTypeRealizations;
import fr.centralesupelec.edf.riseclipse.iec61850.nsd.SubDataAttribute; import fr.centralesupelec.edf.riseclipse.iec61850.nsd.SubDataAttribute;
...@@ -37,6 +38,7 @@ import org.eclipse.emf.ecore.InternalEObject; ...@@ -37,6 +38,7 @@ import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
import org.eclipse.emf.ecore.util.EObjectWithInverseEList;
import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.util.InternalEList; import org.eclipse.emf.ecore.util.InternalEList;
...@@ -52,6 +54,7 @@ import org.eclipse.emf.ecore.util.InternalEList; ...@@ -52,6 +54,7 @@ import org.eclipse.emf.ecore.util.InternalEList;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ConstructedAttributeImpl#getName <em>Name</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ConstructedAttributeImpl#getName <em>Name</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ConstructedAttributeImpl#getParentConstructedAttributes <em>Parent Constructed Attributes</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ConstructedAttributeImpl#getParentConstructedAttributes <em>Parent Constructed Attributes</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ConstructedAttributeImpl#getParentServiceTypeRealizations <em>Parent Service Type Realizations</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ConstructedAttributeImpl#getParentServiceTypeRealizations <em>Parent Service Type Realizations</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.nsd.impl.ConstructedAttributeImpl#getReferredByDataAttribute <em>Referred By Data Attribute</em>}</li>
* </ul> * </ul>
* *
* @generated * @generated
...@@ -96,6 +99,16 @@ public class ConstructedAttributeImpl extends TitledClassImpl implements Constru ...@@ -96,6 +99,16 @@ public class ConstructedAttributeImpl extends TitledClassImpl implements Constru
*/ */
protected boolean nameESet; protected boolean nameESet;
/**
* The cached value of the '{@link #getReferredByDataAttribute() <em>Referred By Data Attribute</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getReferredByDataAttribute()
* @generated
* @ordered
*/
protected EList< DataAttribute > referredByDataAttribute;
/** /**
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
...@@ -303,6 +316,41 @@ public class ConstructedAttributeImpl extends TitledClassImpl implements Constru ...@@ -303,6 +316,41 @@ public class ConstructedAttributeImpl extends TitledClassImpl implements Constru
newParentServiceTypeRealizations, newParentServiceTypeRealizations ) ); newParentServiceTypeRealizations, newParentServiceTypeRealizations ) );
} }
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EList< DataAttribute > getReferredByDataAttribute() {
if( referredByDataAttribute == null ) {
referredByDataAttribute = new EObjectWithInverseEList.Unsettable< DataAttribute >( DataAttribute.class,
this, NsdPackage.CONSTRUCTED_ATTRIBUTE__REFERRED_BY_DATA_ATTRIBUTE,
NsdPackage.DATA_ATTRIBUTE__REFERS_TO_CONSTRUCTED_ATTRIBUTE );
}
return referredByDataAttribute;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void unsetReferredByDataAttribute() {
if( referredByDataAttribute != null ) ( ( InternalEList.Unsettable< ? > ) referredByDataAttribute ).unset();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override