Commit 749a64fa authored by Dominique Marcadet's avatar Dominique Marcadet

correct explicit links from FCDA

An FCDA may refer to one or several (when daName is missing) DA or BDA.
The previous links were wrong or not needed
parent fade77f8
......@@ -1096,3 +1096,5 @@ _UI_AgSmvOpts_dataRef_feature = Data Ref
_UI_AgOptFields_segmentation_feature = Segmentation
_UI_AbstractDataAttribute_RefersToDAType_feature = Refers To DA Type
_UI_DAType_ReferredByAbstractDataAttribute_feature = Referred By Abstract Data Attribute
_UI_AbstractDataAttribute_ReferredByFCDA_feature = Referred By FCDA
_UI_FCDA_RefersToAbstractDataAttribute_feature = Refers To Abstract Data Attribute
......@@ -69,6 +69,7 @@ public class AbstractDataAttributeItemProvider extends DataAttributeItemProvider
addValKindPropertyDescriptor(object);
addRefersToEnumTypePropertyDescriptor(object);
addRefersToDATypePropertyDescriptor(object);
addReferredByFCDAPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
......@@ -249,6 +250,28 @@ public class AbstractDataAttributeItemProvider extends DataAttributeItemProvider
null));
}
/**
* This adds a property descriptor for the Referred By FCDA feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addReferredByFCDAPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_AbstractDataAttribute_ReferredByFCDA_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_AbstractDataAttribute_ReferredByFCDA_feature", "_UI_AbstractDataAttribute_type"),
SclPackage.eINSTANCE.getAbstractDataAttribute_ReferredByFCDA(),
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
......
......@@ -65,7 +65,6 @@ public class AnyLNItemProvider extends UnNamingItemProvider {
addLnClassPropertyDescriptor(object);
addLnTypePropertyDescriptor(object);
addRefersToLNodeTypePropertyDescriptor(object);
addReferredByFCDAPropertyDescriptor(object);
addReferredByExtRefPropertyDescriptor(object);
addReferredByClientLNPropertyDescriptor(object);
addReferredByLogControlPropertyDescriptor(object);
......@@ -164,28 +163,6 @@ public class AnyLNItemProvider extends UnNamingItemProvider {
null));
}
/**
* This adds a property descriptor for the Referred By FCDA feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addReferredByFCDAPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_AnyLN_ReferredByFCDA_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_AnyLN_ReferredByFCDA_feature", "_UI_AnyLN_type"),
SclPackage.eINSTANCE.getAnyLN_ReferredByFCDA(),
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Referred By Ext Ref feature.
* <!-- begin-user-doc -->
......
......@@ -61,35 +61,12 @@ public class DataAttributeItemProvider extends UnNamingItemProvider {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addReferredByFCDAPropertyDescriptor(object);
addNamePropertyDescriptor(object);
addReferredByExtRefPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Referred By FCDA feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addReferredByFCDAPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_DataAttribute_ReferredByFCDA_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_DataAttribute_ReferredByFCDA_feature", "_UI_DataAttribute_type"),
SclPackage.eINSTANCE.getDataAttribute_ReferredByFCDA(),
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Name feature.
* <!-- begin-user-doc -->
......
......@@ -62,7 +62,6 @@ public class DataObjectItemProvider extends UnNamingItemProvider {
super.getPropertyDescriptors(object);
addAccessControlPropertyDescriptor(object);
addReferredByFCDAPropertyDescriptor(object);
addNamePropertyDescriptor(object);
addReferredByExtRefPropertyDescriptor(object);
}
......@@ -91,28 +90,6 @@ public class DataObjectItemProvider extends UnNamingItemProvider {
null));
}
/**
* This adds a property descriptor for the Referred By FCDA feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addReferredByFCDAPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_DataObject_ReferredByFCDA_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_DataObject_ReferredByFCDA_feature", "_UI_DataObject_type"),
SclPackage.eINSTANCE.getDataObject_ReferredByFCDA(),
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Name feature.
* <!-- begin-user-doc -->
......
......@@ -68,9 +68,7 @@ public class FCDAItemProvider
addLnClassPropertyDescriptor(object);
addLnInstPropertyDescriptor(object);
addPrefixPropertyDescriptor(object);
addRefersToDataAttributePropertyDescriptor(object);
addRefersToDataObjectPropertyDescriptor(object);
addRefersToAnyLNPropertyDescriptor(object);
addRefersToAbstractDataAttributePropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
......@@ -252,63 +250,19 @@ public class FCDAItemProvider
}
/**
* This adds a property descriptor for the Refers To Data Attribute feature.
* This adds a property descriptor for the Refers To Abstract Data Attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addRefersToDataAttributePropertyDescriptor(Object object) {
protected void addRefersToAbstractDataAttributePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_FCDA_RefersToDataAttribute_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_FCDA_RefersToDataAttribute_feature", "_UI_FCDA_type"),
SclPackage.eINSTANCE.getFCDA_RefersToDataAttribute(),
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Refers To Data Object feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addRefersToDataObjectPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_FCDA_RefersToDataObject_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_FCDA_RefersToDataObject_feature", "_UI_FCDA_type"),
SclPackage.eINSTANCE.getFCDA_RefersToDataObject(),
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Refers To Any LN feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addRefersToAnyLNPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_FCDA_RefersToAnyLN_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_FCDA_RefersToAnyLN_feature", "_UI_FCDA_type"),
SclPackage.eINSTANCE.getFCDA_RefersToAnyLN(),
getString("_UI_FCDA_RefersToAbstractDataAttribute_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_FCDA_RefersToAbstractDataAttribute_feature", "_UI_FCDA_type"),
SclPackage.eINSTANCE.getFCDA_RefersToAbstractDataAttribute(),
true,
false,
true,
......
......@@ -363,6 +363,9 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="RefersToDAType" ordered="false"
eType="#//DAType" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//DAType/ReferredByAbstractDataAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByFCDA" ordered="false"
upperBound="-1" eType="#//FCDA" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//FCDA/RefersToAbstractDataAttribute"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BDA" eSuperTypes="#//AbstractDataAttribute">
<eStructuralFeatures xsi:type="ecore:EReference" name="DAType" ordered="false"
......@@ -605,9 +608,6 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="DataSet" ordered="false"
upperBound="-1" eType="#//DataSet" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//DataSet/AnyLN"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByFCDA" ordered="false"
upperBound="-1" eType="#//FCDA" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//FCDA/RefersToAnyLN"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByExtRef" ordered="false"
upperBound="-1" eType="#//ExtRef" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//ExtRef/RefersToAnyLN"/>
......@@ -912,18 +912,12 @@
unsettable="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="prefix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
defaultValueLiteral="" unsettable="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="RefersToDataAttribute"
ordered="false" eType="#//DataAttribute" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//DataAttribute/ReferredByFCDA"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="RefersToDataObject" ordered="false"
eType="#//DataObject" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//DataObject/ReferredByFCDA"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="DataSet" ordered="false"
eType="#//DataSet" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//DataSet/FCDA"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAnyLN" ordered="false"
eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//AnyLN/ReferredByFCDA"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAbstractDataAttribute"
ordered="false" upperBound="-1" eType="#//AbstractDataAttribute" transient="true"
unsettable="true" resolveProxies="false" eOpposite="#//AbstractDataAttribute/ReferredByFCDA"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="FileHandling" eSuperTypes="#//SclObject">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="ftp" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
......@@ -2037,9 +2031,6 @@
<eClassifiers xsi:type="ecore:EClass" name="DataObject" abstract="true" eSuperTypes="#//UnNaming">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="accessControl" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByFCDA" ordered="false"
upperBound="-1" eType="#//FCDA" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//FCDA/RefersToDataObject"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByExtRef" ordered="false"
......@@ -2047,9 +2038,6 @@
eOpposite="#//ExtRef/RefersToDataObject"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DataAttribute" abstract="true" eSuperTypes="#//UnNaming">
<eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByFCDA" ordered="false"
upperBound="-1" eType="#//FCDA" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//FCDA/RefersToDataAttribute"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByExtRef" ordered="false"
......
......@@ -260,6 +260,7 @@
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//AbstractDataAttribute/RefersToEnumType"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//AbstractDataAttribute/Val"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//AbstractDataAttribute/RefersToDAType"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//AbstractDataAttribute/ReferredByFCDA"/>
</genClasses>
<genClasses ecoreClass="SCL.ecore#//BDA">
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference SCL.ecore#//BDA/DAType"/>
......@@ -364,7 +365,6 @@
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//AnyLN/ReportControl"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//AnyLN/LogControl"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//AnyLN/DataSet"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//AnyLN/ReferredByFCDA"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//AnyLN/ReferredByExtRef"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//AnyLN/ReferredByClientLN"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//AnyLN/ReferredByLogControl"/>
......@@ -520,10 +520,8 @@
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//FCDA/lnClass"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//FCDA/lnInst"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//FCDA/prefix"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//FCDA/RefersToDataAttribute"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//FCDA/RefersToDataObject"/>
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference SCL.ecore#//FCDA/DataSet"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//FCDA/RefersToAnyLN"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//FCDA/RefersToAbstractDataAttribute"/>
</genClasses>
<genClasses ecoreClass="SCL.ecore#//FileHandling">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//FileHandling/ftp"/>
......@@ -1000,12 +998,10 @@
<genClasses image="false" ecoreClass="SCL.ecore#//ExplicitLinkResolver"/>
<genClasses image="false" ecoreClass="SCL.ecore#//DataObject">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//DataObject/accessControl"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//DataObject/ReferredByFCDA"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//DataObject/name"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//DataObject/ReferredByExtRef"/>
</genClasses>
<genClasses image="false" ecoreClass="SCL.ecore#//DataAttribute">
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//DataAttribute/ReferredByFCDA"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//DataAttribute/name"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//DataAttribute/ReferredByExtRef"/>
</genClasses>
......
......@@ -38,6 +38,7 @@ import org.eclipse.emf.common.util.EList;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AbstractDataAttribute#getRefersToEnumType <em>Refers To Enum Type</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AbstractDataAttribute#getVal <em>Val</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AbstractDataAttribute#getRefersToDAType <em>Refers To DA Type</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AbstractDataAttribute#getReferredByFCDA <em>Referred By FCDA</em>}</li>
* </ul>
*
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getAbstractDataAttribute()
......@@ -516,4 +517,41 @@ public interface AbstractDataAttribute extends DataAttribute {
*/
boolean isSetRefersToDAType();
/**
* Returns the value of the '<em><b>Referred By FCDA</b></em>' reference list.
* The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA}.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA#getRefersToAbstractDataAttribute <em>Refers To Abstract Data Attribute</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Referred By FCDA</em>' reference list.
* @see #isSetReferredByFCDA()
* @see #unsetReferredByFCDA()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getAbstractDataAttribute_ReferredByFCDA()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA#getRefersToAbstractDataAttribute
* @model opposite="RefersToAbstractDataAttribute" resolveProxies="false" unsettable="true" transient="true" ordered="false"
* @generated
*/
EList<FCDA> getReferredByFCDA();
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AbstractDataAttribute#getReferredByFCDA <em>Referred By FCDA</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetReferredByFCDA()
* @see #getReferredByFCDA()
* @generated
*/
void unsetReferredByFCDA();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AbstractDataAttribute#getReferredByFCDA <em>Referred By FCDA</em>}' reference list is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>Referred By FCDA</em>' reference list is set.
* @see #unsetReferredByFCDA()
* @see #getReferredByFCDA()
* @generated
*/
boolean isSetReferredByFCDA();
} // AbstractDataAttribute
......@@ -39,7 +39,6 @@ import org.eclipse.emf.common.util.EList;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN#getReportControl <em>Report Control</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN#getLogControl <em>Log Control</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN#getDataSet <em>Data Set</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN#getReferredByFCDA <em>Referred By FCDA</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN#getReferredByExtRef <em>Referred By Ext Ref</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN#getReferredByClientLN <em>Referred By Client LN</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN#getReferredByLogControl <em>Referred By Log Control</em>}</li>
......@@ -527,47 +526,6 @@ public interface AnyLN extends UnNaming {
*/
boolean isSetDataSet();
/**
* Returns the value of the '<em><b>Referred By FCDA</b></em>' reference list.
* The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA}.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA#getRefersToAnyLN <em>Refers To Any LN</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Referred By FCDA</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Referred By FCDA</em>' reference list.
* @see #isSetReferredByFCDA()
* @see #unsetReferredByFCDA()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getAnyLN_ReferredByFCDA()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA#getRefersToAnyLN
* @model opposite="RefersToAnyLN" resolveProxies="false" unsettable="true" transient="true" ordered="false"
* @generated
*/
EList<FCDA> getReferredByFCDA();
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN#getReferredByFCDA <em>Referred By FCDA</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetReferredByFCDA()
* @see #getReferredByFCDA()
* @generated
*/
void unsetReferredByFCDA();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN#getReferredByFCDA <em>Referred By FCDA</em>}' reference list is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>Referred By FCDA</em>' reference list is set.
* @see #unsetReferredByFCDA()
* @see #getReferredByFCDA()
* @generated
*/
boolean isSetReferredByFCDA();
/**
* Returns the value of the '<em><b>Referred By Ext Ref</b></em>' reference list.
* The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.scl.ExtRef}.
......
......@@ -29,7 +29,6 @@ import org.eclipse.emf.common.util.EList;
* The following features are supported:
* </p>
* <ul>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataAttribute#getReferredByFCDA <em>Referred By FCDA</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataAttribute#getName <em>Name</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataAttribute#getReferredByExtRef <em>Referred By Ext Ref</em>}</li>
* </ul>
......@@ -39,47 +38,6 @@ import org.eclipse.emf.common.util.EList;
* @generated
*/
public interface DataAttribute extends UnNaming {
/**
* Returns the value of the '<em><b>Referred By FCDA</b></em>' reference list.
* The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA}.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA#getRefersToDataAttribute <em>Refers To Data Attribute</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Referred By FCDA</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Referred By FCDA</em>' reference list.
* @see #isSetReferredByFCDA()
* @see #unsetReferredByFCDA()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getDataAttribute_ReferredByFCDA()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA#getRefersToDataAttribute
* @model opposite="RefersToDataAttribute" resolveProxies="false" unsettable="true" transient="true" ordered="false"
* @generated
*/
EList<FCDA> getReferredByFCDA();
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataAttribute#getReferredByFCDA <em>Referred By FCDA</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetReferredByFCDA()
* @see #getReferredByFCDA()
* @generated
*/
void unsetReferredByFCDA();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataAttribute#getReferredByFCDA <em>Referred By FCDA</em>}' reference list is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>Referred By FCDA</em>' reference list is set.
* @see #unsetReferredByFCDA()
* @see #getReferredByFCDA()
* @generated
*/
boolean isSetReferredByFCDA();
/**
* Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
......
......@@ -30,7 +30,6 @@ import org.eclipse.emf.common.util.EList;
* </p>
* <ul>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataObject#getAccessControl <em>Access Control</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataObject#getReferredByFCDA <em>Referred By FCDA</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataObject#getName <em>Name</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataObject#getReferredByExtRef <em>Referred By Ext Ref</em>}</li>
* </ul>
......@@ -93,47 +92,6 @@ public interface DataObject extends UnNaming {
*/
boolean isSetAccessControl();
/**
* Returns the value of the '<em><b>Referred By FCDA</b></em>' reference list.
* The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA}.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA#getRefersToDataObject <em>Refers To Data Object</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Referred By FCDA</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Referred By FCDA</em>' reference list.
* @see #isSetReferredByFCDA()
* @see #unsetReferredByFCDA()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getDataObject_ReferredByFCDA()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA#getRefersToDataObject
* @model opposite="RefersToDataObject" resolveProxies="false" unsettable="true" transient="true" ordered="false"
* @generated
*/
EList<FCDA> getReferredByFCDA();
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataObject#getReferredByFCDA <em>Referred By FCDA</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetReferredByFCDA()
* @see #getReferredByFCDA()
* @generated
*/
void unsetReferredByFCDA();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.DataObject#getReferredByFCDA <em>Referred By FCDA</em>}' reference list is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>Referred By FCDA</em>' reference list is set.
* @see #unsetReferredByFCDA()
* @see #getReferredByFCDA()
* @generated
*/
boolean isSetReferredByFCDA();
/**
* Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
......
......@@ -33,12 +33,14 @@ import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
import org.eclipse.emf.ecore.util.EObjectWithInverseEList;
import org.eclipse.emf.ecore.util.InternalEList;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.AbstractDataAttribute;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.DAType;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.DataTypeTemplates;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.EnumType;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.FCDA;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.Val;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.ValKindEnum;
......@@ -61,6 +63,7 @@ import fr.centralesupelec.edf.riseclipse.util.AbstractRiseClipseConsole;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.AbstractDataAttributeImpl#getRefersToEnumType <em>Refers To Enum Type</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.AbstractDataAttributeImpl#getVal <em>Val</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.AbstractDataAttributeImpl#getRefersToDAType <em>Refers To DA Type</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.AbstractDataAttributeImpl#getReferredByFCDA <em>Referred By FCDA</em>}</li>
* </ul>
*
* @generated
......@@ -288,6 +291,16 @@ public abstract class AbstractDataAttributeImpl extends DataAttributeImpl implem
*/
protected boolean refersToDATypeESet;
/**
* The cached value of the '{@link #getReferredByFCDA() <em>Referred By FCDA</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getReferredByFCDA()
* @generated
* @ordered
*/
protected EList<FCDA> referredByFCDA;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
......@@ -838,6 +851,39 @@ public abstract class AbstractDataAttributeImpl extends DataAttributeImpl implem
return refersToDATypeESet;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EList<FCDA> getReferredByFCDA() {
if (referredByFCDA == null) {
referredByFCDA = new EObjectWithInverseEList.Unsettable.ManyInverse<FCDA>(FCDA.class, this, SclPackage.ABSTRACT_DATA_ATTRIBUTE__REFERRED_BY_FCDA, SclPackage.FCDA__REFERS_TO_ABSTRACT_DATA_ATTRIBUTE);
}
return referredByFCDA;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void unsetReferredByFCDA() {
if (referredByFCDA != null) ((InternalEList.Unsettable<?>)referredByFCDA).unset();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean isSetReferredByFCDA() {
return referredByFCDA != null && ((InternalEList.Unsettable<?>)referredByFCDA).isSet();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
......@@ -857,6 +903,8 @@ public abstract class AbstractDataAttributeImpl extends DataAttributeImpl implem
if (refersToDAType != null)
msgs = ((InternalEObject)refersToDAType).eInverseRemove(this, SclPackage.DA_TYPE__REFERRED_BY_ABSTRACT_DATA_ATTRIBUTE, DAType.class, msgs);
return basicSetRefersToDAType((DAType)otherEnd, msgs);
case SclPackage.ABSTRACT_DATA_ATTRIBUTE__REFERRED_BY_FCDA:
return ((InternalEList<InternalEObject>)(InternalEList<?>)getReferredByFCDA()).basicAdd(otherEnd, msgs);
}
return super.eInverseAdd(otherEnd, featureID, msgs);
}