001/**
002 */
003package org.nasdanika.html.model.html.impl;
004
005import org.eclipse.emf.ecore.EClass;
006import org.nasdanika.html.model.html.HtmlPackage;
007import org.nasdanika.html.model.html.Tag;
008
009/**
010 * <!-- begin-user-doc -->
011 * An implementation of the model object '<em><b>Tag</b></em>'.
012 * <!-- end-user-doc -->
013 * <p>
014 * The following features are implemented:
015 * </p>
016 * <ul>
017 *   <li>{@link org.nasdanika.html.model.html.impl.TagImpl#getName <em>Name</em>}</li>
018 * </ul>
019 *
020 * @generated
021 */
022public class TagImpl extends HtmlElementImpl implements Tag {
023        /**
024         * The default value of the '{@link #getName() <em>Name</em>}' attribute.
025         * <!-- begin-user-doc -->
026         * <!-- end-user-doc -->
027         * @see #getName()
028         * @generated
029         * @ordered
030         */
031        protected static final String NAME_EDEFAULT = "div";
032
033        /**
034         * <!-- begin-user-doc -->
035         * <!-- end-user-doc -->
036         * @generated
037         */
038        protected TagImpl() {
039                super();
040        }
041
042        /**
043         * <!-- begin-user-doc -->
044         * <!-- end-user-doc -->
045         * @generated
046         */
047        @Override
048        protected EClass eStaticClass() {
049                return HtmlPackage.Literals.TAG;
050        }
051
052        /**
053         * <!-- begin-user-doc -->
054         * <!-- end-user-doc -->
055         * @generated
056         */
057        @Override
058        public String getName() {
059                return (String)eDynamicGet(HtmlPackage.TAG__NAME, HtmlPackage.Literals.TAG__NAME, true, true);
060        }
061
062        /**
063         * <!-- begin-user-doc -->
064         * <!-- end-user-doc -->
065         * @generated
066         */
067        @Override
068        public void setName(String newName) {
069                eDynamicSet(HtmlPackage.TAG__NAME, HtmlPackage.Literals.TAG__NAME, newName);
070        }
071
072        /**
073         * <!-- begin-user-doc -->
074         * <!-- end-user-doc -->
075         * @generated
076         */
077        @Override
078        public Object eGet(int featureID, boolean resolve, boolean coreType) {
079                switch (featureID) {
080                        case HtmlPackage.TAG__NAME:
081                                return getName();
082                }
083                return super.eGet(featureID, resolve, coreType);
084        }
085
086        /**
087         * <!-- begin-user-doc -->
088         * <!-- end-user-doc -->
089         * @generated
090         */
091        @SuppressWarnings("unchecked")
092        @Override
093        public void eSet(int featureID, Object newValue) {
094                switch (featureID) {
095                        case HtmlPackage.TAG__NAME:
096                                setName((String)newValue);
097                                return;
098                }
099                super.eSet(featureID, newValue);
100        }
101
102        /**
103         * <!-- begin-user-doc -->
104         * <!-- end-user-doc -->
105         * @generated
106         */
107        @Override
108        public void eUnset(int featureID) {
109                switch (featureID) {
110                        case HtmlPackage.TAG__NAME:
111                                setName(NAME_EDEFAULT);
112                                return;
113                }
114                super.eUnset(featureID);
115        }
116
117        /**
118         * <!-- begin-user-doc -->
119         * <!-- end-user-doc -->
120         * @generated
121         */
122        @Override
123        public boolean eIsSet(int featureID) {
124                switch (featureID) {
125                        case HtmlPackage.TAG__NAME:
126                                return NAME_EDEFAULT == null ? getName() != null : !NAME_EDEFAULT.equals(getName());
127                }
128                return super.eIsSet(featureID);
129        }
130
131} //TagImpl