Skip to content

Package: TaskPackageImpl$1

TaskPackageImpl$1

nameinstructionbranchcomplexitylinemethod
getEValidator()
M: 2 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
{...}
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%

Coverage

1: /**
2: * Copyright (c) 2011-2014 EclipseSource Muenchen GmbH and others.
3: *
4: * All rights reserved. This program and the accompanying materials
5: * are made available under the terms of the Eclipse Public License 2.0
6: * which accompanies this distribution, and is available at
7: * https://www.eclipse.org/legal/epl-2.0/
8: *
9: * SPDX-License-Identifier: EPL-2.0
10: *
11: * Contributors:
12: * EclipseSource Munich - initial API and implementation
13: */
14: package org.eclipse.emf.ecp.makeithappen.model.task.impl;
15:
16: import javax.xml.datatype.XMLGregorianCalendar;
17:
18: import org.eclipse.emf.ecore.EAttribute;
19: import org.eclipse.emf.ecore.EClass;
20: import org.eclipse.emf.ecore.EDataType;
21: import org.eclipse.emf.ecore.EEnum;
22: import org.eclipse.emf.ecore.EGenericType;
23: import org.eclipse.emf.ecore.EOperation;
24: import org.eclipse.emf.ecore.EPackage;
25: import org.eclipse.emf.ecore.EReference;
26: import org.eclipse.emf.ecore.EValidator;
27: import org.eclipse.emf.ecore.impl.EPackageImpl;
28: import org.eclipse.emf.ecp.makeithappen.model.task.Gender;
29: import org.eclipse.emf.ecp.makeithappen.model.task.Nationality;
30: import org.eclipse.emf.ecp.makeithappen.model.task.Task;
31: import org.eclipse.emf.ecp.makeithappen.model.task.TaskFactory;
32: import org.eclipse.emf.ecp.makeithappen.model.task.TaskPackage;
33: import org.eclipse.emf.ecp.makeithappen.model.task.User;
34: import org.eclipse.emf.ecp.makeithappen.model.task.UserGroup;
35: import org.eclipse.emf.ecp.makeithappen.model.task.util.TaskValidator;
36:
37: /**
38: * <!-- begin-user-doc -->
39: * An implementation of the model <b>Package</b>.
40: * <!-- end-user-doc -->
41: *
42: * @generated
43: */
44: public class TaskPackageImpl extends EPackageImpl implements TaskPackage {
45:         /**
46:          * <!-- begin-user-doc -->
47:          * <!-- end-user-doc -->
48:          *
49:          * @generated
50:          */
51:         private EClass taskEClass = null;
52:
53:         /**
54:          * <!-- begin-user-doc -->
55:          * <!-- end-user-doc -->
56:          *
57:          * @generated
58:          */
59:         private EClass userEClass = null;
60:
61:         /**
62:          * <!-- begin-user-doc -->
63:          * <!-- end-user-doc -->
64:          *
65:          * @generated
66:          */
67:         private EClass userGroupEClass = null;
68:
69:         /**
70:          * <!-- begin-user-doc -->
71:          * <!-- end-user-doc -->
72:          *
73:          * @generated
74:          */
75:         private EEnum genderEEnum = null;
76:
77:         /**
78:          * <!-- begin-user-doc -->
79:          * <!-- end-user-doc -->
80:          *
81:          * @generated
82:          */
83:         private EEnum nationalityEEnum = null;
84:
85:         /**
86:          * <!-- begin-user-doc -->
87:          * <!-- end-user-doc -->
88:          *
89:          * @generated
90:          */
91:         private EDataType dateOfBirthEDataType = null;
92:
93:         /**
94:          * Creates an instance of the model <b>Package</b>, registered with {@link org.eclipse.emf.ecore.EPackage.Registry
95:          * EPackage.Registry} by the package
96:          * package URI value.
97:          * <p>
98:          * Note: the correct way to create the package is via the static factory method {@link #init init()}, which also
99:          * performs initialization of the package, or returns the registered package, if one already exists. <!--
100:          * begin-user-doc --> <!-- end-user-doc -->
101:          *
102:          * @see org.eclipse.emf.ecore.EPackage.Registry
103:          * @see org.eclipse.emf.ecp.makeithappen.model.task.TaskPackage#eNS_URI
104:          * @see #init()
105:          * @generated
106:          */
107:         private TaskPackageImpl() {
108:                 super(eNS_URI, TaskFactory.eINSTANCE);
109:         }
110:
111:         /**
112:          * <!-- begin-user-doc -->
113:          * <!-- end-user-doc -->
114:          *
115:          * @generated
116:          */
117:         private static boolean isInited = false;
118:
119:         /**
120:          * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
121:          *
122:          * <p>
123:          * This method is used to initialize {@link TaskPackage#eINSTANCE} when that field is accessed. Clients should not
124:          * invoke it directly. Instead, they should simply access that field to obtain the package. <!-- begin-user-doc -->
125:          * <!-- end-user-doc -->
126:          *
127:          * @see #eNS_URI
128:          * @see #createPackageContents()
129:          * @see #initializePackageContents()
130:          * @generated
131:          */
132:         public static TaskPackage init() {
133:                 if (isInited) {
134:                         return (TaskPackage) EPackage.Registry.INSTANCE.getEPackage(TaskPackage.eNS_URI);
135:                 }
136:
137:                 // Obtain or create and register package
138:                 final TaskPackageImpl theTaskPackage = (TaskPackageImpl) (EPackage.Registry.INSTANCE
139:                         .get(eNS_URI) instanceof TaskPackageImpl ? EPackage.Registry.INSTANCE
140:                                 .get(eNS_URI)
141:                                 : new TaskPackageImpl());
142:
143:                 isInited = true;
144:
145:                 // Create package meta-data objects
146:                 theTaskPackage.createPackageContents();
147:
148:                 // Initialize created meta-data
149:                 theTaskPackage.initializePackageContents();
150:
151:                 // Register package validator
152:                 EValidator.Registry.INSTANCE.put(theTaskPackage,
153:                         new EValidator.Descriptor() {
154:                                 @Override
155:                                 public EValidator getEValidator() {
156:                                         return TaskValidator.INSTANCE;
157:                                 }
158:                         });
159:
160:                 // Mark meta-data to indicate it can't be changed
161:                 theTaskPackage.freeze();
162:
163:                 // Update the registry and return the package
164:                 EPackage.Registry.INSTANCE.put(TaskPackage.eNS_URI, theTaskPackage);
165:                 return theTaskPackage;
166:         }
167:
168:         /**
169:          * <!-- begin-user-doc -->
170:          * <!-- end-user-doc -->
171:          *
172:          * @generated
173:          */
174:         @Override
175:         public EClass getTask() {
176:                 return taskEClass;
177:         }
178:
179:         /**
180:          * <!-- begin-user-doc -->
181:          * <!-- end-user-doc -->
182:          *
183:          * @generated
184:          */
185:         @Override
186:         public EAttribute getTask_Name() {
187:                 return (EAttribute) taskEClass.getEStructuralFeatures().get(0);
188:         }
189:
190:         /**
191:          * <!-- begin-user-doc -->
192:          * <!-- end-user-doc -->
193:          *
194:          * @generated
195:          */
196:         @Override
197:         public EAttribute getTask_Description() {
198:                 return (EAttribute) taskEClass.getEStructuralFeatures().get(1);
199:         }
200:
201:         /**
202:          * <!-- begin-user-doc -->
203:          * <!-- end-user-doc -->
204:          *
205:          * @generated
206:          */
207:         @Override
208:         public EReference getTask_Assignee() {
209:                 return (EReference) taskEClass.getEStructuralFeatures().get(2);
210:         }
211:
212:         /**
213:          * <!-- begin-user-doc -->
214:          * <!-- end-user-doc -->
215:          *
216:          * @generated
217:          */
218:         @Override
219:         public EAttribute getTask_DueDate() {
220:                 return (EAttribute) taskEClass.getEStructuralFeatures().get(3);
221:         }
222:
223:         /**
224:          * <!-- begin-user-doc -->
225:          * <!-- end-user-doc -->
226:          *
227:          * @generated
228:          */
229:         @Override
230:         public EReference getTask_SubTasks() {
231:                 return (EReference) taskEClass.getEStructuralFeatures().get(4);
232:         }
233:
234:         /**
235:          * <!-- begin-user-doc -->
236:          * <!-- end-user-doc -->
237:          *
238:          * @generated
239:          */
240:         @Override
241:         public EAttribute getTask_Done() {
242:                 return (EAttribute) taskEClass.getEStructuralFeatures().get(5);
243:         }
244:
245:         /**
246:          * <!-- begin-user-doc -->
247:          * <!-- end-user-doc -->
248:          *
249:          * @generated
250:          */
251:         @Override
252:         public EOperation getTask__HasName__DiagnosticChain_Map() {
253:                 return taskEClass.getEOperations().get(0);
254:         }
255:
256:         /**
257:          * <!-- begin-user-doc -->
258:          * <!-- end-user-doc -->
259:          *
260:          * @generated
261:          */
262:         @Override
263:         public EClass getUser() {
264:                 return userEClass;
265:         }
266:
267:         /**
268:          * <!-- begin-user-doc -->
269:          * <!-- end-user-doc -->
270:          *
271:          * @generated
272:          */
273:         @Override
274:         public EAttribute getUser_FirstName() {
275:                 return (EAttribute) userEClass.getEStructuralFeatures().get(0);
276:         }
277:
278:         /**
279:          * <!-- begin-user-doc -->
280:          * <!-- end-user-doc -->
281:          *
282:          * @generated
283:          */
284:         @Override
285:         public EAttribute getUser_LastName() {
286:                 return (EAttribute) userEClass.getEStructuralFeatures().get(1);
287:         }
288:
289:         /**
290:          * <!-- begin-user-doc -->
291:          * <!-- end-user-doc -->
292:          *
293:          * @generated
294:          */
295:         @Override
296:         public EAttribute getUser_Gender() {
297:                 return (EAttribute) userEClass.getEStructuralFeatures().get(2);
298:         }
299:
300:         /**
301:          * <!-- begin-user-doc -->
302:          * <!-- end-user-doc -->
303:          *
304:          * @generated
305:          */
306:         @Override
307:         public EAttribute getUser_Active() {
308:                 return (EAttribute) userEClass.getEStructuralFeatures().get(3);
309:         }
310:
311:         /**
312:          * <!-- begin-user-doc -->
313:          * <!-- end-user-doc -->
314:          *
315:          * @generated
316:          */
317:         @Override
318:         public EAttribute getUser_TimeOfRegistration() {
319:                 return (EAttribute) userEClass.getEStructuralFeatures().get(4);
320:         }
321:
322:         /**
323:          * <!-- begin-user-doc -->
324:          * <!-- end-user-doc -->
325:          *
326:          * @generated
327:          */
328:         @Override
329:         public EAttribute getUser_Weight() {
330:                 return (EAttribute) userEClass.getEStructuralFeatures().get(5);
331:         }
332:
333:         /**
334:          * <!-- begin-user-doc -->
335:          * <!-- end-user-doc -->
336:          *
337:          * @generated
338:          */
339:         @Override
340:         public EAttribute getUser_Heigth() {
341:                 return (EAttribute) userEClass.getEStructuralFeatures().get(6);
342:         }
343:
344:         /**
345:          * <!-- begin-user-doc -->
346:          * <!-- end-user-doc -->
347:          *
348:          * @generated
349:          */
350:         @Override
351:         public EAttribute getUser_Nationality() {
352:                 return (EAttribute) userEClass.getEStructuralFeatures().get(7);
353:         }
354:
355:         /**
356:          * <!-- begin-user-doc -->
357:          * <!-- end-user-doc -->
358:          *
359:          * @generated
360:          */
361:         @Override
362:         public EAttribute getUser_DateOfBirth() {
363:                 return (EAttribute) userEClass.getEStructuralFeatures().get(8);
364:         }
365:
366:         /**
367:          * <!-- begin-user-doc -->
368:          * <!-- end-user-doc -->
369:          *
370:          * @generated
371:          */
372:         @Override
373:         public EAttribute getUser_Email() {
374:                 return (EAttribute) userEClass.getEStructuralFeatures().get(9);
375:         }
376:
377:         /**
378:          * <!-- begin-user-doc -->
379:          * <!-- end-user-doc -->
380:          *
381:          * @generated
382:          */
383:         @Override
384:         public EReference getUser_Tasks() {
385:                 return (EReference) userEClass.getEStructuralFeatures().get(10);
386:         }
387:
388:         /**
389:          * <!-- begin-user-doc -->
390:          * <!-- end-user-doc -->
391:          *
392:          * @generated
393:          */
394:         @Override
395:         public EClass getUserGroup() {
396:                 return userGroupEClass;
397:         }
398:
399:         /**
400:          * <!-- begin-user-doc -->
401:          * <!-- end-user-doc -->
402:          *
403:          * @generated
404:          */
405:         @Override
406:         public EAttribute getUserGroup_Name() {
407:                 return (EAttribute) userGroupEClass.getEStructuralFeatures().get(0);
408:         }
409:
410:         /**
411:          * <!-- begin-user-doc -->
412:          * <!-- end-user-doc -->
413:          *
414:          * @generated
415:          */
416:         @Override
417:         public EReference getUserGroup_Users() {
418:                 return (EReference) userGroupEClass.getEStructuralFeatures().get(1);
419:         }
420:
421:         /**
422:          * <!-- begin-user-doc -->
423:          * <!-- end-user-doc -->
424:          *
425:          * @generated
426:          */
427:         @Override
428:         public EEnum getGender() {
429:                 return genderEEnum;
430:         }
431:
432:         /**
433:          * <!-- begin-user-doc -->
434:          * <!-- end-user-doc -->
435:          *
436:          * @generated
437:          */
438:         @Override
439:         public EEnum getNationality() {
440:                 return nationalityEEnum;
441:         }
442:
443:         /**
444:          * <!-- begin-user-doc -->
445:          * <!-- end-user-doc -->
446:          *
447:          * @generated
448:          */
449:         @Override
450:         public EDataType getDateOfBirth() {
451:                 return dateOfBirthEDataType;
452:         }
453:
454:         /**
455:          * <!-- begin-user-doc -->
456:          * <!-- end-user-doc -->
457:          *
458:          * @generated
459:          */
460:         @Override
461:         public TaskFactory getTaskFactory() {
462:                 return (TaskFactory) getEFactoryInstance();
463:         }
464:
465:         /**
466:          * <!-- begin-user-doc -->
467:          * <!-- end-user-doc -->
468:          *
469:          * @generated
470:          */
471:         private boolean isCreated = false;
472:
473:         /**
474:          * Creates the meta-model objects for the package. This method is
475:          * guarded to have no affect on any invocation but its first.
476:          * <!-- begin-user-doc -->
477:          * <!-- end-user-doc -->
478:          *
479:          * @generated
480:          */
481:         public void createPackageContents() {
482:                 if (isCreated) {
483:                         return;
484:                 }
485:                 isCreated = true;
486:
487:                 // Create classes and their features
488:                 taskEClass = createEClass(TASK);
489:                 createEAttribute(taskEClass, TASK__NAME);
490:                 createEAttribute(taskEClass, TASK__DESCRIPTION);
491:                 createEReference(taskEClass, TASK__ASSIGNEE);
492:                 createEAttribute(taskEClass, TASK__DUE_DATE);
493:                 createEReference(taskEClass, TASK__SUB_TASKS);
494:                 createEAttribute(taskEClass, TASK__DONE);
495:                 createEOperation(taskEClass, TASK___HAS_NAME__DIAGNOSTICCHAIN_MAP);
496:
497:                 userEClass = createEClass(USER);
498:                 createEAttribute(userEClass, USER__FIRST_NAME);
499:                 createEAttribute(userEClass, USER__LAST_NAME);
500:                 createEAttribute(userEClass, USER__GENDER);
501:                 createEAttribute(userEClass, USER__ACTIVE);
502:                 createEAttribute(userEClass, USER__TIME_OF_REGISTRATION);
503:                 createEAttribute(userEClass, USER__WEIGHT);
504:                 createEAttribute(userEClass, USER__HEIGTH);
505:                 createEAttribute(userEClass, USER__NATIONALITY);
506:                 createEAttribute(userEClass, USER__DATE_OF_BIRTH);
507:                 createEAttribute(userEClass, USER__EMAIL);
508:                 createEReference(userEClass, USER__TASKS);
509:
510:                 userGroupEClass = createEClass(USER_GROUP);
511:                 createEAttribute(userGroupEClass, USER_GROUP__NAME);
512:                 createEReference(userGroupEClass, USER_GROUP__USERS);
513:
514:                 // Create enums
515:                 genderEEnum = createEEnum(GENDER);
516:                 nationalityEEnum = createEEnum(NATIONALITY);
517:
518:                 // Create data types
519:                 dateOfBirthEDataType = createEDataType(DATE_OF_BIRTH);
520:         }
521:
522:         /**
523:          * <!-- begin-user-doc -->
524:          * <!-- end-user-doc -->
525:          *
526:          * @generated
527:          */
528:         private boolean isInitialized = false;
529:
530:         /**
531:          * Complete the initialization of the package and its meta-model. This
532:          * method is guarded to have no affect on any invocation but its first.
533:          * <!-- begin-user-doc -->
534:          * <!-- end-user-doc -->
535:          *
536:          * @generated
537:          */
538:         public void initializePackageContents() {
539:                 if (isInitialized) {
540:                         return;
541:                 }
542:                 isInitialized = true;
543:
544:                 // Initialize package
545:                 setName(eNAME);
546:                 setNsPrefix(eNS_PREFIX);
547:                 setNsURI(eNS_URI);
548:
549:                 // Create type parameters
550:
551:                 // Set bounds for type parameters
552:
553:                 // Add supertypes to classes
554:
555:                 // Initialize classes, features, and operations; add parameters
556:                 initEClass(taskEClass, Task.class, "Task", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
557:                 initEAttribute(
558:                         getTask_Name(),
559:                         ecorePackage.getEString(),
560:                         "name", null, 0, 1, Task.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
561:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
562:                 initEAttribute(
563:                         getTask_Description(),
564:                         ecorePackage.getEString(),
565:                         "description", null, 0, 1, Task.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
566:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
567:                 initEReference(
568:                         getTask_Assignee(),
569:                         getUser(),
570:                         getUser_Tasks(),
571:                         "assignee", null, 0, 1, Task.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, //$NON-NLS-1$
572:                         IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
573:                 initEAttribute(
574:                         getTask_DueDate(),
575:                         ecorePackage.getEDate(),
576:                         "dueDate", null, 0, 1, Task.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
577:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
578:                 initEReference(
579:                         getTask_SubTasks(),
580:                         getTask(),
581:                         null,
582:                         "subTasks", null, 0, -1, Task.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, //$NON-NLS-1$
583:                         !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
584:                 initEAttribute(
585:                         getTask_Done(),
586:                         ecorePackage.getEBoolean(),
587:                         "done", null, 0, 1, Task.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
588:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
589:
590:                 final EOperation op = initEOperation(getTask__HasName__DiagnosticChain_Map(), ecorePackage.getEBoolean(),
591:                         "hasName", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$
592:                 addEParameter(op, ecorePackage.getEDiagnosticChain(), "chain", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$
593:                 final EGenericType g1 = createEGenericType(ecorePackage.getEMap());
594:                 EGenericType g2 = createEGenericType();
595:                 g1.getETypeArguments().add(g2);
596:                 g2 = createEGenericType();
597:                 g1.getETypeArguments().add(g2);
598:                 addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$
599:
600:                 initEClass(userEClass, User.class, "User", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
601:                 initEAttribute(
602:                         getUser_FirstName(),
603:                         ecorePackage.getEString(),
604:                         "firstName", null, 0, 1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
605:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
606:                 initEAttribute(
607:                         getUser_LastName(),
608:                         ecorePackage.getEString(),
609:                         "lastName", null, 1, 1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
610:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
611:                 initEAttribute(
612:                         getUser_Gender(),
613:                         getGender(),
614:                         "gender", null, 0, 1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
615:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
616:                 initEAttribute(
617:                         getUser_Active(),
618:                         ecorePackage.getEBoolean(),
619:                         "active", null, 0, 1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
620:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
621:                 initEAttribute(
622:                         getUser_TimeOfRegistration(),
623:                         ecorePackage.getEDate(),
624:                         "timeOfRegistration", null, 0, 1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, //$NON-NLS-1$
625:                         !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
626:                 initEAttribute(
627:                         getUser_Weight(),
628:                         ecorePackage.getEDouble(),
629:                         "weight", null, 0, 1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
630:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
631:                 initEAttribute(
632:                         getUser_Heigth(),
633:                         ecorePackage.getEInt(),
634:                         "heigth", null, 0, 1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
635:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
636:                 initEAttribute(
637:                         getUser_Nationality(),
638:                         getNationality(),
639:                         "nationality", null, 0, 1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
640:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
641:                 initEAttribute(
642:                         getUser_DateOfBirth(),
643:                         getDateOfBirth(),
644:                         "dateOfBirth", null, 0, 1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
645:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
646:                 initEAttribute(
647:                         getUser_Email(),
648:                         ecorePackage.getEString(),
649:                         "email", null, 1, 1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
650:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
651:                 initEReference(
652:                         getUser_Tasks(),
653:                         getTask(),
654:                         getTask_Assignee(),
655:                         "tasks", null, 0, -1, User.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, //$NON-NLS-1$
656:                         IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
657:
658:                 initEClass(userGroupEClass, UserGroup.class,
659:                         "UserGroup", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
660:                 initEAttribute(
661:                         getUserGroup_Name(),
662:                         ecorePackage.getEString(),
663:                         "name", null, 0, 1, UserGroup.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, //$NON-NLS-1$
664:                         IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
665:                 initEReference(
666:                         getUserGroup_Users(),
667:                         getUser(),
668:                         null,
669:                         "users", null, 0, -1, UserGroup.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, //$NON-NLS-1$
670:                         !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
671:
672:                 // Initialize enums and add enum literals
673:                 initEEnum(genderEEnum, Gender.class, "Gender"); //$NON-NLS-1$
674:                 addEEnumLiteral(genderEEnum, Gender.MALE);
675:                 addEEnumLiteral(genderEEnum, Gender.FEMALE);
676:
677:                 initEEnum(nationalityEEnum, Nationality.class, "Nationality"); //$NON-NLS-1$
678:                 addEEnumLiteral(nationalityEEnum, Nationality.GERMAN);
679:                 addEEnumLiteral(nationalityEEnum, Nationality.FRENCH);
680:                 addEEnumLiteral(nationalityEEnum, Nationality.UK);
681:                 addEEnumLiteral(nationalityEEnum, Nationality.US);
682:                 addEEnumLiteral(nationalityEEnum, Nationality.SPANISH);
683:                 addEEnumLiteral(nationalityEEnum, Nationality.ITALIAN);
684:                 addEEnumLiteral(nationalityEEnum, Nationality.RUSSIAN);
685:
686:                 // Initialize data types
687:                 initEDataType(dateOfBirthEDataType, XMLGregorianCalendar.class,
688:                         "DateOfBirth", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
689:
690:                 // Create resource
691:                 createResource(eNS_URI);
692:
693:                 // Create annotations
694:                 // http:///org/eclipse/emf/ecore/util/ExtendedMetaData
695:                 createExtendedMetaDataAnnotations();
696:         }
697:
698:         /**
699:          * Initializes the annotations for <b>http:///org/eclipse/emf/ecore/util/ExtendedMetaData</b>.
700:          * <!-- begin-user-doc -->
701:          * <!-- end-user-doc -->
702:          *
703:          * @generated
704:          */
705:         protected void createExtendedMetaDataAnnotations() {
706:                 final String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData"; //$NON-NLS-1$
707:                 addAnnotation(dateOfBirthEDataType,
708:                         source,
709:                         new String[] { "baseType", "http://www.eclipse.org/emf/2003/XMLType#date" //$NON-NLS-1$ //$NON-NLS-2$
710:                         });
711:         }
712:
713: } // TaskPackageImpl