001/**
002 */
003package org.nasdanika.models.gitlab.impl;
004
005import org.eclipse.emf.ecore.EClass;
006import org.nasdanika.models.gitlab.GitLabPackage;
007import org.nasdanika.models.gitlab.TreeItem;
008import org.nasdanika.ncore.NcorePackage;
009
010/**
011 * <!-- begin-user-doc -->
012 * An implementation of the model object '<em><b>Tree Item</b></em>'.
013 * <!-- end-user-doc -->
014 * <p>
015 * The following features are implemented:
016 * </p>
017 * <ul>
018 *   <li>{@link org.nasdanika.models.gitlab.impl.TreeItemImpl#getName <em>Name</em>}</li>
019 *   <li>{@link org.nasdanika.models.gitlab.impl.TreeItemImpl#getId <em>Id</em>}</li>
020 *   <li>{@link org.nasdanika.models.gitlab.impl.TreeItemImpl#getPath <em>Path</em>}</li>
021 * </ul>
022 *
023 * @generated
024 */
025public class TreeItemImpl extends LoadableImpl implements TreeItem {
026        /**
027         * The default value of the '{@link #getName() <em>Name</em>}' attribute.
028         * <!-- begin-user-doc -->
029         * <!-- end-user-doc -->
030         * @see #getName()
031         * @generated
032         * @ordered
033         */
034        protected static final String NAME_EDEFAULT = null;
035
036        /**
037         * The default value of the '{@link #getId() <em>Id</em>}' attribute.
038         * <!-- begin-user-doc -->
039         * <!-- end-user-doc -->
040         * @see #getId()
041         * @generated
042         * @ordered
043         */
044        protected static final String ID_EDEFAULT = null;
045
046        /**
047         * The default value of the '{@link #getPath() <em>Path</em>}' attribute.
048         * <!-- begin-user-doc -->
049         * <!-- end-user-doc -->
050         * @see #getPath()
051         * @generated
052         * @ordered
053         */
054        protected static final String PATH_EDEFAULT = null;
055
056        /**
057         * <!-- begin-user-doc -->
058         * <!-- end-user-doc -->
059         * @generated
060         */
061        protected TreeItemImpl() {
062                super();
063        }
064
065        /**
066         * <!-- begin-user-doc -->
067         * <!-- end-user-doc -->
068         * @generated
069         */
070        @Override
071        protected EClass eStaticClass() {
072                return GitLabPackage.Literals.TREE_ITEM;
073        }
074
075        /**
076         * <!-- begin-user-doc -->
077         * <!-- end-user-doc -->
078         * @generated
079         */
080        @Override
081        public String getId() {
082                return (String)eDynamicGet(GitLabPackage.TREE_ITEM__ID, GitLabPackage.Literals.TREE_ITEM__ID, true, true);
083        }
084
085        /**
086         * <!-- begin-user-doc -->
087         * <!-- end-user-doc -->
088         * @generated
089         */
090        @Override
091        public void setId(String newId) {
092                eDynamicSet(GitLabPackage.TREE_ITEM__ID, GitLabPackage.Literals.TREE_ITEM__ID, newId);
093        }
094
095        /**
096         * <!-- begin-user-doc -->
097         * <!-- end-user-doc -->
098         * @generated
099         */
100        @Override
101        public String getName() {
102                return (String)eDynamicGet(GitLabPackage.TREE_ITEM__NAME, NcorePackage.Literals.TREE_ITEM__NAME, true, true);
103        }
104
105        /**
106         * <!-- begin-user-doc -->
107         * <!-- end-user-doc -->
108         * @generated
109         */
110        @Override
111        public void setName(String newName) {
112                eDynamicSet(GitLabPackage.TREE_ITEM__NAME, NcorePackage.Literals.TREE_ITEM__NAME, newName);
113        }
114
115        /**
116         * <!-- begin-user-doc -->
117         * <!-- end-user-doc -->
118         * @generated
119         */
120        @Override
121        public String getPath() {
122                return (String)eDynamicGet(GitLabPackage.TREE_ITEM__PATH, GitLabPackage.Literals.TREE_ITEM__PATH, true, true);
123        }
124
125        /**
126         * <!-- begin-user-doc -->
127         * <!-- end-user-doc -->
128         * @generated
129         */
130        @Override
131        public void setPath(String newPath) {
132                eDynamicSet(GitLabPackage.TREE_ITEM__PATH, GitLabPackage.Literals.TREE_ITEM__PATH, newPath);
133        }
134
135        /**
136         * <!-- begin-user-doc -->
137         * <!-- end-user-doc -->
138         * @generated
139         */
140        @Override
141        public Object eGet(int featureID, boolean resolve, boolean coreType) {
142                switch (featureID) {
143                        case GitLabPackage.TREE_ITEM__NAME:
144                                return getName();
145                        case GitLabPackage.TREE_ITEM__ID:
146                                return getId();
147                        case GitLabPackage.TREE_ITEM__PATH:
148                                return getPath();
149                }
150                return super.eGet(featureID, resolve, coreType);
151        }
152
153        /**
154         * <!-- begin-user-doc -->
155         * <!-- end-user-doc -->
156         * @generated
157         */
158        @Override
159        public void eSet(int featureID, Object newValue) {
160                switch (featureID) {
161                        case GitLabPackage.TREE_ITEM__NAME:
162                                setName((String)newValue);
163                                return;
164                        case GitLabPackage.TREE_ITEM__ID:
165                                setId((String)newValue);
166                                return;
167                        case GitLabPackage.TREE_ITEM__PATH:
168                                setPath((String)newValue);
169                                return;
170                }
171                super.eSet(featureID, newValue);
172        }
173
174        /**
175         * <!-- begin-user-doc -->
176         * <!-- end-user-doc -->
177         * @generated
178         */
179        @Override
180        public void eUnset(int featureID) {
181                switch (featureID) {
182                        case GitLabPackage.TREE_ITEM__NAME:
183                                setName(NAME_EDEFAULT);
184                                return;
185                        case GitLabPackage.TREE_ITEM__ID:
186                                setId(ID_EDEFAULT);
187                                return;
188                        case GitLabPackage.TREE_ITEM__PATH:
189                                setPath(PATH_EDEFAULT);
190                                return;
191                }
192                super.eUnset(featureID);
193        }
194
195        /**
196         * <!-- begin-user-doc -->
197         * <!-- end-user-doc -->
198         * @generated
199         */
200        @Override
201        public boolean eIsSet(int featureID) {
202                switch (featureID) {
203                        case GitLabPackage.TREE_ITEM__NAME:
204                                return NAME_EDEFAULT == null ? getName() != null : !NAME_EDEFAULT.equals(getName());
205                        case GitLabPackage.TREE_ITEM__ID:
206                                return ID_EDEFAULT == null ? getId() != null : !ID_EDEFAULT.equals(getId());
207                        case GitLabPackage.TREE_ITEM__PATH:
208                                return PATH_EDEFAULT == null ? getPath() != null : !PATH_EDEFAULT.equals(getPath());
209                }
210                return super.eIsSet(featureID);
211        }
212
213        /**
214         * <!-- begin-user-doc -->
215         * <!-- end-user-doc -->
216         * @generated
217         */
218        @Override
219        public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
220                if (baseClass == org.nasdanika.ncore.TreeItem.class) {
221                        switch (derivedFeatureID) {
222                                case GitLabPackage.TREE_ITEM__NAME: return NcorePackage.TREE_ITEM__NAME;
223                                default: return -1;
224                        }
225                }
226                return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
227        }
228
229        /**
230         * <!-- begin-user-doc -->
231         * <!-- end-user-doc -->
232         * @generated
233         */
234        @Override
235        public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
236                if (baseClass == org.nasdanika.ncore.TreeItem.class) {
237                        switch (baseFeatureID) {
238                                case NcorePackage.TREE_ITEM__NAME: return GitLabPackage.TREE_ITEM__NAME;
239                                default: return -1;
240                        }
241                }
242                return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
243        }
244
245} //TreeItemImpl