| /** |
| */ |
| package org.w3._1999.xhtml.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.eclipse.emf.ecore.util.BasicFeatureMap; |
| import org.eclipse.emf.ecore.util.FeatureMap; |
| import org.eclipse.emf.ecore.util.InternalEList; |
| |
| import org.eclipse.emf.ecore.xml.namespace.SpaceType; |
| |
| import org.w3._1999.xhtml.DeferType; |
| import org.w3._1999.xhtml.ScriptType; |
| import org.w3._1999.xhtml.XhtmlPackage; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * An implementation of the model object '<em><b>Script Type</b></em>'. |
| * <!-- end-user-doc --> |
| * <p> |
| * The following features are implemented: |
| * </p> |
| * <ul> |
| * <li>{@link org.w3._1999.xhtml.impl.ScriptTypeImpl#getMixed <em>Mixed</em>}</li> |
| * <li>{@link org.w3._1999.xhtml.impl.ScriptTypeImpl#getCharset <em>Charset</em>}</li> |
| * <li>{@link org.w3._1999.xhtml.impl.ScriptTypeImpl#getDefer <em>Defer</em>}</li> |
| * <li>{@link org.w3._1999.xhtml.impl.ScriptTypeImpl#getId <em>Id</em>}</li> |
| * <li>{@link org.w3._1999.xhtml.impl.ScriptTypeImpl#getSpace <em>Space</em>}</li> |
| * <li>{@link org.w3._1999.xhtml.impl.ScriptTypeImpl#getSrc <em>Src</em>}</li> |
| * <li>{@link org.w3._1999.xhtml.impl.ScriptTypeImpl#getType <em>Type</em>}</li> |
| * </ul> |
| * |
| * @generated |
| */ |
| public class ScriptTypeImpl extends MinimalEObjectImpl.Container implements ScriptType { |
| /** |
| * The cached value of the '{@link #getMixed() <em>Mixed</em>}' attribute list. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getMixed() |
| * @generated |
| * @ordered |
| */ |
| protected FeatureMap mixed; |
| |
| /** |
| * The default value of the '{@link #getCharset() <em>Charset</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getCharset() |
| * @generated |
| * @ordered |
| */ |
| protected static final String CHARSET_EDEFAULT = null; |
| |
| /** |
| * The cached value of the '{@link #getCharset() <em>Charset</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getCharset() |
| * @generated |
| * @ordered |
| */ |
| protected String charset = CHARSET_EDEFAULT; |
| |
| /** |
| * The default value of the '{@link #getDefer() <em>Defer</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getDefer() |
| * @generated |
| * @ordered |
| */ |
| protected static final DeferType DEFER_EDEFAULT = DeferType.DEFER; |
| |
| /** |
| * The cached value of the '{@link #getDefer() <em>Defer</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getDefer() |
| * @generated |
| * @ordered |
| */ |
| protected DeferType defer = DEFER_EDEFAULT; |
| |
| /** |
| * This is true if the Defer attribute has been set. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| * @ordered |
| */ |
| protected boolean deferESet; |
| |
| /** |
| * The default value of the '{@link #getId() <em>Id</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getId() |
| * @generated |
| * @ordered |
| */ |
| protected static final String ID_EDEFAULT = null; |
| |
| /** |
| * The cached value of the '{@link #getId() <em>Id</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getId() |
| * @generated |
| * @ordered |
| */ |
| protected String id = ID_EDEFAULT; |
| |
| /** |
| * The default value of the '{@link #getSpace() <em>Space</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getSpace() |
| * @generated |
| * @ordered |
| */ |
| protected static final SpaceType SPACE_EDEFAULT = SpaceType.PRESERVE_LITERAL; |
| |
| /** |
| * The cached value of the '{@link #getSpace() <em>Space</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getSpace() |
| * @generated |
| * @ordered |
| */ |
| protected SpaceType space = SPACE_EDEFAULT; |
| |
| /** |
| * This is true if the Space attribute has been set. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| * @ordered |
| */ |
| protected boolean spaceESet; |
| |
| /** |
| * The default value of the '{@link #getSrc() <em>Src</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getSrc() |
| * @generated |
| * @ordered |
| */ |
| protected static final String SRC_EDEFAULT = null; |
| |
| /** |
| * The cached value of the '{@link #getSrc() <em>Src</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getSrc() |
| * @generated |
| * @ordered |
| */ |
| protected String src = SRC_EDEFAULT; |
| |
| /** |
| * The default value of the '{@link #getType() <em>Type</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getType() |
| * @generated |
| * @ordered |
| */ |
| protected static final String TYPE_EDEFAULT = null; |
| |
| /** |
| * The cached value of the '{@link #getType() <em>Type</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getType() |
| * @generated |
| * @ordered |
| */ |
| protected String type = TYPE_EDEFAULT; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected ScriptTypeImpl() { |
| super(); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| protected EClass eStaticClass() { |
| return XhtmlPackage.eINSTANCE.getScriptType(); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public FeatureMap getMixed() { |
| if (mixed == null) { |
| mixed = new BasicFeatureMap(this, XhtmlPackage.SCRIPT_TYPE__MIXED); |
| } |
| return mixed; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public String getCharset() { |
| return charset; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setCharset(String newCharset) { |
| String oldCharset = charset; |
| charset = newCharset; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.SCRIPT_TYPE__CHARSET, oldCharset, charset)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public DeferType getDefer() { |
| return defer; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setDefer(DeferType newDefer) { |
| DeferType oldDefer = defer; |
| defer = newDefer == null ? DEFER_EDEFAULT : newDefer; |
| boolean oldDeferESet = deferESet; |
| deferESet = true; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.SCRIPT_TYPE__DEFER, oldDefer, defer, !oldDeferESet)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void unsetDefer() { |
| DeferType oldDefer = defer; |
| boolean oldDeferESet = deferESet; |
| defer = DEFER_EDEFAULT; |
| deferESet = false; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.UNSET, XhtmlPackage.SCRIPT_TYPE__DEFER, oldDefer, DEFER_EDEFAULT, oldDeferESet)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public boolean isSetDefer() { |
| return deferESet; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public String getId() { |
| return id; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setId(String newId) { |
| String oldId = id; |
| id = newId; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.SCRIPT_TYPE__ID, oldId, id)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public SpaceType getSpace() { |
| return space; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setSpace(SpaceType newSpace) { |
| SpaceType oldSpace = space; |
| space = newSpace == null ? SPACE_EDEFAULT : newSpace; |
| boolean oldSpaceESet = spaceESet; |
| spaceESet = true; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.SCRIPT_TYPE__SPACE, oldSpace, space, !oldSpaceESet)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void unsetSpace() { |
| SpaceType oldSpace = space; |
| boolean oldSpaceESet = spaceESet; |
| space = SPACE_EDEFAULT; |
| spaceESet = false; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.UNSET, XhtmlPackage.SCRIPT_TYPE__SPACE, oldSpace, SPACE_EDEFAULT, oldSpaceESet)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public boolean isSetSpace() { |
| return spaceESet; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public String getSrc() { |
| return src; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setSrc(String newSrc) { |
| String oldSrc = src; |
| src = newSrc; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.SCRIPT_TYPE__SRC, oldSrc, src)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public String getType() { |
| return type; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setType(String newType) { |
| String oldType = type; |
| type = newType; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.SCRIPT_TYPE__TYPE, oldType, type)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { |
| switch (featureID) { |
| case XhtmlPackage.SCRIPT_TYPE__MIXED: |
| return ((InternalEList<?>)getMixed()).basicRemove(otherEnd, 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 XhtmlPackage.SCRIPT_TYPE__MIXED: |
| if (coreType) return getMixed(); |
| return ((FeatureMap.Internal)getMixed()).getWrapper(); |
| case XhtmlPackage.SCRIPT_TYPE__CHARSET: |
| return getCharset(); |
| case XhtmlPackage.SCRIPT_TYPE__DEFER: |
| return getDefer(); |
| case XhtmlPackage.SCRIPT_TYPE__ID: |
| return getId(); |
| case XhtmlPackage.SCRIPT_TYPE__SPACE: |
| return getSpace(); |
| case XhtmlPackage.SCRIPT_TYPE__SRC: |
| return getSrc(); |
| case XhtmlPackage.SCRIPT_TYPE__TYPE: |
| return getType(); |
| } |
| return super.eGet(featureID, resolve, coreType); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public void eSet(int featureID, Object newValue) { |
| switch (featureID) { |
| case XhtmlPackage.SCRIPT_TYPE__MIXED: |
| ((FeatureMap.Internal)getMixed()).set(newValue); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__CHARSET: |
| setCharset((String)newValue); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__DEFER: |
| setDefer((DeferType)newValue); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__ID: |
| setId((String)newValue); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__SPACE: |
| setSpace((SpaceType)newValue); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__SRC: |
| setSrc((String)newValue); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__TYPE: |
| setType((String)newValue); |
| return; |
| } |
| super.eSet(featureID, newValue); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public void eUnset(int featureID) { |
| switch (featureID) { |
| case XhtmlPackage.SCRIPT_TYPE__MIXED: |
| getMixed().clear(); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__CHARSET: |
| setCharset(CHARSET_EDEFAULT); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__DEFER: |
| unsetDefer(); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__ID: |
| setId(ID_EDEFAULT); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__SPACE: |
| unsetSpace(); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__SRC: |
| setSrc(SRC_EDEFAULT); |
| return; |
| case XhtmlPackage.SCRIPT_TYPE__TYPE: |
| setType(TYPE_EDEFAULT); |
| return; |
| } |
| super.eUnset(featureID); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public boolean eIsSet(int featureID) { |
| switch (featureID) { |
| case XhtmlPackage.SCRIPT_TYPE__MIXED: |
| return mixed != null && !mixed.isEmpty(); |
| case XhtmlPackage.SCRIPT_TYPE__CHARSET: |
| return CHARSET_EDEFAULT == null ? charset != null : !CHARSET_EDEFAULT.equals(charset); |
| case XhtmlPackage.SCRIPT_TYPE__DEFER: |
| return isSetDefer(); |
| case XhtmlPackage.SCRIPT_TYPE__ID: |
| return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); |
| case XhtmlPackage.SCRIPT_TYPE__SPACE: |
| return isSetSpace(); |
| case XhtmlPackage.SCRIPT_TYPE__SRC: |
| return SRC_EDEFAULT == null ? src != null : !SRC_EDEFAULT.equals(src); |
| case XhtmlPackage.SCRIPT_TYPE__TYPE: |
| return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type); |
| } |
| 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(" (mixed: "); |
| result.append(mixed); |
| result.append(", charset: "); |
| result.append(charset); |
| result.append(", defer: "); |
| if (deferESet) result.append(defer); else result.append("<unset>"); |
| result.append(", id: "); |
| result.append(id); |
| result.append(", space: "); |
| if (spaceESet) result.append(space); else result.append("<unset>"); |
| result.append(", src: "); |
| result.append(src); |
| result.append(", type: "); |
| result.append(type); |
| result.append(')'); |
| return result.toString(); |
| } |
| |
| } //ScriptTypeImpl |