001/**
002 */
003package org.nasdanika.models.gitlab;
004
005import java.util.Arrays;
006import java.util.Collections;
007import java.util.List;
008
009import org.eclipse.emf.common.util.Enumerator;
010
011/**
012 * <!-- begin-user-doc -->
013 * A representation of the literals of the enumeration '<em><b>Access Level</b></em>',
014 * and utility methods for working with them.
015 * <!-- end-user-doc -->
016 * @see org.nasdanika.models.gitlab.GitLabPackage#getAccessLevel()
017 * @model
018 * @generated
019 */
020public enum AccessLevel implements Enumerator {
021        /**
022         * The '<em><b>Invalid</b></em>' literal object.
023         * <!-- begin-user-doc -->
024         * <!-- end-user-doc -->
025         * @see #INVALID_VALUE
026         * @generated
027         * @ordered
028         */
029        INVALID(-1, "Invalid", "Invalid"),
030
031        /**
032         * The '<em><b>None</b></em>' literal object.
033         * <!-- begin-user-doc -->
034         * <!-- end-user-doc -->
035         * @see #NONE_VALUE
036         * @generated
037         * @ordered
038         */
039        NONE(0, "None", "None"),
040
041        /**
042         * The '<em><b>Minimal Access</b></em>' literal object.
043         * <!-- begin-user-doc -->
044         * <!-- end-user-doc -->
045         * @see #MINIMAL_ACCESS_VALUE
046         * @generated
047         * @ordered
048         */
049        MINIMAL_ACCESS(5, "MinimalAccess", "MinimalAccess"),
050
051        /**
052         * The '<em><b>Guest</b></em>' literal object.
053         * <!-- begin-user-doc -->
054         * <!-- end-user-doc -->
055         * @see #GUEST_VALUE
056         * @generated
057         * @ordered
058         */
059        GUEST(10, "Guest", "Guest"),
060
061        /**
062         * The '<em><b>Reporter</b></em>' literal object.
063         * <!-- begin-user-doc -->
064         * <!-- end-user-doc -->
065         * @see #REPORTER_VALUE
066         * @generated
067         * @ordered
068         */
069        REPORTER(20, "Reporter", "Reporter"),
070
071        /**
072         * The '<em><b>Developer</b></em>' literal object.
073         * <!-- begin-user-doc -->
074         * <!-- end-user-doc -->
075         * @see #DEVELOPER_VALUE
076         * @generated
077         * @ordered
078         */
079        DEVELOPER(30, "Developer", "Developer"),
080
081        /**
082         * The '<em><b>Maintainer</b></em>' literal object.
083         * <!-- begin-user-doc -->
084         * <!-- end-user-doc -->
085         * @see #MAINTAINER_VALUE
086         * @generated
087         * @ordered
088         */
089        MAINTAINER(40, "Maintainer", "Maintainer"),
090
091        /**
092         * The '<em><b>Owner</b></em>' literal object.
093         * <!-- begin-user-doc -->
094         * <!-- end-user-doc -->
095         * @see #OWNER_VALUE
096         * @generated
097         * @ordered
098         */
099        OWNER(50, "Owner", "Owner"),
100
101        /**
102         * The '<em><b>Admin</b></em>' literal object.
103         * <!-- begin-user-doc -->
104         * <!-- end-user-doc -->
105         * @see #ADMIN_VALUE
106         * @generated
107         * @ordered
108         */
109        ADMIN(60, "Admin", "Admin");
110
111        /**
112         * The '<em><b>Invalid</b></em>' literal value.
113         * <!-- begin-user-doc -->
114         * <!-- end-user-doc -->
115         * @see #INVALID
116         * @model name="Invalid"
117         * @generated
118         * @ordered
119         */
120        public static final int INVALID_VALUE = -1;
121
122        /**
123         * The '<em><b>None</b></em>' literal value.
124         * <!-- begin-user-doc -->
125         * <!-- end-user-doc -->
126         * @see #NONE
127         * @model name="None"
128         * @generated
129         * @ordered
130         */
131        public static final int NONE_VALUE = 0;
132
133        /**
134         * The '<em><b>Minimal Access</b></em>' literal value.
135         * <!-- begin-user-doc -->
136         * <!-- end-user-doc -->
137         * @see #MINIMAL_ACCESS
138         * @model name="MinimalAccess"
139         * @generated
140         * @ordered
141         */
142        public static final int MINIMAL_ACCESS_VALUE = 5;
143
144        /**
145         * The '<em><b>Guest</b></em>' literal value.
146         * <!-- begin-user-doc -->
147         * <!-- end-user-doc -->
148         * @see #GUEST
149         * @model name="Guest"
150         * @generated
151         * @ordered
152         */
153        public static final int GUEST_VALUE = 10;
154
155        /**
156         * The '<em><b>Reporter</b></em>' literal value.
157         * <!-- begin-user-doc -->
158         * <!-- end-user-doc -->
159         * @see #REPORTER
160         * @model name="Reporter"
161         * @generated
162         * @ordered
163         */
164        public static final int REPORTER_VALUE = 20;
165
166        /**
167         * The '<em><b>Developer</b></em>' literal value.
168         * <!-- begin-user-doc -->
169         * <!-- end-user-doc -->
170         * @see #DEVELOPER
171         * @model name="Developer"
172         * @generated
173         * @ordered
174         */
175        public static final int DEVELOPER_VALUE = 30;
176
177        /**
178         * The '<em><b>Maintainer</b></em>' literal value.
179         * <!-- begin-user-doc -->
180         * <!-- end-user-doc -->
181         * @see #MAINTAINER
182         * @model name="Maintainer"
183         * @generated
184         * @ordered
185         */
186        public static final int MAINTAINER_VALUE = 40;
187
188        /**
189         * The '<em><b>Owner</b></em>' literal value.
190         * <!-- begin-user-doc -->
191         * <!-- end-user-doc -->
192         * @see #OWNER
193         * @model name="Owner"
194         * @generated
195         * @ordered
196         */
197        public static final int OWNER_VALUE = 50;
198
199        /**
200         * The '<em><b>Admin</b></em>' literal value.
201         * <!-- begin-user-doc -->
202         * <!-- end-user-doc -->
203         * @see #ADMIN
204         * @model name="Admin"
205         * @generated
206         * @ordered
207         */
208        public static final int ADMIN_VALUE = 60;
209
210        /**
211         * An array of all the '<em><b>Access Level</b></em>' enumerators.
212         * <!-- begin-user-doc -->
213         * <!-- end-user-doc -->
214         * @generated
215         */
216        private static final AccessLevel[] VALUES_ARRAY =
217                new AccessLevel[] {
218                        INVALID,
219                        NONE,
220                        MINIMAL_ACCESS,
221                        GUEST,
222                        REPORTER,
223                        DEVELOPER,
224                        MAINTAINER,
225                        OWNER,
226                        ADMIN,
227                };
228
229        /**
230         * A public read-only list of all the '<em><b>Access Level</b></em>' enumerators.
231         * <!-- begin-user-doc -->
232         * <!-- end-user-doc -->
233         * @generated
234         */
235        public static final List<AccessLevel> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
236
237        /**
238         * Returns the '<em><b>Access Level</b></em>' literal with the specified literal value.
239         * <!-- begin-user-doc -->
240         * <!-- end-user-doc -->
241         * @param literal the literal.
242         * @return the matching enumerator or <code>null</code>.
243         * @generated
244         */
245        public static AccessLevel get(String literal) {
246                for (int i = 0; i < VALUES_ARRAY.length; ++i) {
247                        AccessLevel result = VALUES_ARRAY[i];
248                        if (result.toString().equals(literal)) {
249                                return result;
250                        }
251                }
252                return null;
253        }
254
255        /**
256         * Returns the '<em><b>Access Level</b></em>' literal with the specified name.
257         * <!-- begin-user-doc -->
258         * <!-- end-user-doc -->
259         * @param name the name.
260         * @return the matching enumerator or <code>null</code>.
261         * @generated
262         */
263        public static AccessLevel getByName(String name) {
264                for (int i = 0; i < VALUES_ARRAY.length; ++i) {
265                        AccessLevel result = VALUES_ARRAY[i];
266                        if (result.getName().equals(name)) {
267                                return result;
268                        }
269                }
270                return null;
271        }
272
273        /**
274         * Returns the '<em><b>Access Level</b></em>' literal with the specified integer value.
275         * <!-- begin-user-doc -->
276         * <!-- end-user-doc -->
277         * @param value the integer value.
278         * @return the matching enumerator or <code>null</code>.
279         * @generated
280         */
281        public static AccessLevel get(int value) {
282                switch (value) {
283                        case INVALID_VALUE: return INVALID;
284                        case NONE_VALUE: return NONE;
285                        case MINIMAL_ACCESS_VALUE: return MINIMAL_ACCESS;
286                        case GUEST_VALUE: return GUEST;
287                        case REPORTER_VALUE: return REPORTER;
288                        case DEVELOPER_VALUE: return DEVELOPER;
289                        case MAINTAINER_VALUE: return MAINTAINER;
290                        case OWNER_VALUE: return OWNER;
291                        case ADMIN_VALUE: return ADMIN;
292                }
293                return null;
294        }
295
296        /**
297         * <!-- begin-user-doc -->
298         * <!-- end-user-doc -->
299         * @generated
300         */
301        private final int value;
302
303        /**
304         * <!-- begin-user-doc -->
305         * <!-- end-user-doc -->
306         * @generated
307         */
308        private final String name;
309
310        /**
311         * <!-- begin-user-doc -->
312         * <!-- end-user-doc -->
313         * @generated
314         */
315        private final String literal;
316
317        /**
318         * Only this class can construct instances.
319         * <!-- begin-user-doc -->
320         * <!-- end-user-doc -->
321         * @generated
322         */
323        private AccessLevel(int value, String name, String literal) {
324                this.value = value;
325                this.name = name;
326                this.literal = literal;
327        }
328
329        /**
330         * <!-- begin-user-doc -->
331         * <!-- end-user-doc -->
332         * @generated
333         */
334        @Override
335        public int getValue() {
336          return value;
337        }
338
339        /**
340         * <!-- begin-user-doc -->
341         * <!-- end-user-doc -->
342         * @generated
343         */
344        @Override
345        public String getName() {
346          return name;
347        }
348
349        /**
350         * <!-- begin-user-doc -->
351         * <!-- end-user-doc -->
352         * @generated
353         */
354        @Override
355        public String getLiteral() {
356          return literal;
357        }
358
359        /**
360         * Returns the literal value of the enumerator, which is its string representation.
361         * <!-- begin-user-doc -->
362         * <!-- end-user-doc -->
363         * @generated
364         */
365        @Override
366        public String toString() {
367                return literal;
368        }
369        
370} //AccessLevel