/** * Copyright (c) 2013 itemis AG and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * itemis AG - initial API and implementation * */ package org.eclipse.rmf.tests.serialization.env.emf.myreqif.impl; import javax.xml.datatype.XMLGregorianCalendar; 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.EObjectImpl; import org.eclipse.rmf.tests.serialization.env.emf.myreqif.ALTERNATIVEIDType13; import org.eclipse.rmf.tests.serialization.env.emf.myreqif.MyreqifPackage; import org.eclipse.rmf.tests.serialization.env.emf.myreqif.SPECOBJECT; import org.eclipse.rmf.tests.serialization.env.emf.myreqif.TYPEType6; import org.eclipse.rmf.tests.serialization.env.emf.myreqif.VALUESType2; /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>SPECOBJECT</b></em>'. * <!-- end-user-doc --> * <p> * The following features are implemented: * <ul> * <li>{@link org.eclipse.rmf.tests.serialization.env.emf.myreqif.impl.SPECOBJECTImpl#getALTERNATIVEID <em>ALTERNATIVEID</em>}</li> * <li>{@link org.eclipse.rmf.tests.serialization.env.emf.myreqif.impl.SPECOBJECTImpl#getVALUES <em>VALUES</em>}</li> * <li>{@link org.eclipse.rmf.tests.serialization.env.emf.myreqif.impl.SPECOBJECTImpl#getTYPE <em>TYPE</em>}</li> * <li>{@link org.eclipse.rmf.tests.serialization.env.emf.myreqif.impl.SPECOBJECTImpl#getDESC <em>DESC</em>}</li> * <li>{@link org.eclipse.rmf.tests.serialization.env.emf.myreqif.impl.SPECOBJECTImpl#getIDENTIFIER <em>IDENTIFIER</em>}</li> * <li>{@link org.eclipse.rmf.tests.serialization.env.emf.myreqif.impl.SPECOBJECTImpl#getLASTCHANGE <em>LASTCHANGE</em>}</li> * <li>{@link org.eclipse.rmf.tests.serialization.env.emf.myreqif.impl.SPECOBJECTImpl#getLONGNAME <em>LONGNAME</em>}</li> * </ul> * </p> * * @generated */ public class SPECOBJECTImpl extends EObjectImpl implements SPECOBJECT { /** * The cached value of the '{@link #getALTERNATIVEID() <em>ALTERNATIVEID</em>}' containment reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getALTERNATIVEID() * @generated * @ordered */ protected ALTERNATIVEIDType13 aLTERNATIVEID; /** * The cached value of the '{@link #getVALUES() <em>VALUES</em>}' containment reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getVALUES() * @generated * @ordered */ protected VALUESType2 vALUES; /** * The cached value of the '{@link #getTYPE() <em>TYPE</em>}' containment reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getTYPE() * @generated * @ordered */ protected TYPEType6 tYPE; /** * The default value of the '{@link #getDESC() <em>DESC</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getDESC() * @generated * @ordered */ protected static final String DESC_EDEFAULT = null; /** * The cached value of the '{@link #getDESC() <em>DESC</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getDESC() * @generated * @ordered */ protected String dESC = DESC_EDEFAULT; /** * The default value of the '{@link #getIDENTIFIER() <em>IDENTIFIER</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getIDENTIFIER() * @generated * @ordered */ protected static final String IDENTIFIER_EDEFAULT = null; /** * The cached value of the '{@link #getIDENTIFIER() <em>IDENTIFIER</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getIDENTIFIER() * @generated * @ordered */ protected String iDENTIFIER = IDENTIFIER_EDEFAULT; /** * The default value of the '{@link #getLASTCHANGE() <em>LASTCHANGE</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getLASTCHANGE() * @generated * @ordered */ protected static final XMLGregorianCalendar LASTCHANGE_EDEFAULT = null; /** * The cached value of the '{@link #getLASTCHANGE() <em>LASTCHANGE</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getLASTCHANGE() * @generated * @ordered */ protected XMLGregorianCalendar lASTCHANGE = LASTCHANGE_EDEFAULT; /** * The default value of the '{@link #getLONGNAME() <em>LONGNAME</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getLONGNAME() * @generated * @ordered */ protected static final String LONGNAME_EDEFAULT = null; /** * The cached value of the '{@link #getLONGNAME() <em>LONGNAME</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getLONGNAME() * @generated * @ordered */ protected String lONGNAME = LONGNAME_EDEFAULT; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected SPECOBJECTImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override protected EClass eStaticClass() { return MyreqifPackage.Literals.SPECOBJECT; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public ALTERNATIVEIDType13 getALTERNATIVEID() { return aLTERNATIVEID; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public NotificationChain basicSetALTERNATIVEID(ALTERNATIVEIDType13 newALTERNATIVEID, NotificationChain msgs) { ALTERNATIVEIDType13 oldALTERNATIVEID = aLTERNATIVEID; aLTERNATIVEID = newALTERNATIVEID; if (eNotificationRequired()) { ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, MyreqifPackage.SPECOBJECT__ALTERNATIVEID, oldALTERNATIVEID, newALTERNATIVEID); if (msgs == null) msgs = notification; else msgs.add(notification); } return msgs; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setALTERNATIVEID(ALTERNATIVEIDType13 newALTERNATIVEID) { if (newALTERNATIVEID != aLTERNATIVEID) { NotificationChain msgs = null; if (aLTERNATIVEID != null) msgs = ((InternalEObject)aLTERNATIVEID).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - MyreqifPackage.SPECOBJECT__ALTERNATIVEID, null, msgs); if (newALTERNATIVEID != null) msgs = ((InternalEObject)newALTERNATIVEID).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - MyreqifPackage.SPECOBJECT__ALTERNATIVEID, null, msgs); msgs = basicSetALTERNATIVEID(newALTERNATIVEID, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MyreqifPackage.SPECOBJECT__ALTERNATIVEID, newALTERNATIVEID, newALTERNATIVEID)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public VALUESType2 getVALUES() { return vALUES; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public NotificationChain basicSetVALUES(VALUESType2 newVALUES, NotificationChain msgs) { VALUESType2 oldVALUES = vALUES; vALUES = newVALUES; if (eNotificationRequired()) { ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, MyreqifPackage.SPECOBJECT__VALUES, oldVALUES, newVALUES); if (msgs == null) msgs = notification; else msgs.add(notification); } return msgs; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setVALUES(VALUESType2 newVALUES) { if (newVALUES != vALUES) { NotificationChain msgs = null; if (vALUES != null) msgs = ((InternalEObject)vALUES).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - MyreqifPackage.SPECOBJECT__VALUES, null, msgs); if (newVALUES != null) msgs = ((InternalEObject)newVALUES).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - MyreqifPackage.SPECOBJECT__VALUES, null, msgs); msgs = basicSetVALUES(newVALUES, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MyreqifPackage.SPECOBJECT__VALUES, newVALUES, newVALUES)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public TYPEType6 getTYPE() { return tYPE; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public NotificationChain basicSetTYPE(TYPEType6 newTYPE, NotificationChain msgs) { TYPEType6 oldTYPE = tYPE; tYPE = newTYPE; if (eNotificationRequired()) { ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, MyreqifPackage.SPECOBJECT__TYPE, oldTYPE, newTYPE); if (msgs == null) msgs = notification; else msgs.add(notification); } return msgs; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setTYPE(TYPEType6 newTYPE) { if (newTYPE != tYPE) { NotificationChain msgs = null; if (tYPE != null) msgs = ((InternalEObject)tYPE).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - MyreqifPackage.SPECOBJECT__TYPE, null, msgs); if (newTYPE != null) msgs = ((InternalEObject)newTYPE).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - MyreqifPackage.SPECOBJECT__TYPE, null, msgs); msgs = basicSetTYPE(newTYPE, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MyreqifPackage.SPECOBJECT__TYPE, newTYPE, newTYPE)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getDESC() { return dESC; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setDESC(String newDESC) { String oldDESC = dESC; dESC = newDESC; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MyreqifPackage.SPECOBJECT__DESC, oldDESC, dESC)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getIDENTIFIER() { return iDENTIFIER; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setIDENTIFIER(String newIDENTIFIER) { String oldIDENTIFIER = iDENTIFIER; iDENTIFIER = newIDENTIFIER; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MyreqifPackage.SPECOBJECT__IDENTIFIER, oldIDENTIFIER, iDENTIFIER)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public XMLGregorianCalendar getLASTCHANGE() { return lASTCHANGE; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setLASTCHANGE(XMLGregorianCalendar newLASTCHANGE) { XMLGregorianCalendar oldLASTCHANGE = lASTCHANGE; lASTCHANGE = newLASTCHANGE; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MyreqifPackage.SPECOBJECT__LASTCHANGE, oldLASTCHANGE, lASTCHANGE)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getLONGNAME() { return lONGNAME; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setLONGNAME(String newLONGNAME) { String oldLONGNAME = lONGNAME; lONGNAME = newLONGNAME; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, MyreqifPackage.SPECOBJECT__LONGNAME, oldLONGNAME, lONGNAME)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { switch (featureID) { case MyreqifPackage.SPECOBJECT__ALTERNATIVEID: return basicSetALTERNATIVEID(null, msgs); case MyreqifPackage.SPECOBJECT__VALUES: return basicSetVALUES(null, msgs); case MyreqifPackage.SPECOBJECT__TYPE: return basicSetTYPE(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 MyreqifPackage.SPECOBJECT__ALTERNATIVEID: return getALTERNATIVEID(); case MyreqifPackage.SPECOBJECT__VALUES: return getVALUES(); case MyreqifPackage.SPECOBJECT__TYPE: return getTYPE(); case MyreqifPackage.SPECOBJECT__DESC: return getDESC(); case MyreqifPackage.SPECOBJECT__IDENTIFIER: return getIDENTIFIER(); case MyreqifPackage.SPECOBJECT__LASTCHANGE: return getLASTCHANGE(); case MyreqifPackage.SPECOBJECT__LONGNAME: return getLONGNAME(); } return super.eGet(featureID, resolve, coreType); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eSet(int featureID, Object newValue) { switch (featureID) { case MyreqifPackage.SPECOBJECT__ALTERNATIVEID: setALTERNATIVEID((ALTERNATIVEIDType13)newValue); return; case MyreqifPackage.SPECOBJECT__VALUES: setVALUES((VALUESType2)newValue); return; case MyreqifPackage.SPECOBJECT__TYPE: setTYPE((TYPEType6)newValue); return; case MyreqifPackage.SPECOBJECT__DESC: setDESC((String)newValue); return; case MyreqifPackage.SPECOBJECT__IDENTIFIER: setIDENTIFIER((String)newValue); return; case MyreqifPackage.SPECOBJECT__LASTCHANGE: setLASTCHANGE((XMLGregorianCalendar)newValue); return; case MyreqifPackage.SPECOBJECT__LONGNAME: setLONGNAME((String)newValue); return; } super.eSet(featureID, newValue); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eUnset(int featureID) { switch (featureID) { case MyreqifPackage.SPECOBJECT__ALTERNATIVEID: setALTERNATIVEID((ALTERNATIVEIDType13)null); return; case MyreqifPackage.SPECOBJECT__VALUES: setVALUES((VALUESType2)null); return; case MyreqifPackage.SPECOBJECT__TYPE: setTYPE((TYPEType6)null); return; case MyreqifPackage.SPECOBJECT__DESC: setDESC(DESC_EDEFAULT); return; case MyreqifPackage.SPECOBJECT__IDENTIFIER: setIDENTIFIER(IDENTIFIER_EDEFAULT); return; case MyreqifPackage.SPECOBJECT__LASTCHANGE: setLASTCHANGE(LASTCHANGE_EDEFAULT); return; case MyreqifPackage.SPECOBJECT__LONGNAME: setLONGNAME(LONGNAME_EDEFAULT); return; } super.eUnset(featureID); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean eIsSet(int featureID) { switch (featureID) { case MyreqifPackage.SPECOBJECT__ALTERNATIVEID: return aLTERNATIVEID != null; case MyreqifPackage.SPECOBJECT__VALUES: return vALUES != null; case MyreqifPackage.SPECOBJECT__TYPE: return tYPE != null; case MyreqifPackage.SPECOBJECT__DESC: return DESC_EDEFAULT == null ? dESC != null : !DESC_EDEFAULT.equals(dESC); case MyreqifPackage.SPECOBJECT__IDENTIFIER: return IDENTIFIER_EDEFAULT == null ? iDENTIFIER != null : !IDENTIFIER_EDEFAULT.equals(iDENTIFIER); case MyreqifPackage.SPECOBJECT__LASTCHANGE: return LASTCHANGE_EDEFAULT == null ? lASTCHANGE != null : !LASTCHANGE_EDEFAULT.equals(lASTCHANGE); case MyreqifPackage.SPECOBJECT__LONGNAME: return LONGNAME_EDEFAULT == null ? lONGNAME != null : !LONGNAME_EDEFAULT.equals(lONGNAME); } return super.eIsSet(featureID); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String toString() { if (eIsProxy()) return super.toString(); StringBuffer result = new StringBuffer(super.toString()); result.append(" (dESC: "); result.append(dESC); result.append(", iDENTIFIER: "); result.append(iDENTIFIER); result.append(", lASTCHANGE: "); result.append(lASTCHANGE); result.append(", lONGNAME: "); result.append(lONGNAME); result.append(')'); return result.toString(); } } //SPECOBJECTImpl