blob: 08fbf224cb4072f5b03a37d26a6ee12c86d4cf6d [file] [log] [blame]
/**
*/
package morphisms.impl;
import graph.Node;
import morphisms.Mapping;
import morphisms.MorphismsPackage;
import org.eclipse.emf.common.notify.Notification;
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;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Mapping</b></em>'.
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
* </p>
* <ul>
* <li>{@link morphisms.impl.MappingImpl#getOrigin <em>Origin</em>}</li>
* <li>{@link morphisms.impl.MappingImpl#getImage <em>Image</em>}</li>
* </ul>
*
* @generated
*/
public class MappingImpl extends MinimalEObjectImpl.Container implements Mapping {
/**
* The cached value of the '{@link #getOrigin() <em>Origin</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getOrigin()
* @generated
* @ordered
*/
protected Node origin;
/**
* The cached value of the '{@link #getImage() <em>Image</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getImage()
* @generated
* @ordered
*/
protected Node image;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected MappingImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return MorphismsPackage.Literals.MAPPING;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Node getOrigin() {
if (origin != null && origin.eIsProxy()) {
InternalEObject oldOrigin = (InternalEObject)origin;
origin = (Node)eResolveProxy(oldOrigin);
if (origin != oldOrigin) {
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.RESOLVE, MorphismsPackage.MAPPING__ORIGIN, oldOrigin, origin));
}
}
return origin;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Node basicGetOrigin() {
return origin;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setOrigin(Node newOrigin) {
Node oldOrigin = origin;
origin = newOrigin;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, MorphismsPackage.MAPPING__ORIGIN, oldOrigin, origin));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Node getImage() {
if (image != null && image.eIsProxy()) {
InternalEObject oldImage = (InternalEObject)image;
image = (Node)eResolveProxy(oldImage);
if (image != oldImage) {
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.RESOLVE, MorphismsPackage.MAPPING__IMAGE, oldImage, image));
}
}
return image;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Node basicGetImage() {
return image;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setImage(Node newImage) {
Node oldImage = image;
image = newImage;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, MorphismsPackage.MAPPING__IMAGE, oldImage, image));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case MorphismsPackage.MAPPING__ORIGIN:
if (resolve) return getOrigin();
return basicGetOrigin();
case MorphismsPackage.MAPPING__IMAGE:
if (resolve) return getImage();
return basicGetImage();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case MorphismsPackage.MAPPING__ORIGIN:
setOrigin((Node)newValue);
return;
case MorphismsPackage.MAPPING__IMAGE:
setImage((Node)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case MorphismsPackage.MAPPING__ORIGIN:
setOrigin((Node)null);
return;
case MorphismsPackage.MAPPING__IMAGE:
setImage((Node)null);
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case MorphismsPackage.MAPPING__ORIGIN:
return origin != null;
case MorphismsPackage.MAPPING__IMAGE:
return image != null;
}
return super.eIsSet(featureID);
}
} //MappingImpl