Commit 15a84fe9 authored by Dominique Marcadet's avatar Dominique Marcadet

Merge branch '26-logcontrol-refers-to-a-log' into 'master'

Resolve "LogControl refers to a Log"

Closes #26

See merge request RiseClipseGroup/RiseClipseMetamodel_SCL2003!23
parents 1f363b91 44d5da31
...@@ -1049,3 +1049,5 @@ _UI_McSecurity_encryption_feature = Encryption ...@@ -1049,3 +1049,5 @@ _UI_McSecurity_encryption_feature = Encryption
_UI_GSESettings_kdaParticipant_feature = Kda Participant _UI_GSESettings_kdaParticipant_feature = Kda Participant
_UI_ConnectivityNode_ReferredByTerminal_feature = Referred By Terminal _UI_ConnectivityNode_ReferredByTerminal_feature = Referred By Terminal
_UI_Terminal_RefersToConnectivityNode_feature = Refers To Connectivity Node _UI_Terminal_RefersToConnectivityNode_feature = Refers To Connectivity Node
_UI_Log_ReferredByLogControl_feature = Referred By Log Control
_UI_LogControl_RefersToLog_feature = Refers To Log
...@@ -68,6 +68,7 @@ public class LogControlItemProvider extends ControlWithTriggerOptItemProvider { ...@@ -68,6 +68,7 @@ public class LogControlItemProvider extends ControlWithTriggerOptItemProvider {
addPrefixPropertyDescriptor(object); addPrefixPropertyDescriptor(object);
addReasonCodePropertyDescriptor(object); addReasonCodePropertyDescriptor(object);
addRefersToAnyLNPropertyDescriptor(object); addRefersToAnyLNPropertyDescriptor(object);
addRefersToLogPropertyDescriptor(object);
} }
return itemPropertyDescriptors; return itemPropertyDescriptors;
} }
...@@ -270,6 +271,28 @@ public class LogControlItemProvider extends ControlWithTriggerOptItemProvider { ...@@ -270,6 +271,28 @@ public class LogControlItemProvider extends ControlWithTriggerOptItemProvider {
null)); null));
} }
/**
* This adds a property descriptor for the Refers To Log feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addRefersToLogPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_LogControl_RefersToLog_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_LogControl_RefersToLog_feature", "_UI_LogControl_type"),
SclPackage.eINSTANCE.getLogControl_RefersToLog(),
true,
false,
true,
null,
null,
null));
}
/** /**
* This returns LogControl.gif. * This returns LogControl.gif.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
......
...@@ -60,6 +60,7 @@ public class LogItemProvider extends UnNamingItemProvider { ...@@ -60,6 +60,7 @@ public class LogItemProvider extends UnNamingItemProvider {
super.getPropertyDescriptors(object); super.getPropertyDescriptors(object);
addNamePropertyDescriptor(object); addNamePropertyDescriptor(object);
addReferredByLogControlPropertyDescriptor(object);
} }
return itemPropertyDescriptors; return itemPropertyDescriptors;
} }
...@@ -86,6 +87,28 @@ public class LogItemProvider extends UnNamingItemProvider { ...@@ -86,6 +87,28 @@ public class LogItemProvider extends UnNamingItemProvider {
null)); null));
} }
/**
* This adds a property descriptor for the Referred By Log Control feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addReferredByLogControlPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_Log_ReferredByLogControl_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Log_ReferredByLogControl_feature", "_UI_Log_type"),
SclPackage.eINSTANCE.getLog_ReferredByLogControl(),
true,
false,
true,
null,
null,
null));
}
/** /**
* This returns Log.gif. * This returns Log.gif.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
......
...@@ -1192,6 +1192,9 @@ ...@@ -1192,6 +1192,9 @@
eOpposite="#//AnyLN/Log"/> eOpposite="#//AnyLN/Log"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true"/> unsettable="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByLogControl" ordered="false"
upperBound="-1" eType="#//LogControl" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//LogControl/RefersToLog"/>
</eClassifiers> </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LogControl" eSuperTypes="#//ControlWithTriggerOpt"> <eClassifiers xsi:type="ecore:EClass" name="LogControl" eSuperTypes="#//ControlWithTriggerOpt">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="bufTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject" <eStructuralFeatures xsi:type="ecore:EAttribute" name="bufTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
...@@ -1216,6 +1219,8 @@ ...@@ -1216,6 +1219,8 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAnyLN" ordered="false" <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAnyLN" ordered="false"
eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false" eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//AnyLN/ReferredByLogControl"/> eOpposite="#//AnyLN/ReferredByLogControl"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="RefersToLog" ordered="false"
eType="#//Log" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//Log/ReferredByLogControl"/>
</eClassifiers> </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LogSettings" eSuperTypes="#//ServiceSettings"> <eClassifiers xsi:type="ecore:EClass" name="LogSettings" eSuperTypes="#//ServiceSettings">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="intgPd" eType="#//ServiceSettingsEnum" <eStructuralFeatures xsi:type="ecore:EAttribute" name="intgPd" eType="#//ServiceSettingsEnum"
......
...@@ -658,6 +658,7 @@ ...@@ -658,6 +658,7 @@
<genClasses ecoreClass="SCL.ecore#//Log"> <genClasses ecoreClass="SCL.ecore#//Log">
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference SCL.ecore#//Log/AnyLN"/> <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference SCL.ecore#//Log/AnyLN"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//Log/name"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//Log/name"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//Log/ReferredByLogControl"/>
</genClasses> </genClasses>
<genClasses ecoreClass="SCL.ecore#//LogControl"> <genClasses ecoreClass="SCL.ecore#//LogControl">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//LogControl/bufTime"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//LogControl/bufTime"/>
...@@ -670,6 +671,7 @@ ...@@ -670,6 +671,7 @@
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//LogControl/reasonCode"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//LogControl/reasonCode"/>
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference SCL.ecore#//LogControl/AnyLN"/> <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference SCL.ecore#//LogControl/AnyLN"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//LogControl/RefersToAnyLN"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//LogControl/RefersToAnyLN"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SCL.ecore#//LogControl/RefersToLog"/>
</genClasses> </genClasses>
<genClasses ecoreClass="SCL.ecore#//LogSettings"> <genClasses ecoreClass="SCL.ecore#//LogSettings">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//LogSettings/intgPd"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//LogSettings/intgPd"/>
......
...@@ -18,6 +18,8 @@ ...@@ -18,6 +18,8 @@
*/ */
package fr.centralesupelec.edf.riseclipse.iec61850.scl; package fr.centralesupelec.edf.riseclipse.iec61850.scl;
import org.eclipse.emf.common.util.EList;
/** /**
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* A representation of the model object '<em><b>Log</b></em>'. * A representation of the model object '<em><b>Log</b></em>'.
...@@ -29,6 +31,7 @@ package fr.centralesupelec.edf.riseclipse.iec61850.scl; ...@@ -29,6 +31,7 @@ package fr.centralesupelec.edf.riseclipse.iec61850.scl;
* <ul> * <ul>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getAnyLN <em>Any LN</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getAnyLN <em>Any LN</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getName <em>Name</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getName <em>Name</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getReferredByLogControl <em>Referred By Log Control</em>}</li>
* </ul> * </ul>
* *
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getLog() * @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getLog()
...@@ -117,4 +120,45 @@ public interface Log extends UnNaming { ...@@ -117,4 +120,45 @@ public interface Log extends UnNaming {
*/ */
boolean isSetName(); boolean isSetName();
/**
* Returns the value of the '<em><b>Referred By Log Control</b></em>' reference list.
* The list contents are of type {@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl}.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getRefersToLog <em>Refers To Log</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Referred By Log Control</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 Log Control</em>' reference list.
* @see #isSetReferredByLogControl()
* @see #unsetReferredByLogControl()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getLog_ReferredByLogControl()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getRefersToLog
* @model opposite="RefersToLog" resolveProxies="false" unsettable="true" transient="true" ordered="false"
* @generated
*/
EList<LogControl> getReferredByLogControl();
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getReferredByLogControl <em>Referred By Log Control</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetReferredByLogControl()
* @see #getReferredByLogControl()
* @generated
*/
void unsetReferredByLogControl();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getReferredByLogControl <em>Referred By Log Control</em>}' reference list is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>Referred By Log Control</em>' reference list is set.
* @see #unsetReferredByLogControl()
* @see #getReferredByLogControl()
* @generated
*/
boolean isSetReferredByLogControl();
} // Log } // Log
...@@ -37,6 +37,7 @@ package fr.centralesupelec.edf.riseclipse.iec61850.scl; ...@@ -37,6 +37,7 @@ package fr.centralesupelec.edf.riseclipse.iec61850.scl;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getReasonCode <em>Reason Code</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getReasonCode <em>Reason Code</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getAnyLN <em>Any LN</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getAnyLN <em>Any LN</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getRefersToAnyLN <em>Refers To Any LN</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getRefersToAnyLN <em>Refers To Any LN</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getRefersToLog <em>Refers To Log</em>}</li>
* </ul> * </ul>
* *
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getLogControl() * @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getLogControl()
...@@ -556,4 +557,59 @@ public interface LogControl extends ControlWithTriggerOpt { ...@@ -556,4 +557,59 @@ public interface LogControl extends ControlWithTriggerOpt {
*/ */
boolean isSetRefersToAnyLN(); boolean isSetRefersToAnyLN();
/**
* Returns the value of the '<em><b>Refers To Log</b></em>' reference.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getReferredByLogControl <em>Referred By Log Control</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Refers To Log</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Refers To Log</em>' reference.
* @see #isSetRefersToLog()
* @see #unsetRefersToLog()
* @see #setRefersToLog(Log)
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getLogControl_RefersToLog()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getReferredByLogControl
* @model opposite="ReferredByLogControl" resolveProxies="false" unsettable="true" transient="true" ordered="false"
* @generated
*/
Log getRefersToLog();
/**
* Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getRefersToLog <em>Refers To Log</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Refers To Log</em>' reference.
* @see #isSetRefersToLog()
* @see #unsetRefersToLog()
* @see #getRefersToLog()
* @generated
*/
void setRefersToLog(Log value);
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getRefersToLog <em>Refers To Log</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetRefersToLog()
* @see #getRefersToLog()
* @see #setRefersToLog(Log)
* @generated
*/
void unsetRefersToLog();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getRefersToLog <em>Refers To Log</em>}' reference is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>Refers To Log</em>' reference is set.
* @see #unsetRefersToLog()
* @see #getRefersToLog()
* @see #setRefersToLog(Log)
* @generated
*/
boolean isSetRefersToLog();
} // LogControl } // LogControl
...@@ -11280,6 +11280,15 @@ public interface SclPackage extends EPackage { ...@@ -11280,6 +11280,15 @@ public interface SclPackage extends EPackage {
*/ */
int LOG__NAME = UN_NAMING_FEATURE_COUNT + 1; int LOG__NAME = UN_NAMING_FEATURE_COUNT + 1;
/**
* The feature id for the '<em><b>Referred By Log Control</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int LOG__REFERRED_BY_LOG_CONTROL = UN_NAMING_FEATURE_COUNT + 2;
/** /**
* The number of structural features of the '<em>Log</em>' class. * The number of structural features of the '<em>Log</em>' class.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
...@@ -11287,7 +11296,7 @@ public interface SclPackage extends EPackage { ...@@ -11287,7 +11296,7 @@ public interface SclPackage extends EPackage {
* @generated * @generated
* @ordered * @ordered
*/ */
int LOG_FEATURE_COUNT = UN_NAMING_FEATURE_COUNT + 2; int LOG_FEATURE_COUNT = UN_NAMING_FEATURE_COUNT + 3;
/** /**
* The number of operations of the '<em>Log</em>' class. * The number of operations of the '<em>Log</em>' class.
...@@ -11487,6 +11496,15 @@ public interface SclPackage extends EPackage { ...@@ -11487,6 +11496,15 @@ public interface SclPackage extends EPackage {
*/ */
int LOG_CONTROL__REFERS_TO_ANY_LN = CONTROL_WITH_TRIGGER_OPT_FEATURE_COUNT + 9; int LOG_CONTROL__REFERS_TO_ANY_LN = CONTROL_WITH_TRIGGER_OPT_FEATURE_COUNT + 9;
/**
* The feature id for the '<em><b>Refers To Log</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int LOG_CONTROL__REFERS_TO_LOG = CONTROL_WITH_TRIGGER_OPT_FEATURE_COUNT + 10;
/** /**
* The number of structural features of the '<em>Log Control</em>' class. * The number of structural features of the '<em>Log Control</em>' class.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
...@@ -11494,7 +11512,7 @@ public interface SclPackage extends EPackage { ...@@ -11494,7 +11512,7 @@ public interface SclPackage extends EPackage {
* @generated * @generated
* @ordered * @ordered
*/ */
int LOG_CONTROL_FEATURE_COUNT = CONTROL_WITH_TRIGGER_OPT_FEATURE_COUNT + 10; int LOG_CONTROL_FEATURE_COUNT = CONTROL_WITH_TRIGGER_OPT_FEATURE_COUNT + 11;
/** /**
* The number of operations of the '<em>Log Control</em>' class. * The number of operations of the '<em>Log Control</em>' class.
...@@ -23405,6 +23423,17 @@ public interface SclPackage extends EPackage { ...@@ -23405,6 +23423,17 @@ public interface SclPackage extends EPackage {
*/ */
EAttribute getLog_Name(); EAttribute getLog_Name();
/**
* Returns the meta object for the reference list '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getReferredByLogControl <em>Referred By Log Control</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Referred By Log Control</em>'.
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.Log#getReferredByLogControl()
* @see #getLog()
* @generated
*/
EReference getLog_ReferredByLogControl();
/** /**
* Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl <em>Log Control</em>}'. * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl <em>Log Control</em>}'.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
...@@ -23525,6 +23554,17 @@ public interface SclPackage extends EPackage { ...@@ -23525,6 +23554,17 @@ public interface SclPackage extends EPackage {
*/ */
EReference getLogControl_RefersToAnyLN(); EReference getLogControl_RefersToAnyLN();
/**
* Returns the meta object for the reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getRefersToLog <em>Refers To Log</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference '<em>Refers To Log</em>'.
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl#getRefersToLog()
* @see #getLogControl()
* @generated
*/
EReference getLogControl_RefersToLog();
/** /**
* Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogSettings <em>Log Settings</em>}'. * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.LogSettings <em>Log Settings</em>}'.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
......
...@@ -20,14 +20,19 @@ package fr.centralesupelec.edf.riseclipse.iec61850.scl.impl; ...@@ -20,14 +20,19 @@ package fr.centralesupelec.edf.riseclipse.iec61850.scl.impl;
import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain; 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.EClass;
import org.eclipse.emf.ecore.InternalEObject; 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.EObjectWithInverseEList;
import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.util.InternalEList;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN; import fr.centralesupelec.edf.riseclipse.iec61850.scl.AnyLN;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.Log; import fr.centralesupelec.edf.riseclipse.iec61850.scl.Log;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.LogControl;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage; import fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage;
import java.util.Collection;
/** /**
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
...@@ -39,6 +44,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage; ...@@ -39,6 +44,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage;
* <ul> * <ul>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.LogImpl#getAnyLN <em>Any LN</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.LogImpl#getAnyLN <em>Any LN</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.LogImpl#getName <em>Name</em>}</li> * <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.LogImpl#getName <em>Name</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.LogImpl#getReferredByLogControl <em>Referred By Log Control</em>}</li>
* </ul> * </ul>
* *
* @generated * @generated
...@@ -71,6 +77,16 @@ public class LogImpl extends UnNamingImpl implements Log { ...@@ -71,6 +77,16 @@ public class LogImpl extends UnNamingImpl implements Log {
*/ */
protected boolean nameESet; protected boolean nameESet;
/**
* The cached value of the '{@link #getReferredByLogControl() <em>Referred By Log Control</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getReferredByLogControl()
* @generated
* @ordered
*/
protected EList<LogControl> referredByLogControl;
/** /**
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
...@@ -182,6 +198,37 @@ public class LogImpl extends UnNamingImpl implements Log { ...@@ -182,6 +198,37 @@ public class LogImpl extends UnNamingImpl implements Log {
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
public EList<LogControl> getReferredByLogControl() {
if (referredByLogControl == null) {
referredByLogControl = new EObjectWithInverseEList.Unsettable<LogControl>(LogControl.class, this, SclPackage.LOG__REFERRED_BY_LOG_CONTROL, SclPackage.LOG_CONTROL__REFERS_TO_LOG);
}
return referredByLogControl;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void unsetReferredByLogControl() {
if (referredByLogControl != null) ((InternalEList.Unsettable<?>)referredByLogControl).unset();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public boolean isSetReferredByLogControl() {
return referredByLogControl != null && ((InternalEList.Unsettable<?>)referredByLogControl).isSet();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override @Override
public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) { public NotificationChain eInverseAdd( InternalEObject otherEnd, int featureID, NotificationChain msgs ) {
switch (featureID) { switch (featureID) {
...@@ -189,6 +236,8 @@ public class LogImpl extends UnNamingImpl implements Log { ...@@ -189,6 +236,8 @@ public class LogImpl extends UnNamingImpl implements Log {
if (eInternalContainer() != null) if (eInternalContainer() != null)
msgs = eBasicRemoveFromContainer(msgs); msgs = eBasicRemoveFromContainer(msgs);
return basicSetAnyLN((AnyLN)otherEnd, msgs); return basicSetAnyLN((AnyLN)otherEnd, msgs);
case SclPackage.LOG__REFERRED_BY_LOG_CONTROL:
return ((InternalEList<InternalEObject>)(InternalEList<?>)getReferredByLogControl()).basicAdd(otherEnd, msgs);
} }
return super.eInverseAdd(otherEnd, featureID, msgs); return super.eInverseAdd(otherEnd, featureID, msgs);
} }
...@@ -203,6 +252,8 @@ public class LogImpl extends UnNamingImpl implements Log { ...@@ -203,6 +252,8 @@ public class LogImpl extends UnNamingImpl implements Log {
switch (featureID) { switch (featureID) {
case SclPackage.LOG__ANY_LN: case SclPackage.LOG__ANY_LN:
return basicSetAnyLN(null, msgs); return basicSetAnyLN(null, msgs);
case SclPackage.LOG__REFERRED_BY_LOG_CONTROL:
return ((InternalEList<?>)getReferredByLogControl()).basicRemove(otherEnd, msgs);
} }
return super.eInverseRemove(otherEnd, featureID, msgs); return super.eInverseRemove(otherEnd, featureID, msgs);
} }
...@@ -233,6 +284,8 @@ public class LogImpl extends UnNamingImpl implements Log { ...@@ -233,6 +284,8 @@ public class LogImpl extends UnNamingImpl implements Log {
return getAnyLN(); return getAnyLN();
case SclPackage.LOG__NAME: case SclPackage.LOG__NAME:
return getName(); return getName();
case SclPackage.LOG__REFERRED_BY_LOG_CONTROL:
return getReferredByLogControl();
} }
return super.eGet(featureID, resolve, coreType); return super.eGet(featureID, resolve, coreType);
} }
...@@ -242,6 +295,7 @@ public class LogImpl extends UnNamingImpl implements Log { ...@@ -242,6 +295,7 @@ public class LogImpl extends UnNamingImpl implements Log {
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
@SuppressWarnings("unchecked")
@Override @Override
public void eSet( int featureID, Object newValue ) { public void eSet( int featureID, Object newValue ) {
switch (featureID) { switch (featureID) {
...@@ -251,6 +305,10 @@ public class LogImpl extends UnNamingImpl implements Log { ...@@ -251,6 +305,10 @@ public class LogImpl extends UnNamingImpl implements Log {
case SclPackage.LOG__NAME: case SclPackage.LOG__NAME:
setName((String)newValue); setName((String)newValue);
return; return;
case SclPackage.LOG__REFERRED_BY_LOG_CONTROL:
getReferredByLogControl().clear();
getReferredByLogControl().addAll((Collection<? extends LogControl>)newValue);
return;
} }
super.eSet(featureID, newValue); super.eSet(featureID, newValue);
} }
...@@ -269,6 +327,9 @@ public class LogImpl extends UnNamingImpl implements Log { ...@@ -269,6 +327,9 @@ public class LogImpl extends UnNamingImpl implements Log {
case SclPackage.LOG__NAME: case SclPackage.LOG__NAME:
unsetName(); unsetName();
return; return;
case SclPackage.LOG__REFERRED_BY_LOG_CONTROL:
unsetReferredByLogControl();
return;
} }
super.eUnset(featureID); super.eUnset(featureID);
} }
...@@ -285,6 +346,8 @@ public class LogImpl extends UnNamingImpl implements Log { ...@@ -285,6 +346,8 @@ public class LogImpl extends UnNamingImpl implements Log {
return getAnyLN() != null; return getAnyLN() != null;
case SclPackage.LOG__NAME: case SclPackage.LOG__NAME:
return isSetName(); return isSetName();
case SclPackage.LOG__REFERRED_BY_LOG_CONTROL:
return isSetReferredByLogControl();
} }
return super.eIsSet(featureID); return super.eIsSet(featureID);
} }
......
...@@ -6002,6 +6002,15 @@ public class SclPackageImpl extends EPackageImpl implements SclPackage { ...@@ -6002,6 +6002,15 @@ public class SclPackageImpl extends EPackageImpl implements SclPackage {
return (EAttribute)getLog().getEStructuralFeatures().get(1); return (EAttribute)getLog().getEStructuralFeatures().get(1);
} }
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getLog_ReferredByLogControl() {
return (EReference)getLog().getEStructuralFeatures().get(2);
}
/** /**
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
...@@ -6104,6 +6113,15 @@ public class SclPackageImpl extends EPackageImpl implements SclPackage { ...@@ -6104,6 +6113,15 @@ public class SclPackageImpl extends EPackageImpl implements SclPackage {
return (EReference)getLogControl().getEStructuralFeatures().get(9); return (EReference)getLogControl().getEStructuralFeatures().get(9);
} }
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/