/** */ package org.xtext.nv.dsl.mMDSL.impl; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; import org.xtext.nv.dsl.mMDSL.FileCopy; import org.xtext.nv.dsl.mMDSL.FileCreate; import org.xtext.nv.dsl.mMDSL.FileDelete; import org.xtext.nv.dsl.mMDSL.FileOperation; import org.xtext.nv.dsl.mMDSL.FileRead; import org.xtext.nv.dsl.mMDSL.FileWrite; import org.xtext.nv.dsl.mMDSL.MMDSLPackage; /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>File Operation</b></em>'. * <!-- end-user-doc --> * <p> * The following features are implemented: * <ul> * <li>{@link org.xtext.nv.dsl.mMDSL.impl.FileOperationImpl#getFilecopy <em>Filecopy</em>}</li> * <li>{@link org.xtext.nv.dsl.mMDSL.impl.FileOperationImpl#getFiledelete <em>Filedelete</em>}</li> * <li>{@link org.xtext.nv.dsl.mMDSL.impl.FileOperationImpl#getFilecreate <em>Filecreate</em>}</li> * <li>{@link org.xtext.nv.dsl.mMDSL.impl.FileOperationImpl#getFileread <em>Fileread</em>}</li> * <li>{@link org.xtext.nv.dsl.mMDSL.impl.FileOperationImpl#getFilewrite <em>Filewrite</em>}</li> * </ul> * </p> * * @generated */ public class FileOperationImpl extends MinimalEObjectImpl.Container implements FileOperation { /** * The cached value of the '{@link #getFilecopy() <em>Filecopy</em>}' containment reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getFilecopy() * @generated * @ordered */ protected FileCopy filecopy; /** * The cached value of the '{@link #getFiledelete() <em>Filedelete</em>}' containment reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getFiledelete() * @generated * @ordered */ protected FileDelete filedelete; /** * The cached value of the '{@link #getFilecreate() <em>Filecreate</em>}' containment reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getFilecreate() * @generated * @ordered */ protected FileCreate filecreate; /** * The cached value of the '{@link #getFileread() <em>Fileread</em>}' containment reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getFileread() * @generated * @ordered */ protected FileRead fileread; /** * The cached value of the '{@link #getFilewrite() <em>Filewrite</em>}' containment reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getFilewrite() * @generated * @ordered */ protected FileWrite filewrite; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected FileOperationImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override protected EClass eStaticClass() { return MMDSLPackage.eINSTANCE.getFileOperation(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public FileCopy getFilecopy() { return filecopy; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public NotificationChain basicSetFilecopy(FileCopy newFilecopy, NotificationChain msgs) { FileCopy oldFilecopy = filecopy; filecopy = newFilecopy; if (eNotificationRequired()) { ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, MMDSLPackage.FILE_OPERATION__FILECOPY, oldFilecopy, newFilecopy); if (msgs == null) msgs = notification; else msgs.add(notification); } return msgs; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setFilecopy(FileCopy newFilecopy) { if (newFilecopy != filecopy) { NotificationChain msgs = null; if (filecopy != null) msgs = ((InternalEObject)filecopy).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - MMDSLPackage.FILE_OPERATION__FILECOPY, null, msgs); if (newFilecopy != null) msgs = ((InternalEObject)newFilecopy).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - MMDSLPackage.FILE_OPERATION__FILECOPY, null, msgs); msgs = basicSetFilecopy(newFilecopy, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MMDSLPackage.FILE_OPERATION__FILECOPY, newFilecopy, newFilecopy)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public FileDelete getFiledelete() { return filedelete; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public NotificationChain basicSetFiledelete(FileDelete newFiledelete, NotificationChain msgs) { FileDelete oldFiledelete = filedelete; filedelete = newFiledelete; if (eNotificationRequired()) { ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, MMDSLPackage.FILE_OPERATION__FILEDELETE, oldFiledelete, newFiledelete); if (msgs == null) msgs = notification; else msgs.add(notification); } return msgs; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setFiledelete(FileDelete newFiledelete) { if (newFiledelete != filedelete) { NotificationChain msgs = null; if (filedelete != null) msgs = ((InternalEObject)filedelete).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - MMDSLPackage.FILE_OPERATION__FILEDELETE, null, msgs); if (newFiledelete != null) msgs = ((InternalEObject)newFiledelete).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - MMDSLPackage.FILE_OPERATION__FILEDELETE, null, msgs); msgs = basicSetFiledelete(newFiledelete, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MMDSLPackage.FILE_OPERATION__FILEDELETE, newFiledelete, newFiledelete)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public FileCreate getFilecreate() { return filecreate; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public NotificationChain basicSetFilecreate(FileCreate newFilecreate, NotificationChain msgs) { FileCreate oldFilecreate = filecreate; filecreate = newFilecreate; if (eNotificationRequired()) { ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, MMDSLPackage.FILE_OPERATION__FILECREATE, oldFilecreate, newFilecreate); if (msgs == null) msgs = notification; else msgs.add(notification); } return msgs; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setFilecreate(FileCreate newFilecreate) { if (newFilecreate != filecreate) { NotificationChain msgs = null; if (filecreate != null) msgs = ((InternalEObject)filecreate).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - MMDSLPackage.FILE_OPERATION__FILECREATE, null, msgs); if (newFilecreate != null) msgs = ((InternalEObject)newFilecreate).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - MMDSLPackage.FILE_OPERATION__FILECREATE, null, msgs); msgs = basicSetFilecreate(newFilecreate, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MMDSLPackage.FILE_OPERATION__FILECREATE, newFilecreate, newFilecreate)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public FileRead getFileread() { return fileread; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public NotificationChain basicSetFileread(FileRead newFileread, NotificationChain msgs) { FileRead oldFileread = fileread; fileread = newFileread; if (eNotificationRequired()) { ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, MMDSLPackage.FILE_OPERATION__FILEREAD, oldFileread, newFileread); if (msgs == null) msgs = notification; else msgs.add(notification); } return msgs; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setFileread(FileRead newFileread) { if (newFileread != fileread) { NotificationChain msgs = null; if (fileread != null) msgs = ((InternalEObject)fileread).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - MMDSLPackage.FILE_OPERATION__FILEREAD, null, msgs); if (newFileread != null) msgs = ((InternalEObject)newFileread).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - MMDSLPackage.FILE_OPERATION__FILEREAD, null, msgs); msgs = basicSetFileread(newFileread, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MMDSLPackage.FILE_OPERATION__FILEREAD, newFileread, newFileread)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public FileWrite getFilewrite() { return filewrite; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public NotificationChain basicSetFilewrite(FileWrite newFilewrite, NotificationChain msgs) { FileWrite oldFilewrite = filewrite; filewrite = newFilewrite; if (eNotificationRequired()) { ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, MMDSLPackage.FILE_OPERATION__FILEWRITE, oldFilewrite, newFilewrite); if (msgs == null) msgs = notification; else msgs.add(notification); } return msgs; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setFilewrite(FileWrite newFilewrite) { if (newFilewrite != filewrite) { NotificationChain msgs = null; if (filewrite != null) msgs = ((InternalEObject)filewrite).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - MMDSLPackage.FILE_OPERATION__FILEWRITE, null, msgs); if (newFilewrite != null) msgs = ((InternalEObject)newFilewrite).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - MMDSLPackage.FILE_OPERATION__FILEWRITE, null, msgs); msgs = basicSetFilewrite(newFilewrite, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MMDSLPackage.FILE_OPERATION__FILEWRITE, newFilewrite, newFilewrite)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { switch (featureID) { case MMDSLPackage.FILE_OPERATION__FILECOPY: return basicSetFilecopy(null, msgs); case MMDSLPackage.FILE_OPERATION__FILEDELETE: return basicSetFiledelete(null, msgs); case MMDSLPackage.FILE_OPERATION__FILECREATE: return basicSetFilecreate(null, msgs); case MMDSLPackage.FILE_OPERATION__FILEREAD: return basicSetFileread(null, msgs); case MMDSLPackage.FILE_OPERATION__FILEWRITE: return basicSetFilewrite(null, msgs); } return super.eInverseRemove(otherEnd, featureID, msgs); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { case MMDSLPackage.FILE_OPERATION__FILECOPY: return getFilecopy(); case MMDSLPackage.FILE_OPERATION__FILEDELETE: return getFiledelete(); case MMDSLPackage.FILE_OPERATION__FILECREATE: return getFilecreate(); case MMDSLPackage.FILE_OPERATION__FILEREAD: return getFileread(); case MMDSLPackage.FILE_OPERATION__FILEWRITE: return getFilewrite(); } return super.eGet(featureID, resolve, coreType); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eSet(int featureID, Object newValue) { switch (featureID) { case MMDSLPackage.FILE_OPERATION__FILECOPY: setFilecopy((FileCopy)newValue); return; case MMDSLPackage.FILE_OPERATION__FILEDELETE: setFiledelete((FileDelete)newValue); return; case MMDSLPackage.FILE_OPERATION__FILECREATE: setFilecreate((FileCreate)newValue); return; case MMDSLPackage.FILE_OPERATION__FILEREAD: setFileread((FileRead)newValue); return; case MMDSLPackage.FILE_OPERATION__FILEWRITE: setFilewrite((FileWrite)newValue); return; } super.eSet(featureID, newValue); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eUnset(int featureID) { switch (featureID) { case MMDSLPackage.FILE_OPERATION__FILECOPY: setFilecopy((FileCopy)null); return; case MMDSLPackage.FILE_OPERATION__FILEDELETE: setFiledelete((FileDelete)null); return; case MMDSLPackage.FILE_OPERATION__FILECREATE: setFilecreate((FileCreate)null); return; case MMDSLPackage.FILE_OPERATION__FILEREAD: setFileread((FileRead)null); return; case MMDSLPackage.FILE_OPERATION__FILEWRITE: setFilewrite((FileWrite)null); return; } super.eUnset(featureID); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean eIsSet(int featureID) { switch (featureID) { case MMDSLPackage.FILE_OPERATION__FILECOPY: return filecopy != null; case MMDSLPackage.FILE_OPERATION__FILEDELETE: return filedelete != null; case MMDSLPackage.FILE_OPERATION__FILECREATE: return filecreate != null; case MMDSLPackage.FILE_OPERATION__FILEREAD: return fileread != null; case MMDSLPackage.FILE_OPERATION__FILEWRITE: return filewrite != null; } return super.eIsSet(featureID); } } //FileOperationImpl