001/**
002 */
003package org.nasdanika.html.model.bootstrap.impl;
004
005import org.eclipse.emf.ecore.EClass;
006
007import org.nasdanika.html.bootstrap.Theme;
008import org.nasdanika.html.model.bootstrap.BootstrapPackage;
009import org.nasdanika.html.model.bootstrap.Page;
010
011/**
012 * <!-- begin-user-doc -->
013 * An implementation of the model object '<em><b>Page</b></em>'.
014 * <!-- end-user-doc -->
015 * <p>
016 * The following features are implemented:
017 * </p>
018 * <ul>
019 *   <li>{@link org.nasdanika.html.model.bootstrap.impl.PageImpl#isCdn <em>Cdn</em>}</li>
020 *   <li>{@link org.nasdanika.html.model.bootstrap.impl.PageImpl#getTheme <em>Theme</em>}</li>
021 * </ul>
022 *
023 * @generated
024 */
025public class PageImpl extends org.nasdanika.html.model.html.impl.PageImpl implements Page {
026        /**
027         * The default value of the '{@link #isCdn() <em>Cdn</em>}' attribute.
028         * <!-- begin-user-doc -->
029         * <!-- end-user-doc -->
030         * @see #isCdn()
031         * @generated
032         * @ordered
033         */
034        protected static final boolean CDN_EDEFAULT = true;
035
036        /**
037         * The default value of the '{@link #getTheme() <em>Theme</em>}' attribute.
038         * <!-- begin-user-doc -->
039         * <!-- end-user-doc -->
040         * @see #getTheme()
041         * @generated
042         * @ordered
043         */
044        protected static final Theme THEME_EDEFAULT = null;
045
046        /**
047         * <!-- begin-user-doc -->
048         * <!-- end-user-doc -->
049         * @generated
050         */
051        protected PageImpl() {
052                super();
053        }
054
055        /**
056         * <!-- begin-user-doc -->
057         * <!-- end-user-doc -->
058         * @generated
059         */
060        @Override
061        protected EClass eStaticClass() {
062                return BootstrapPackage.Literals.PAGE;
063        }
064
065        /**
066         * <!-- begin-user-doc -->
067         * <!-- end-user-doc -->
068         * @generated
069         */
070        @Override
071        public boolean isCdn() {
072                return (Boolean)eDynamicGet(BootstrapPackage.PAGE__CDN, BootstrapPackage.Literals.PAGE__CDN, true, true);
073        }
074
075        /**
076         * <!-- begin-user-doc -->
077         * <!-- end-user-doc -->
078         * @generated
079         */
080        @Override
081        public void setCdn(boolean newCdn) {
082                eDynamicSet(BootstrapPackage.PAGE__CDN, BootstrapPackage.Literals.PAGE__CDN, newCdn);
083        }
084
085        /**
086         * <!-- begin-user-doc -->
087         * <!-- end-user-doc -->
088         * @generated
089         */
090        @Override
091        public Theme getTheme() {
092                return (Theme)eDynamicGet(BootstrapPackage.PAGE__THEME, BootstrapPackage.Literals.PAGE__THEME, true, true);
093        }
094
095        /**
096         * <!-- begin-user-doc -->
097         * <!-- end-user-doc -->
098         * @generated
099         */
100        @Override
101        public void setTheme(Theme newTheme) {
102                eDynamicSet(BootstrapPackage.PAGE__THEME, BootstrapPackage.Literals.PAGE__THEME, newTheme);
103        }
104
105        /**
106         * <!-- begin-user-doc -->
107         * <!-- end-user-doc -->
108         * @generated
109         */
110        @Override
111        public Object eGet(int featureID, boolean resolve, boolean coreType) {
112                switch (featureID) {
113                        case BootstrapPackage.PAGE__CDN:
114                                return isCdn();
115                        case BootstrapPackage.PAGE__THEME:
116                                return getTheme();
117                }
118                return super.eGet(featureID, resolve, coreType);
119        }
120
121        /**
122         * <!-- begin-user-doc -->
123         * <!-- end-user-doc -->
124         * @generated
125         */
126        @Override
127        public void eSet(int featureID, Object newValue) {
128                switch (featureID) {
129                        case BootstrapPackage.PAGE__CDN:
130                                setCdn((Boolean)newValue);
131                                return;
132                        case BootstrapPackage.PAGE__THEME:
133                                setTheme((Theme)newValue);
134                                return;
135                }
136                super.eSet(featureID, newValue);
137        }
138
139        /**
140         * <!-- begin-user-doc -->
141         * <!-- end-user-doc -->
142         * @generated
143         */
144        @Override
145        public void eUnset(int featureID) {
146                switch (featureID) {
147                        case BootstrapPackage.PAGE__CDN:
148                                setCdn(CDN_EDEFAULT);
149                                return;
150                        case BootstrapPackage.PAGE__THEME:
151                                setTheme(THEME_EDEFAULT);
152                                return;
153                }
154                super.eUnset(featureID);
155        }
156
157        /**
158         * <!-- begin-user-doc -->
159         * <!-- end-user-doc -->
160         * @generated
161         */
162        @Override
163        public boolean eIsSet(int featureID) {
164                switch (featureID) {
165                        case BootstrapPackage.PAGE__CDN:
166                                return isCdn() != CDN_EDEFAULT;
167                        case BootstrapPackage.PAGE__THEME:
168                                return THEME_EDEFAULT == null ? getTheme() != null : !THEME_EDEFAULT.equals(getTheme());
169                }
170                return super.eIsSet(featureID);
171        }
172
173} //PageImpl