001/**
002 */
003package org.nasdanika.models.gitlab.impl;
004
005import java.util.Date;
006
007import org.eclipse.emf.ecore.EClass;
008import org.nasdanika.models.gitlab.Branch;
009import org.nasdanika.models.gitlab.GitLabPackage;
010
011/**
012 * <!-- begin-user-doc -->
013 * An implementation of the model object '<em><b>Branch</b></em>'.
014 * <!-- end-user-doc -->
015 * <p>
016 * The following features are implemented:
017 * </p>
018 * <ul>
019 *   <li>{@link org.nasdanika.models.gitlab.impl.BranchImpl#getCommitDate <em>Commit Date</em>}</li>
020 *   <li>{@link org.nasdanika.models.gitlab.impl.BranchImpl#getDevelopersCanMerge <em>Developers Can Merge</em>}</li>
021 *   <li>{@link org.nasdanika.models.gitlab.impl.BranchImpl#getDevelopersCanPush <em>Developers Can Push</em>}</li>
022 *   <li>{@link org.nasdanika.models.gitlab.impl.BranchImpl#getMerged <em>Merged</em>}</li>
023 *   <li>{@link org.nasdanika.models.gitlab.impl.BranchImpl#getIsProtected <em>Is Protected</em>}</li>
024 *   <li>{@link org.nasdanika.models.gitlab.impl.BranchImpl#getIsDefault <em>Is Default</em>}</li>
025 *   <li>{@link org.nasdanika.models.gitlab.impl.BranchImpl#getCanPush <em>Can Push</em>}</li>
026 *   <li>{@link org.nasdanika.models.gitlab.impl.BranchImpl#getWebUrl <em>Web Url</em>}</li>
027 * </ul>
028 *
029 * @generated
030 */
031public class BranchImpl extends TreeImpl implements Branch {
032        /**
033         * The default value of the '{@link #getCommitDate() <em>Commit Date</em>}' attribute.
034         * <!-- begin-user-doc -->
035         * <!-- end-user-doc -->
036         * @see #getCommitDate()
037         * @generated
038         * @ordered
039         */
040        protected static final Date COMMIT_DATE_EDEFAULT = null;
041
042        /**
043         * The default value of the '{@link #getDevelopersCanMerge() <em>Developers Can Merge</em>}' attribute.
044         * <!-- begin-user-doc -->
045         * <!-- end-user-doc -->
046         * @see #getDevelopersCanMerge()
047         * @generated
048         * @ordered
049         */
050        protected static final Boolean DEVELOPERS_CAN_MERGE_EDEFAULT = null;
051
052        /**
053         * The default value of the '{@link #getDevelopersCanPush() <em>Developers Can Push</em>}' attribute.
054         * <!-- begin-user-doc -->
055         * <!-- end-user-doc -->
056         * @see #getDevelopersCanPush()
057         * @generated
058         * @ordered
059         */
060        protected static final Boolean DEVELOPERS_CAN_PUSH_EDEFAULT = null;
061
062        /**
063         * The default value of the '{@link #getMerged() <em>Merged</em>}' attribute.
064         * <!-- begin-user-doc -->
065         * <!-- end-user-doc -->
066         * @see #getMerged()
067         * @generated
068         * @ordered
069         */
070        protected static final Boolean MERGED_EDEFAULT = null;
071
072        /**
073         * The default value of the '{@link #getIsProtected() <em>Is Protected</em>}' attribute.
074         * <!-- begin-user-doc -->
075         * <!-- end-user-doc -->
076         * @see #getIsProtected()
077         * @generated
078         * @ordered
079         */
080        protected static final Boolean IS_PROTECTED_EDEFAULT = null;
081
082        /**
083         * The default value of the '{@link #getIsDefault() <em>Is Default</em>}' attribute.
084         * <!-- begin-user-doc -->
085         * <!-- end-user-doc -->
086         * @see #getIsDefault()
087         * @generated
088         * @ordered
089         */
090        protected static final Boolean IS_DEFAULT_EDEFAULT = null;
091
092        /**
093         * The default value of the '{@link #getCanPush() <em>Can Push</em>}' attribute.
094         * <!-- begin-user-doc -->
095         * <!-- end-user-doc -->
096         * @see #getCanPush()
097         * @generated
098         * @ordered
099         */
100        protected static final Boolean CAN_PUSH_EDEFAULT = null;
101
102        /**
103         * The default value of the '{@link #getWebUrl() <em>Web Url</em>}' attribute.
104         * <!-- begin-user-doc -->
105         * <!-- end-user-doc -->
106         * @see #getWebUrl()
107         * @generated
108         * @ordered
109         */
110        protected static final String WEB_URL_EDEFAULT = null;
111
112        /**
113         * <!-- begin-user-doc -->
114         * <!-- end-user-doc -->
115         * @generated
116         */
117        protected BranchImpl() {
118                super();
119        }
120
121        /**
122         * <!-- begin-user-doc -->
123         * <!-- end-user-doc -->
124         * @generated
125         */
126        @Override
127        protected EClass eStaticClass() {
128                return GitLabPackage.Literals.BRANCH;
129        }
130
131        /**
132         * <!-- begin-user-doc -->
133         * <!-- end-user-doc -->
134         * @generated
135         */
136        @Override
137        public Date getCommitDate() {
138                return (Date)eDynamicGet(GitLabPackage.BRANCH__COMMIT_DATE, GitLabPackage.Literals.BRANCH__COMMIT_DATE, true, true);
139        }
140
141        /**
142         * <!-- begin-user-doc -->
143         * <!-- end-user-doc -->
144         * @generated
145         */
146        @Override
147        public void setCommitDate(Date newCommitDate) {
148                eDynamicSet(GitLabPackage.BRANCH__COMMIT_DATE, GitLabPackage.Literals.BRANCH__COMMIT_DATE, newCommitDate);
149        }
150
151        /**
152         * <!-- begin-user-doc -->
153         * <!-- end-user-doc -->
154         * @generated
155         */
156        @Override
157        public Boolean getDevelopersCanMerge() {
158                return (Boolean)eDynamicGet(GitLabPackage.BRANCH__DEVELOPERS_CAN_MERGE, GitLabPackage.Literals.BRANCH__DEVELOPERS_CAN_MERGE, true, true);
159        }
160
161        /**
162         * <!-- begin-user-doc -->
163         * <!-- end-user-doc -->
164         * @generated
165         */
166        @Override
167        public void setDevelopersCanMerge(Boolean newDevelopersCanMerge) {
168                eDynamicSet(GitLabPackage.BRANCH__DEVELOPERS_CAN_MERGE, GitLabPackage.Literals.BRANCH__DEVELOPERS_CAN_MERGE, newDevelopersCanMerge);
169        }
170
171        /**
172         * <!-- begin-user-doc -->
173         * <!-- end-user-doc -->
174         * @generated
175         */
176        @Override
177        public Boolean getDevelopersCanPush() {
178                return (Boolean)eDynamicGet(GitLabPackage.BRANCH__DEVELOPERS_CAN_PUSH, GitLabPackage.Literals.BRANCH__DEVELOPERS_CAN_PUSH, true, true);
179        }
180
181        /**
182         * <!-- begin-user-doc -->
183         * <!-- end-user-doc -->
184         * @generated
185         */
186        @Override
187        public void setDevelopersCanPush(Boolean newDevelopersCanPush) {
188                eDynamicSet(GitLabPackage.BRANCH__DEVELOPERS_CAN_PUSH, GitLabPackage.Literals.BRANCH__DEVELOPERS_CAN_PUSH, newDevelopersCanPush);
189        }
190
191        /**
192         * <!-- begin-user-doc -->
193         * <!-- end-user-doc -->
194         * @generated
195         */
196        @Override
197        public Boolean getMerged() {
198                return (Boolean)eDynamicGet(GitLabPackage.BRANCH__MERGED, GitLabPackage.Literals.BRANCH__MERGED, true, true);
199        }
200
201        /**
202         * <!-- begin-user-doc -->
203         * <!-- end-user-doc -->
204         * @generated
205         */
206        @Override
207        public void setMerged(Boolean newMerged) {
208                eDynamicSet(GitLabPackage.BRANCH__MERGED, GitLabPackage.Literals.BRANCH__MERGED, newMerged);
209        }
210
211        /**
212         * <!-- begin-user-doc -->
213         * <!-- end-user-doc -->
214         * @generated
215         */
216        @Override
217        public Boolean getIsProtected() {
218                return (Boolean)eDynamicGet(GitLabPackage.BRANCH__IS_PROTECTED, GitLabPackage.Literals.BRANCH__IS_PROTECTED, true, true);
219        }
220
221        /**
222         * <!-- begin-user-doc -->
223         * <!-- end-user-doc -->
224         * @generated
225         */
226        @Override
227        public void setIsProtected(Boolean newIsProtected) {
228                eDynamicSet(GitLabPackage.BRANCH__IS_PROTECTED, GitLabPackage.Literals.BRANCH__IS_PROTECTED, newIsProtected);
229        }
230
231        /**
232         * <!-- begin-user-doc -->
233         * <!-- end-user-doc -->
234         * @generated
235         */
236        @Override
237        public Boolean getIsDefault() {
238                return (Boolean)eDynamicGet(GitLabPackage.BRANCH__IS_DEFAULT, GitLabPackage.Literals.BRANCH__IS_DEFAULT, true, true);
239        }
240
241        /**
242         * <!-- begin-user-doc -->
243         * <!-- end-user-doc -->
244         * @generated
245         */
246        @Override
247        public void setIsDefault(Boolean newIsDefault) {
248                eDynamicSet(GitLabPackage.BRANCH__IS_DEFAULT, GitLabPackage.Literals.BRANCH__IS_DEFAULT, newIsDefault);
249        }
250
251        /**
252         * <!-- begin-user-doc -->
253         * <!-- end-user-doc -->
254         * @generated
255         */
256        @Override
257        public Boolean getCanPush() {
258                return (Boolean)eDynamicGet(GitLabPackage.BRANCH__CAN_PUSH, GitLabPackage.Literals.BRANCH__CAN_PUSH, true, true);
259        }
260
261        /**
262         * <!-- begin-user-doc -->
263         * <!-- end-user-doc -->
264         * @generated
265         */
266        @Override
267        public void setCanPush(Boolean newCanPush) {
268                eDynamicSet(GitLabPackage.BRANCH__CAN_PUSH, GitLabPackage.Literals.BRANCH__CAN_PUSH, newCanPush);
269        }
270
271        /**
272         * <!-- begin-user-doc -->
273         * <!-- end-user-doc -->
274         * @generated
275         */
276        @Override
277        public String getWebUrl() {
278                return (String)eDynamicGet(GitLabPackage.BRANCH__WEB_URL, GitLabPackage.Literals.BRANCH__WEB_URL, true, true);
279        }
280
281        /**
282         * <!-- begin-user-doc -->
283         * <!-- end-user-doc -->
284         * @generated
285         */
286        @Override
287        public void setWebUrl(String newWebUrl) {
288                eDynamicSet(GitLabPackage.BRANCH__WEB_URL, GitLabPackage.Literals.BRANCH__WEB_URL, newWebUrl);
289        }
290
291        /**
292         * <!-- begin-user-doc -->
293         * <!-- end-user-doc -->
294         * @generated
295         */
296        @Override
297        public Object eGet(int featureID, boolean resolve, boolean coreType) {
298                switch (featureID) {
299                        case GitLabPackage.BRANCH__COMMIT_DATE:
300                                return getCommitDate();
301                        case GitLabPackage.BRANCH__DEVELOPERS_CAN_MERGE:
302                                return getDevelopersCanMerge();
303                        case GitLabPackage.BRANCH__DEVELOPERS_CAN_PUSH:
304                                return getDevelopersCanPush();
305                        case GitLabPackage.BRANCH__MERGED:
306                                return getMerged();
307                        case GitLabPackage.BRANCH__IS_PROTECTED:
308                                return getIsProtected();
309                        case GitLabPackage.BRANCH__IS_DEFAULT:
310                                return getIsDefault();
311                        case GitLabPackage.BRANCH__CAN_PUSH:
312                                return getCanPush();
313                        case GitLabPackage.BRANCH__WEB_URL:
314                                return getWebUrl();
315                }
316                return super.eGet(featureID, resolve, coreType);
317        }
318
319        /**
320         * <!-- begin-user-doc -->
321         * <!-- end-user-doc -->
322         * @generated
323         */
324        @Override
325        public void eSet(int featureID, Object newValue) {
326                switch (featureID) {
327                        case GitLabPackage.BRANCH__COMMIT_DATE:
328                                setCommitDate((Date)newValue);
329                                return;
330                        case GitLabPackage.BRANCH__DEVELOPERS_CAN_MERGE:
331                                setDevelopersCanMerge((Boolean)newValue);
332                                return;
333                        case GitLabPackage.BRANCH__DEVELOPERS_CAN_PUSH:
334                                setDevelopersCanPush((Boolean)newValue);
335                                return;
336                        case GitLabPackage.BRANCH__MERGED:
337                                setMerged((Boolean)newValue);
338                                return;
339                        case GitLabPackage.BRANCH__IS_PROTECTED:
340                                setIsProtected((Boolean)newValue);
341                                return;
342                        case GitLabPackage.BRANCH__IS_DEFAULT:
343                                setIsDefault((Boolean)newValue);
344                                return;
345                        case GitLabPackage.BRANCH__CAN_PUSH:
346                                setCanPush((Boolean)newValue);
347                                return;
348                        case GitLabPackage.BRANCH__WEB_URL:
349                                setWebUrl((String)newValue);
350                                return;
351                }
352                super.eSet(featureID, newValue);
353        }
354
355        /**
356         * <!-- begin-user-doc -->
357         * <!-- end-user-doc -->
358         * @generated
359         */
360        @Override
361        public void eUnset(int featureID) {
362                switch (featureID) {
363                        case GitLabPackage.BRANCH__COMMIT_DATE:
364                                setCommitDate(COMMIT_DATE_EDEFAULT);
365                                return;
366                        case GitLabPackage.BRANCH__DEVELOPERS_CAN_MERGE:
367                                setDevelopersCanMerge(DEVELOPERS_CAN_MERGE_EDEFAULT);
368                                return;
369                        case GitLabPackage.BRANCH__DEVELOPERS_CAN_PUSH:
370                                setDevelopersCanPush(DEVELOPERS_CAN_PUSH_EDEFAULT);
371                                return;
372                        case GitLabPackage.BRANCH__MERGED:
373                                setMerged(MERGED_EDEFAULT);
374                                return;
375                        case GitLabPackage.BRANCH__IS_PROTECTED:
376                                setIsProtected(IS_PROTECTED_EDEFAULT);
377                                return;
378                        case GitLabPackage.BRANCH__IS_DEFAULT:
379                                setIsDefault(IS_DEFAULT_EDEFAULT);
380                                return;
381                        case GitLabPackage.BRANCH__CAN_PUSH:
382                                setCanPush(CAN_PUSH_EDEFAULT);
383                                return;
384                        case GitLabPackage.BRANCH__WEB_URL:
385                                setWebUrl(WEB_URL_EDEFAULT);
386                                return;
387                }
388                super.eUnset(featureID);
389        }
390
391        /**
392         * <!-- begin-user-doc -->
393         * <!-- end-user-doc -->
394         * @generated
395         */
396        @Override
397        public boolean eIsSet(int featureID) {
398                switch (featureID) {
399                        case GitLabPackage.BRANCH__COMMIT_DATE:
400                                return COMMIT_DATE_EDEFAULT == null ? getCommitDate() != null : !COMMIT_DATE_EDEFAULT.equals(getCommitDate());
401                        case GitLabPackage.BRANCH__DEVELOPERS_CAN_MERGE:
402                                return DEVELOPERS_CAN_MERGE_EDEFAULT == null ? getDevelopersCanMerge() != null : !DEVELOPERS_CAN_MERGE_EDEFAULT.equals(getDevelopersCanMerge());
403                        case GitLabPackage.BRANCH__DEVELOPERS_CAN_PUSH:
404                                return DEVELOPERS_CAN_PUSH_EDEFAULT == null ? getDevelopersCanPush() != null : !DEVELOPERS_CAN_PUSH_EDEFAULT.equals(getDevelopersCanPush());
405                        case GitLabPackage.BRANCH__MERGED:
406                                return MERGED_EDEFAULT == null ? getMerged() != null : !MERGED_EDEFAULT.equals(getMerged());
407                        case GitLabPackage.BRANCH__IS_PROTECTED:
408                                return IS_PROTECTED_EDEFAULT == null ? getIsProtected() != null : !IS_PROTECTED_EDEFAULT.equals(getIsProtected());
409                        case GitLabPackage.BRANCH__IS_DEFAULT:
410                                return IS_DEFAULT_EDEFAULT == null ? getIsDefault() != null : !IS_DEFAULT_EDEFAULT.equals(getIsDefault());
411                        case GitLabPackage.BRANCH__CAN_PUSH:
412                                return CAN_PUSH_EDEFAULT == null ? getCanPush() != null : !CAN_PUSH_EDEFAULT.equals(getCanPush());
413                        case GitLabPackage.BRANCH__WEB_URL:
414                                return WEB_URL_EDEFAULT == null ? getWebUrl() != null : !WEB_URL_EDEFAULT.equals(getWebUrl());
415                }
416                return super.eIsSet(featureID);
417        }
418
419} //BranchImpl