001/**
002 */
003package org.nasdanika.html.model.bootstrap.impl;
004
005import org.eclipse.emf.common.notify.NotificationChain;
006
007import org.eclipse.emf.ecore.EClass;
008import org.eclipse.emf.ecore.InternalEObject;
009
010import org.nasdanika.html.model.bootstrap.Appearance;
011import org.nasdanika.html.model.bootstrap.BootstrapElement;
012import org.nasdanika.html.model.bootstrap.BootstrapPackage;
013
014import org.nasdanika.html.model.html.impl.HtmlElementImpl;
015
016/**
017 * <!-- begin-user-doc -->
018 * An implementation of the model object '<em><b>Element</b></em>'.
019 * <!-- end-user-doc -->
020 * <p>
021 * The following features are implemented:
022 * </p>
023 * <ul>
024 *   <li>{@link org.nasdanika.html.model.bootstrap.impl.BootstrapElementImpl#getAppearance <em>Appearance</em>}</li>
025 * </ul>
026 *
027 * @generated
028 */
029public class BootstrapElementImpl extends HtmlElementImpl implements BootstrapElement {
030        /**
031         * <!-- begin-user-doc -->
032         * <!-- end-user-doc -->
033         * @generated
034         */
035        protected BootstrapElementImpl() {
036                super();
037        }
038
039        /**
040         * <!-- begin-user-doc -->
041         * <!-- end-user-doc -->
042         * @generated
043         */
044        @Override
045        protected EClass eStaticClass() {
046                return BootstrapPackage.Literals.BOOTSTRAP_ELEMENT;
047        }
048
049        /**
050         * <!-- begin-user-doc -->
051         * <!-- end-user-doc -->
052         * @generated
053         */
054        @Override
055        public Appearance getAppearance() {
056                return (Appearance)eDynamicGet(BootstrapPackage.BOOTSTRAP_ELEMENT__APPEARANCE, BootstrapPackage.Literals.BOOTSTRAP_ELEMENT__APPEARANCE, true, true);
057        }
058
059        /**
060         * <!-- begin-user-doc -->
061         * <!-- end-user-doc -->
062         * @generated
063         */
064        public NotificationChain basicSetAppearance(Appearance newAppearance, NotificationChain msgs) {
065                msgs = eDynamicInverseAdd((InternalEObject)newAppearance, BootstrapPackage.BOOTSTRAP_ELEMENT__APPEARANCE, msgs);
066                return msgs;
067        }
068
069        /**
070         * <!-- begin-user-doc -->
071         * <!-- end-user-doc -->
072         * @generated
073         */
074        @Override
075        public void setAppearance(Appearance newAppearance) {
076                eDynamicSet(BootstrapPackage.BOOTSTRAP_ELEMENT__APPEARANCE, BootstrapPackage.Literals.BOOTSTRAP_ELEMENT__APPEARANCE, newAppearance);
077        }
078
079        /**
080         * <!-- begin-user-doc -->
081         * <!-- end-user-doc -->
082         * @generated
083         */
084        @Override
085        public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
086                switch (featureID) {
087                        case BootstrapPackage.BOOTSTRAP_ELEMENT__APPEARANCE:
088                                return basicSetAppearance(null, msgs);
089                }
090                return super.eInverseRemove(otherEnd, featureID, msgs);
091        }
092
093        /**
094         * <!-- begin-user-doc -->
095         * <!-- end-user-doc -->
096         * @generated
097         */
098        @Override
099        public Object eGet(int featureID, boolean resolve, boolean coreType) {
100                switch (featureID) {
101                        case BootstrapPackage.BOOTSTRAP_ELEMENT__APPEARANCE:
102                                return getAppearance();
103                }
104                return super.eGet(featureID, resolve, coreType);
105        }
106
107        /**
108         * <!-- begin-user-doc -->
109         * <!-- end-user-doc -->
110         * @generated
111         */
112        @Override
113        public void eSet(int featureID, Object newValue) {
114                switch (featureID) {
115                        case BootstrapPackage.BOOTSTRAP_ELEMENT__APPEARANCE:
116                                setAppearance((Appearance)newValue);
117                                return;
118                }
119                super.eSet(featureID, newValue);
120        }
121
122        /**
123         * <!-- begin-user-doc -->
124         * <!-- end-user-doc -->
125         * @generated
126         */
127        @Override
128        public void eUnset(int featureID) {
129                switch (featureID) {
130                        case BootstrapPackage.BOOTSTRAP_ELEMENT__APPEARANCE:
131                                setAppearance((Appearance)null);
132                                return;
133                }
134                super.eUnset(featureID);
135        }
136
137        /**
138         * <!-- begin-user-doc -->
139         * <!-- end-user-doc -->
140         * @generated
141         */
142        @Override
143        public boolean eIsSet(int featureID) {
144                switch (featureID) {
145                        case BootstrapPackage.BOOTSTRAP_ELEMENT__APPEARANCE:
146                                return getAppearance() != null;
147                }
148                return super.eIsSet(featureID);
149        }
150
151} //BootstrapElementImpl