/** * Copyright (c) 2006-2010 IBM Corporation 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: * Peter Nehrer and IBM - Initial API and implementation */ package org.eclipse.emf.ecore.xml.type.impl; import com.google.gwt.user.client.rpc.GwtTransient; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.impl.EObjectImpl; import org.eclipse.emf.ecore.xml.type.ProcessingInstruction; import org.eclipse.emf.ecore.xml.type.XMLTypePackage; /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>Processing Instruction Type</b></em>'. * <!-- end-user-doc --> * <p> * The following features are implemented: * <ul> * <li>{@link org.eclipse.emf.ecore.xml.type.impl.ProcessingInstructionImpl#getData <em>Data</em>}</li> * <li>{@link org.eclipse.emf.ecore.xml.type.impl.ProcessingInstructionImpl#getTarget <em>Target</em>}</li> * </ul> * </p> * * @generated */ public class ProcessingInstructionImpl extends EObjectImpl implements ProcessingInstruction { /** * The default value of the '{@link #getData() <em>Data</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getData() * @generated * @ordered */ protected static final String DATA_EDEFAULT = null; /** * The cached value of the '{@link #getData() <em>Data</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getData() * @generated * @ordered */ @GwtTransient protected String data = DATA_EDEFAULT; /** * The default value of the '{@link #getTarget() <em>Target</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getTarget() * @generated * @ordered */ protected static final String TARGET_EDEFAULT = null; /** * The cached value of the '{@link #getTarget() <em>Target</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getTarget() * @generated * @ordered */ @GwtTransient protected String target = TARGET_EDEFAULT; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected ProcessingInstructionImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override protected EClass eStaticClass() { return XMLTypePackage.Literals.PROCESSING_INSTRUCTION; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getData() { return data; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setData(String newData) { String oldData = data; data = newData; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, XMLTypePackage.PROCESSING_INSTRUCTION__DATA, oldData, data)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getTarget() { return target; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setTarget(String newTarget) { String oldTarget = target; target = newTarget; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, XMLTypePackage.PROCESSING_INSTRUCTION__TARGET, oldTarget, target)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { case XMLTypePackage.PROCESSING_INSTRUCTION__DATA: return getData(); case XMLTypePackage.PROCESSING_INSTRUCTION__TARGET: return getTarget(); } return eDynamicGet(featureID, resolve, coreType); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eSet(int featureID, Object newValue) { switch (featureID) { case XMLTypePackage.PROCESSING_INSTRUCTION__DATA: setData((String)newValue); return; case XMLTypePackage.PROCESSING_INSTRUCTION__TARGET: setTarget((String)newValue); return; } eDynamicSet(featureID, newValue); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eUnset(int featureID) { switch (featureID) { case XMLTypePackage.PROCESSING_INSTRUCTION__DATA: setData(DATA_EDEFAULT); return; case XMLTypePackage.PROCESSING_INSTRUCTION__TARGET: setTarget(TARGET_EDEFAULT); return; } eDynamicUnset(featureID); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean eIsSet(int featureID) { switch (featureID) { case XMLTypePackage.PROCESSING_INSTRUCTION__DATA: return DATA_EDEFAULT == null ? data != null : !DATA_EDEFAULT.equals(data); case XMLTypePackage.PROCESSING_INSTRUCTION__TARGET: return TARGET_EDEFAULT == null ? target != null : !TARGET_EDEFAULT.equals(target); } return eDynamicIsSet(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(" (data: "); result.append(data); result.append(", target: "); result.append(target); result.append(')'); return result.toString(); } } //ProcessingInstructionTypeImpl