001/**
002 */
003package org.nasdanika.html.model.bootstrap.impl;
004
005import org.eclipse.emf.ecore.EClass;
006
007import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
008
009import org.nasdanika.html.bootstrap.Color;
010import org.nasdanika.html.model.bootstrap.BootstrapPackage;
011import org.nasdanika.html.model.bootstrap.Border;
012
013/**
014 * <!-- begin-user-doc -->
015 * An implementation of the model object '<em><b>Border</b></em>'.
016 * <!-- end-user-doc -->
017 * <p>
018 * The following features are implemented:
019 * </p>
020 * <ul>
021 *   <li>{@link org.nasdanika.html.model.bootstrap.impl.BorderImpl#getColor <em>Color</em>}</li>
022 *   <li>{@link org.nasdanika.html.model.bootstrap.impl.BorderImpl#isTop <em>Top</em>}</li>
023 *   <li>{@link org.nasdanika.html.model.bootstrap.impl.BorderImpl#isBottom <em>Bottom</em>}</li>
024 *   <li>{@link org.nasdanika.html.model.bootstrap.impl.BorderImpl#isLeft <em>Left</em>}</li>
025 *   <li>{@link org.nasdanika.html.model.bootstrap.impl.BorderImpl#isRight <em>Right</em>}</li>
026 * </ul>
027 *
028 * @generated
029 */
030public class BorderImpl extends MinimalEObjectImpl.Container implements Border {
031        /**
032         * The default value of the '{@link #getColor() <em>Color</em>}' attribute.
033         * <!-- begin-user-doc -->
034         * <!-- end-user-doc -->
035         * @see #getColor()
036         * @generated
037         * @ordered
038         */
039        protected static final Color COLOR_EDEFAULT = null;
040
041        /**
042         * The default value of the '{@link #isTop() <em>Top</em>}' attribute.
043         * <!-- begin-user-doc -->
044         * <!-- end-user-doc -->
045         * @see #isTop()
046         * @generated
047         * @ordered
048         */
049        protected static final boolean TOP_EDEFAULT = false;
050
051        /**
052         * The default value of the '{@link #isBottom() <em>Bottom</em>}' attribute.
053         * <!-- begin-user-doc -->
054         * <!-- end-user-doc -->
055         * @see #isBottom()
056         * @generated
057         * @ordered
058         */
059        protected static final boolean BOTTOM_EDEFAULT = false;
060
061        /**
062         * The default value of the '{@link #isLeft() <em>Left</em>}' attribute.
063         * <!-- begin-user-doc -->
064         * <!-- end-user-doc -->
065         * @see #isLeft()
066         * @generated
067         * @ordered
068         */
069        protected static final boolean LEFT_EDEFAULT = false;
070
071        /**
072         * The default value of the '{@link #isRight() <em>Right</em>}' attribute.
073         * <!-- begin-user-doc -->
074         * <!-- end-user-doc -->
075         * @see #isRight()
076         * @generated
077         * @ordered
078         */
079        protected static final boolean RIGHT_EDEFAULT = false;
080
081        /**
082         * <!-- begin-user-doc -->
083         * <!-- end-user-doc -->
084         * @generated
085         */
086        protected BorderImpl() {
087                super();
088        }
089
090        /**
091         * <!-- begin-user-doc -->
092         * <!-- end-user-doc -->
093         * @generated
094         */
095        @Override
096        protected EClass eStaticClass() {
097                return BootstrapPackage.Literals.BORDER;
098        }
099
100        /**
101         * <!-- begin-user-doc -->
102         * <!-- end-user-doc -->
103         * @generated
104         */
105        @Override
106        protected int eStaticFeatureCount() {
107                return 0;
108        }
109
110        /**
111         * <!-- begin-user-doc -->
112         * <!-- end-user-doc -->
113         * @generated
114         */
115        @Override
116        public Color getColor() {
117                return (Color)eDynamicGet(BootstrapPackage.BORDER__COLOR, BootstrapPackage.Literals.BORDER__COLOR, true, true);
118        }
119
120        /**
121         * <!-- begin-user-doc -->
122         * <!-- end-user-doc -->
123         * @generated
124         */
125        @Override
126        public void setColor(Color newColor) {
127                eDynamicSet(BootstrapPackage.BORDER__COLOR, BootstrapPackage.Literals.BORDER__COLOR, newColor);
128        }
129
130        /**
131         * <!-- begin-user-doc -->
132         * <!-- end-user-doc -->
133         * @generated
134         */
135        @Override
136        public boolean isTop() {
137                return (Boolean)eDynamicGet(BootstrapPackage.BORDER__TOP, BootstrapPackage.Literals.BORDER__TOP, true, true);
138        }
139
140        /**
141         * <!-- begin-user-doc -->
142         * <!-- end-user-doc -->
143         * @generated
144         */
145        @Override
146        public void setTop(boolean newTop) {
147                eDynamicSet(BootstrapPackage.BORDER__TOP, BootstrapPackage.Literals.BORDER__TOP, newTop);
148        }
149
150        /**
151         * <!-- begin-user-doc -->
152         * <!-- end-user-doc -->
153         * @generated
154         */
155        @Override
156        public boolean isBottom() {
157                return (Boolean)eDynamicGet(BootstrapPackage.BORDER__BOTTOM, BootstrapPackage.Literals.BORDER__BOTTOM, true, true);
158        }
159
160        /**
161         * <!-- begin-user-doc -->
162         * <!-- end-user-doc -->
163         * @generated
164         */
165        @Override
166        public void setBottom(boolean newBottom) {
167                eDynamicSet(BootstrapPackage.BORDER__BOTTOM, BootstrapPackage.Literals.BORDER__BOTTOM, newBottom);
168        }
169
170        /**
171         * <!-- begin-user-doc -->
172         * <!-- end-user-doc -->
173         * @generated
174         */
175        @Override
176        public boolean isLeft() {
177                return (Boolean)eDynamicGet(BootstrapPackage.BORDER__LEFT, BootstrapPackage.Literals.BORDER__LEFT, true, true);
178        }
179
180        /**
181         * <!-- begin-user-doc -->
182         * <!-- end-user-doc -->
183         * @generated
184         */
185        @Override
186        public void setLeft(boolean newLeft) {
187                eDynamicSet(BootstrapPackage.BORDER__LEFT, BootstrapPackage.Literals.BORDER__LEFT, newLeft);
188        }
189
190        /**
191         * <!-- begin-user-doc -->
192         * <!-- end-user-doc -->
193         * @generated
194         */
195        @Override
196        public boolean isRight() {
197                return (Boolean)eDynamicGet(BootstrapPackage.BORDER__RIGHT, BootstrapPackage.Literals.BORDER__RIGHT, true, true);
198        }
199
200        /**
201         * <!-- begin-user-doc -->
202         * <!-- end-user-doc -->
203         * @generated
204         */
205        @Override
206        public void setRight(boolean newRight) {
207                eDynamicSet(BootstrapPackage.BORDER__RIGHT, BootstrapPackage.Literals.BORDER__RIGHT, newRight);
208        }
209
210        /**
211         * <!-- begin-user-doc -->
212         * <!-- end-user-doc -->
213         * @generated
214         */
215        @Override
216        public Object eGet(int featureID, boolean resolve, boolean coreType) {
217                switch (featureID) {
218                        case BootstrapPackage.BORDER__COLOR:
219                                return getColor();
220                        case BootstrapPackage.BORDER__TOP:
221                                return isTop();
222                        case BootstrapPackage.BORDER__BOTTOM:
223                                return isBottom();
224                        case BootstrapPackage.BORDER__LEFT:
225                                return isLeft();
226                        case BootstrapPackage.BORDER__RIGHT:
227                                return isRight();
228                }
229                return super.eGet(featureID, resolve, coreType);
230        }
231
232        /**
233         * <!-- begin-user-doc -->
234         * <!-- end-user-doc -->
235         * @generated
236         */
237        @Override
238        public void eSet(int featureID, Object newValue) {
239                switch (featureID) {
240                        case BootstrapPackage.BORDER__COLOR:
241                                setColor((Color)newValue);
242                                return;
243                        case BootstrapPackage.BORDER__TOP:
244                                setTop((Boolean)newValue);
245                                return;
246                        case BootstrapPackage.BORDER__BOTTOM:
247                                setBottom((Boolean)newValue);
248                                return;
249                        case BootstrapPackage.BORDER__LEFT:
250                                setLeft((Boolean)newValue);
251                                return;
252                        case BootstrapPackage.BORDER__RIGHT:
253                                setRight((Boolean)newValue);
254                                return;
255                }
256                super.eSet(featureID, newValue);
257        }
258
259        /**
260         * <!-- begin-user-doc -->
261         * <!-- end-user-doc -->
262         * @generated
263         */
264        @Override
265        public void eUnset(int featureID) {
266                switch (featureID) {
267                        case BootstrapPackage.BORDER__COLOR:
268                                setColor(COLOR_EDEFAULT);
269                                return;
270                        case BootstrapPackage.BORDER__TOP:
271                                setTop(TOP_EDEFAULT);
272                                return;
273                        case BootstrapPackage.BORDER__BOTTOM:
274                                setBottom(BOTTOM_EDEFAULT);
275                                return;
276                        case BootstrapPackage.BORDER__LEFT:
277                                setLeft(LEFT_EDEFAULT);
278                                return;
279                        case BootstrapPackage.BORDER__RIGHT:
280                                setRight(RIGHT_EDEFAULT);
281                                return;
282                }
283                super.eUnset(featureID);
284        }
285
286        /**
287         * <!-- begin-user-doc -->
288         * <!-- end-user-doc -->
289         * @generated
290         */
291        @Override
292        public boolean eIsSet(int featureID) {
293                switch (featureID) {
294                        case BootstrapPackage.BORDER__COLOR:
295                                return COLOR_EDEFAULT == null ? getColor() != null : !COLOR_EDEFAULT.equals(getColor());
296                        case BootstrapPackage.BORDER__TOP:
297                                return isTop() != TOP_EDEFAULT;
298                        case BootstrapPackage.BORDER__BOTTOM:
299                                return isBottom() != BOTTOM_EDEFAULT;
300                        case BootstrapPackage.BORDER__LEFT:
301                                return isLeft() != LEFT_EDEFAULT;
302                        case BootstrapPackage.BORDER__RIGHT:
303                                return isRight() != RIGHT_EDEFAULT;
304                }
305                return super.eIsSet(featureID);
306        }
307
308} //BorderImpl