001 /**
002 * <copyright>
003 * </copyright>
004 *
005 * $Id$
006 */
007 package com.hammurapi.party.impl;
008
009 import com.hammurapi.party.Address;
010 import com.hammurapi.party.CommonObject;
011 import com.hammurapi.party.ContactInfo;
012 import com.hammurapi.party.Custom;
013 import com.hammurapi.party.DateEffectiveObject;
014 import com.hammurapi.party.EMail;
015 import com.hammurapi.party.Identity;
016 import com.hammurapi.party.MatrixRelationship;
017 import com.hammurapi.party.Organization;
018 import com.hammurapi.party.Party;
019 import com.hammurapi.party.PartyFactory;
020 import com.hammurapi.party.PartyPackage;
021 import com.hammurapi.party.Person;
022 import com.hammurapi.party.Phone;
023 import com.hammurapi.party.Role;
024 import com.hammurapi.party.Tag;
025 import com.hammurapi.party.Tagged;
026 import com.hammurapi.party.USAddress;
027 import com.hammurapi.party.Web;
028
029 import org.eclipse.emf.ecore.EAttribute;
030 import org.eclipse.emf.ecore.EClass;
031 import org.eclipse.emf.ecore.EOperation;
032 import org.eclipse.emf.ecore.EPackage;
033 import org.eclipse.emf.ecore.EReference;
034
035 import org.eclipse.emf.ecore.impl.EPackageImpl;
036
037 /**
038 * <!-- begin-user-doc -->
039 * An implementation of the model <b>Package</b>.
040 * <!-- end-user-doc -->
041 * @generated
042 */
043 public class PartyPackageImpl extends EPackageImpl implements PartyPackage {
044 /**
045 * <!-- begin-user-doc -->
046 * <!-- end-user-doc -->
047 * @generated
048 */
049 private EClass partyEClass = null;
050
051 /**
052 * <!-- begin-user-doc -->
053 * <!-- end-user-doc -->
054 * @generated
055 */
056 private EClass identityEClass = null;
057
058 /**
059 * <!-- begin-user-doc -->
060 * <!-- end-user-doc -->
061 * @generated
062 */
063 private EClass taggedEClass = null;
064
065 /**
066 * <!-- begin-user-doc -->
067 * <!-- end-user-doc -->
068 * @generated
069 */
070 private EClass dateEffectiveObjectEClass = null;
071
072 /**
073 * <!-- begin-user-doc -->
074 * <!-- end-user-doc -->
075 * @generated
076 */
077 private EClass contactInfoEClass = null;
078
079 /**
080 * <!-- begin-user-doc -->
081 * <!-- end-user-doc -->
082 * @generated
083 */
084 private EClass phoneEClass = null;
085
086 /**
087 * <!-- begin-user-doc -->
088 * <!-- end-user-doc -->
089 * @generated
090 */
091 private EClass webEClass = null;
092
093 /**
094 * <!-- begin-user-doc -->
095 * <!-- end-user-doc -->
096 * @generated
097 */
098 private EClass eMailEClass = null;
099
100 /**
101 * <!-- begin-user-doc -->
102 * <!-- end-user-doc -->
103 * @generated
104 */
105 private EClass addressEClass = null;
106
107 /**
108 * <!-- begin-user-doc -->
109 * <!-- end-user-doc -->
110 * @generated
111 */
112 private EClass customEClass = null;
113
114 /**
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 private EClass usAddressEClass = null;
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 private EClass organizationEClass = null;
127
128 /**
129 * <!-- begin-user-doc -->
130 * <!-- end-user-doc -->
131 * @generated
132 */
133 private EClass personEClass = null;
134
135 /**
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @generated
139 */
140 private EClass tagEClass = null;
141
142 /**
143 * <!-- begin-user-doc -->
144 * <!-- end-user-doc -->
145 * @generated
146 */
147 private EClass roleEClass = null;
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 private EClass urlEClass = null;
155
156 /**
157 * <!-- begin-user-doc -->
158 * <!-- end-user-doc -->
159 * @generated
160 */
161 private EClass commonObjectEClass = null;
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 private EClass matrixRelationshipEClass = null;
169
170 /**
171 * Creates an instance of the model <b>Package</b>, registered with
172 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
173 * package URI value.
174 * <p>Note: the correct way to create the package is via the static
175 * factory method {@link #init init()}, which also performs
176 * initialization of the package, or returns the registered package,
177 * if one already exists.
178 * <!-- begin-user-doc -->
179 * <!-- end-user-doc -->
180 * @see org.eclipse.emf.ecore.EPackage.Registry
181 * @see com.hammurapi.party.PartyPackage#eNS_URI
182 * @see #init()
183 * @generated
184 */
185 private PartyPackageImpl() {
186 super(eNS_URI, PartyFactory.eINSTANCE);
187 }
188
189 /**
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @generated
193 */
194 private static boolean isInited = false;
195
196 /**
197 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
198 *
199 * <p>This method is used to initialize {@link PartyPackage#eINSTANCE} when that field is accessed.
200 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
201 * <!-- begin-user-doc -->
202 * <!-- end-user-doc -->
203 * @see #eNS_URI
204 * @see #createPackageContents()
205 * @see #initializePackageContents()
206 * @generated
207 */
208 public static PartyPackage init() {
209 if (isInited) return (PartyPackage)EPackage.Registry.INSTANCE.getEPackage(PartyPackage.eNS_URI);
210
211 // Obtain or create and register package
212 PartyPackageImpl thePartyPackage = (PartyPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof PartyPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new PartyPackageImpl());
213
214 isInited = true;
215
216 // Create package meta-data objects
217 thePartyPackage.createPackageContents();
218
219 // Initialize created meta-data
220 thePartyPackage.initializePackageContents();
221
222 // Mark meta-data to indicate it can't be changed
223 thePartyPackage.freeze();
224
225
226 // Update the registry and return the package
227 EPackage.Registry.INSTANCE.put(PartyPackage.eNS_URI, thePartyPackage);
228 return thePartyPackage;
229 }
230
231 /**
232 * <!-- begin-user-doc -->
233 * <!-- end-user-doc -->
234 * @generated
235 */
236 public EClass getParty() {
237 return partyEClass;
238 }
239
240 /**
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 */
245 public EReference getParty_ContactInfo() {
246 return (EReference)partyEClass.getEStructuralFeatures().get(0);
247 }
248
249 /**
250 * <!-- begin-user-doc -->
251 * <!-- end-user-doc -->
252 * @generated
253 */
254 public EReference getParty_Identity() {
255 return (EReference)partyEClass.getEStructuralFeatures().get(1);
256 }
257
258 /**
259 * <!-- begin-user-doc -->
260 * <!-- end-user-doc -->
261 * @generated
262 */
263 public EReference getParty_Parent() {
264 return (EReference)partyEClass.getEStructuralFeatures().get(2);
265 }
266
267 /**
268 * <!-- begin-user-doc -->
269 * <!-- end-user-doc -->
270 * @generated
271 */
272 public EAttribute getParty_Name() {
273 return (EAttribute)partyEClass.getEStructuralFeatures().get(3);
274 }
275
276 /**
277 * <!-- begin-user-doc -->
278 * <!-- end-user-doc -->
279 * @generated
280 */
281 public EAttribute getParty_Uid() {
282 return (EAttribute)partyEClass.getEStructuralFeatures().get(4);
283 }
284
285 /**
286 * <!-- begin-user-doc -->
287 * <!-- end-user-doc -->
288 * @generated
289 */
290 public EClass getIdentity() {
291 return identityEClass;
292 }
293
294 /**
295 * <!-- begin-user-doc -->
296 * <!-- end-user-doc -->
297 * @generated
298 */
299 public EAttribute getIdentity_Type() {
300 return (EAttribute)identityEClass.getEStructuralFeatures().get(0);
301 }
302
303 /**
304 * <!-- begin-user-doc -->
305 * <!-- end-user-doc -->
306 * @generated
307 */
308 public EAttribute getIdentity_Value() {
309 return (EAttribute)identityEClass.getEStructuralFeatures().get(1);
310 }
311
312 /**
313 * <!-- begin-user-doc -->
314 * <!-- end-user-doc -->
315 * @generated
316 */
317 public EAttribute getIdentity_Comment() {
318 return (EAttribute)identityEClass.getEStructuralFeatures().get(2);
319 }
320
321 /**
322 * <!-- begin-user-doc -->
323 * <!-- end-user-doc -->
324 * @generated
325 */
326 public EClass getTagged() {
327 return taggedEClass;
328 }
329
330 /**
331 * <!-- begin-user-doc -->
332 * <!-- end-user-doc -->
333 * @generated
334 */
335 public EReference getTagged_Tags() {
336 return (EReference)taggedEClass.getEStructuralFeatures().get(0);
337 }
338
339 /**
340 * <!-- begin-user-doc -->
341 * <!-- end-user-doc -->
342 * @generated
343 */
344 public EAttribute getTagged_Comment() {
345 return (EAttribute)taggedEClass.getEStructuralFeatures().get(1);
346 }
347
348 /**
349 * <!-- begin-user-doc -->
350 * <!-- end-user-doc -->
351 * @generated
352 */
353 public EClass getDateEffectiveObject() {
354 return dateEffectiveObjectEClass;
355 }
356
357 /**
358 * <!-- begin-user-doc -->
359 * <!-- end-user-doc -->
360 * @generated
361 */
362 public EAttribute getDateEffectiveObject_Start() {
363 return (EAttribute)dateEffectiveObjectEClass.getEStructuralFeatures().get(0);
364 }
365
366 /**
367 * <!-- begin-user-doc -->
368 * <!-- end-user-doc -->
369 * @generated
370 */
371 public EAttribute getDateEffectiveObject_End() {
372 return (EAttribute)dateEffectiveObjectEClass.getEStructuralFeatures().get(1);
373 }
374
375 /**
376 * <!-- begin-user-doc -->
377 * <!-- end-user-doc -->
378 * @generated
379 */
380 public EClass getContactInfo() {
381 return contactInfoEClass;
382 }
383
384 /**
385 * <!-- begin-user-doc -->
386 * <!-- end-user-doc -->
387 * @generated
388 */
389 public EAttribute getContactInfo_Category() {
390 return (EAttribute)contactInfoEClass.getEStructuralFeatures().get(0);
391 }
392
393 /**
394 * <!-- begin-user-doc -->
395 * <!-- end-user-doc -->
396 * @generated
397 */
398 public EReference getContactInfo_Owner() {
399 return (EReference)contactInfoEClass.getEStructuralFeatures().get(1);
400 }
401
402 /**
403 * <!-- begin-user-doc -->
404 * <!-- end-user-doc -->
405 * @generated
406 */
407 public EClass getPhone() {
408 return phoneEClass;
409 }
410
411 /**
412 * <!-- begin-user-doc -->
413 * <!-- end-user-doc -->
414 * @generated
415 */
416 public EAttribute getPhone_CountryCode() {
417 return (EAttribute)phoneEClass.getEStructuralFeatures().get(0);
418 }
419
420 /**
421 * <!-- begin-user-doc -->
422 * <!-- end-user-doc -->
423 * @generated
424 */
425 public EAttribute getPhone_AreaCode() {
426 return (EAttribute)phoneEClass.getEStructuralFeatures().get(1);
427 }
428
429 /**
430 * <!-- begin-user-doc -->
431 * <!-- end-user-doc -->
432 * @generated
433 */
434 public EAttribute getPhone_Number() {
435 return (EAttribute)phoneEClass.getEStructuralFeatures().get(2);
436 }
437
438 /**
439 * <!-- begin-user-doc -->
440 * <!-- end-user-doc -->
441 * @generated
442 */
443 public EClass getWeb() {
444 return webEClass;
445 }
446
447 /**
448 * <!-- begin-user-doc -->
449 * <!-- end-user-doc -->
450 * @generated
451 */
452 public EClass getEMail() {
453 return eMailEClass;
454 }
455
456 /**
457 * <!-- begin-user-doc -->
458 * <!-- end-user-doc -->
459 * @generated
460 */
461 public EClass getAddress() {
462 return addressEClass;
463 }
464
465 /**
466 * <!-- begin-user-doc -->
467 * <!-- end-user-doc -->
468 * @generated
469 */
470 public EAttribute getAddress_Country() {
471 return (EAttribute)addressEClass.getEStructuralFeatures().get(0);
472 }
473
474 /**
475 * <!-- begin-user-doc -->
476 * <!-- end-user-doc -->
477 * @generated
478 */
479 public EClass getCustom() {
480 return customEClass;
481 }
482
483 /**
484 * <!-- begin-user-doc -->
485 * <!-- end-user-doc -->
486 * @generated
487 */
488 public EAttribute getCustom_Location() {
489 return (EAttribute)customEClass.getEStructuralFeatures().get(0);
490 }
491
492 /**
493 * <!-- begin-user-doc -->
494 * <!-- end-user-doc -->
495 * @generated
496 */
497 public EClass getUSAddress() {
498 return usAddressEClass;
499 }
500
501 /**
502 * <!-- begin-user-doc -->
503 * <!-- end-user-doc -->
504 * @generated
505 */
506 public EAttribute getUSAddress_Recipient() {
507 return (EAttribute)usAddressEClass.getEStructuralFeatures().get(0);
508 }
509
510 /**
511 * <!-- begin-user-doc -->
512 * <!-- end-user-doc -->
513 * @generated
514 */
515 public EAttribute getUSAddress_Street1() {
516 return (EAttribute)usAddressEClass.getEStructuralFeatures().get(1);
517 }
518
519 /**
520 * <!-- begin-user-doc -->
521 * <!-- end-user-doc -->
522 * @generated
523 */
524 public EAttribute getUSAddress_Street2() {
525 return (EAttribute)usAddressEClass.getEStructuralFeatures().get(2);
526 }
527
528 /**
529 * <!-- begin-user-doc -->
530 * <!-- end-user-doc -->
531 * @generated
532 */
533 public EAttribute getUSAddress_City() {
534 return (EAttribute)usAddressEClass.getEStructuralFeatures().get(3);
535 }
536
537 /**
538 * <!-- begin-user-doc -->
539 * <!-- end-user-doc -->
540 * @generated
541 */
542 public EAttribute getUSAddress_State() {
543 return (EAttribute)usAddressEClass.getEStructuralFeatures().get(4);
544 }
545
546 /**
547 * <!-- begin-user-doc -->
548 * <!-- end-user-doc -->
549 * @generated
550 */
551 public EAttribute getUSAddress_Zip() {
552 return (EAttribute)usAddressEClass.getEStructuralFeatures().get(5);
553 }
554
555 /**
556 * <!-- begin-user-doc -->
557 * <!-- end-user-doc -->
558 * @generated
559 */
560 public EClass getOrganization() {
561 return organizationEClass;
562 }
563
564 /**
565 * <!-- begin-user-doc -->
566 * <!-- end-user-doc -->
567 * @generated
568 */
569 public EReference getOrganization_Children() {
570 return (EReference)organizationEClass.getEStructuralFeatures().get(0);
571 }
572
573 /**
574 * <!-- begin-user-doc -->
575 * <!-- end-user-doc -->
576 * @generated
577 */
578 public EReference getOrganization_ExternalChildren() {
579 return (EReference)organizationEClass.getEStructuralFeatures().get(1);
580 }
581
582 /**
583 * <!-- begin-user-doc -->
584 * <!-- end-user-doc -->
585 * @generated
586 */
587 public EAttribute getOrganization_OrganizationType() {
588 return (EAttribute)organizationEClass.getEStructuralFeatures().get(2);
589 }
590
591 /**
592 * <!-- begin-user-doc -->
593 * <!-- end-user-doc -->
594 * @generated
595 */
596 public EReference getOrganization_MatrixedChildren() {
597 return (EReference)organizationEClass.getEStructuralFeatures().get(3);
598 }
599
600 /**
601 * <!-- begin-user-doc -->
602 * <!-- end-user-doc -->
603 * @generated
604 */
605 public EClass getPerson() {
606 return personEClass;
607 }
608
609 /**
610 * <!-- begin-user-doc -->
611 * <!-- end-user-doc -->
612 * @generated
613 */
614 public EAttribute getPerson_Title() {
615 return (EAttribute)personEClass.getEStructuralFeatures().get(0);
616 }
617
618 /**
619 * <!-- begin-user-doc -->
620 * <!-- end-user-doc -->
621 * @generated
622 */
623 public EClass getTag() {
624 return tagEClass;
625 }
626
627 /**
628 * <!-- begin-user-doc -->
629 * <!-- end-user-doc -->
630 * @generated
631 */
632 public EAttribute getTag_Name() {
633 return (EAttribute)tagEClass.getEStructuralFeatures().get(0);
634 }
635
636 /**
637 * <!-- begin-user-doc -->
638 * <!-- end-user-doc -->
639 * @generated
640 */
641 public EAttribute getTag_Value() {
642 return (EAttribute)tagEClass.getEStructuralFeatures().get(1);
643 }
644
645 /**
646 * <!-- begin-user-doc -->
647 * <!-- end-user-doc -->
648 * @generated
649 */
650 public EAttribute getTag_Comment() {
651 return (EAttribute)tagEClass.getEStructuralFeatures().get(2);
652 }
653
654 /**
655 * <!-- begin-user-doc -->
656 * <!-- end-user-doc -->
657 * @generated
658 */
659 public EClass getRole() {
660 return roleEClass;
661 }
662
663 /**
664 * <!-- begin-user-doc -->
665 * <!-- end-user-doc -->
666 * @generated
667 */
668 public EReference getRole_Party() {
669 return (EReference)roleEClass.getEStructuralFeatures().get(0);
670 }
671
672 /**
673 * <!-- begin-user-doc -->
674 * <!-- end-user-doc -->
675 * @generated
676 */
677 public EAttribute getRole_Name() {
678 return (EAttribute)roleEClass.getEStructuralFeatures().get(1);
679 }
680
681 /**
682 * <!-- begin-user-doc -->
683 * <!-- end-user-doc -->
684 * @generated
685 */
686 public EReference getRole_Owner() {
687 return (EReference)roleEClass.getEStructuralFeatures().get(2);
688 }
689
690 /**
691 * <!-- begin-user-doc -->
692 * <!-- end-user-doc -->
693 * @generated
694 */
695 public EClass getURL() {
696 return urlEClass;
697 }
698
699 /**
700 * <!-- begin-user-doc -->
701 * <!-- end-user-doc -->
702 * @generated
703 */
704 public EAttribute getURL_Address() {
705 return (EAttribute)urlEClass.getEStructuralFeatures().get(0);
706 }
707
708 /**
709 * <!-- begin-user-doc -->
710 * <!-- end-user-doc -->
711 * @generated
712 */
713 public EClass getCommonObject() {
714 return commonObjectEClass;
715 }
716
717 /**
718 * <!-- begin-user-doc -->
719 * <!-- end-user-doc -->
720 * @generated
721 */
722 public EReference getCommonObject_Roles() {
723 return (EReference)commonObjectEClass.getEStructuralFeatures().get(0);
724 }
725
726 /**
727 * <!-- begin-user-doc -->
728 * <!-- end-user-doc -->
729 * @generated
730 */
731 public EClass getMatrixRelationship() {
732 return matrixRelationshipEClass;
733 }
734
735 /**
736 * <!-- begin-user-doc -->
737 * <!-- end-user-doc -->
738 * @generated
739 */
740 public EAttribute getMatrixRelationship_Name() {
741 return (EAttribute)matrixRelationshipEClass.getEStructuralFeatures().get(0);
742 }
743
744 /**
745 * <!-- begin-user-doc -->
746 * <!-- end-user-doc -->
747 * @generated
748 */
749 public EReference getMatrixRelationship_Target() {
750 return (EReference)matrixRelationshipEClass.getEStructuralFeatures().get(1);
751 }
752
753 /**
754 * <!-- begin-user-doc -->
755 * <!-- end-user-doc -->
756 * @generated
757 */
758 public PartyFactory getPartyFactory() {
759 return (PartyFactory)getEFactoryInstance();
760 }
761
762 /**
763 * <!-- begin-user-doc -->
764 * <!-- end-user-doc -->
765 * @generated
766 */
767 private boolean isCreated = false;
768
769 /**
770 * Creates the meta-model objects for the package. This method is
771 * guarded to have no affect on any invocation but its first.
772 * <!-- begin-user-doc -->
773 * <!-- end-user-doc -->
774 * @generated
775 */
776 public void createPackageContents() {
777 if (isCreated) return;
778 isCreated = true;
779
780 // Create classes and their features
781 partyEClass = createEClass(PARTY);
782 createEReference(partyEClass, PARTY__CONTACT_INFO);
783 createEReference(partyEClass, PARTY__IDENTITY);
784 createEReference(partyEClass, PARTY__PARENT);
785 createEAttribute(partyEClass, PARTY__NAME);
786 createEAttribute(partyEClass, PARTY__UID);
787
788 identityEClass = createEClass(IDENTITY);
789 createEAttribute(identityEClass, IDENTITY__TYPE);
790 createEAttribute(identityEClass, IDENTITY__VALUE);
791 createEAttribute(identityEClass, IDENTITY__COMMENT);
792
793 taggedEClass = createEClass(TAGGED);
794 createEReference(taggedEClass, TAGGED__TAGS);
795 createEAttribute(taggedEClass, TAGGED__COMMENT);
796
797 dateEffectiveObjectEClass = createEClass(DATE_EFFECTIVE_OBJECT);
798 createEAttribute(dateEffectiveObjectEClass, DATE_EFFECTIVE_OBJECT__START);
799 createEAttribute(dateEffectiveObjectEClass, DATE_EFFECTIVE_OBJECT__END);
800
801 contactInfoEClass = createEClass(CONTACT_INFO);
802 createEAttribute(contactInfoEClass, CONTACT_INFO__CATEGORY);
803 createEReference(contactInfoEClass, CONTACT_INFO__OWNER);
804
805 phoneEClass = createEClass(PHONE);
806 createEAttribute(phoneEClass, PHONE__COUNTRY_CODE);
807 createEAttribute(phoneEClass, PHONE__AREA_CODE);
808 createEAttribute(phoneEClass, PHONE__NUMBER);
809
810 webEClass = createEClass(WEB);
811
812 eMailEClass = createEClass(EMAIL);
813
814 addressEClass = createEClass(ADDRESS);
815 createEAttribute(addressEClass, ADDRESS__COUNTRY);
816
817 customEClass = createEClass(CUSTOM);
818 createEAttribute(customEClass, CUSTOM__LOCATION);
819
820 usAddressEClass = createEClass(US_ADDRESS);
821 createEAttribute(usAddressEClass, US_ADDRESS__RECIPIENT);
822 createEAttribute(usAddressEClass, US_ADDRESS__STREET1);
823 createEAttribute(usAddressEClass, US_ADDRESS__STREET2);
824 createEAttribute(usAddressEClass, US_ADDRESS__CITY);
825 createEAttribute(usAddressEClass, US_ADDRESS__STATE);
826 createEAttribute(usAddressEClass, US_ADDRESS__ZIP);
827
828 organizationEClass = createEClass(ORGANIZATION);
829 createEReference(organizationEClass, ORGANIZATION__CHILDREN);
830 createEReference(organizationEClass, ORGANIZATION__EXTERNAL_CHILDREN);
831 createEAttribute(organizationEClass, ORGANIZATION__ORGANIZATION_TYPE);
832 createEReference(organizationEClass, ORGANIZATION__MATRIXED_CHILDREN);
833
834 personEClass = createEClass(PERSON);
835 createEAttribute(personEClass, PERSON__TITLE);
836
837 tagEClass = createEClass(TAG);
838 createEAttribute(tagEClass, TAG__NAME);
839 createEAttribute(tagEClass, TAG__VALUE);
840 createEAttribute(tagEClass, TAG__COMMENT);
841
842 roleEClass = createEClass(ROLE);
843 createEReference(roleEClass, ROLE__PARTY);
844 createEAttribute(roleEClass, ROLE__NAME);
845 createEReference(roleEClass, ROLE__OWNER);
846
847 urlEClass = createEClass(URL);
848 createEAttribute(urlEClass, URL__ADDRESS);
849
850 commonObjectEClass = createEClass(COMMON_OBJECT);
851 createEReference(commonObjectEClass, COMMON_OBJECT__ROLES);
852
853 matrixRelationshipEClass = createEClass(MATRIX_RELATIONSHIP);
854 createEAttribute(matrixRelationshipEClass, MATRIX_RELATIONSHIP__NAME);
855 createEReference(matrixRelationshipEClass, MATRIX_RELATIONSHIP__TARGET);
856 }
857
858 /**
859 * <!-- begin-user-doc -->
860 * <!-- end-user-doc -->
861 * @generated
862 */
863 private boolean isInitialized = false;
864
865 /**
866 * Complete the initialization of the package and its meta-model. This
867 * method is guarded to have no affect on any invocation but its first.
868 * <!-- begin-user-doc -->
869 * <!-- end-user-doc -->
870 * @generated
871 */
872 public void initializePackageContents() {
873 if (isInitialized) return;
874 isInitialized = true;
875
876 // Initialize package
877 setName(eNAME);
878 setNsPrefix(eNS_PREFIX);
879 setNsURI(eNS_URI);
880
881 // Create type parameters
882
883 // Set bounds for type parameters
884
885 // Add supertypes to classes
886 partyEClass.getESuperTypes().add(this.getTagged());
887 dateEffectiveObjectEClass.getESuperTypes().add(this.getTagged());
888 contactInfoEClass.getESuperTypes().add(this.getDateEffectiveObject());
889 phoneEClass.getESuperTypes().add(this.getContactInfo());
890 webEClass.getESuperTypes().add(this.getURL());
891 eMailEClass.getESuperTypes().add(this.getURL());
892 addressEClass.getESuperTypes().add(this.getContactInfo());
893 customEClass.getESuperTypes().add(this.getContactInfo());
894 usAddressEClass.getESuperTypes().add(this.getAddress());
895 organizationEClass.getESuperTypes().add(this.getParty());
896 personEClass.getESuperTypes().add(this.getParty());
897 roleEClass.getESuperTypes().add(this.getDateEffectiveObject());
898 urlEClass.getESuperTypes().add(this.getContactInfo());
899 matrixRelationshipEClass.getESuperTypes().add(this.getDateEffectiveObject());
900
901 // Initialize classes and features; add operations and parameters
902 initEClass(partyEClass, Party.class, "Party", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
903 initEReference(getParty_ContactInfo(), this.getContactInfo(), this.getContactInfo_Owner(), "contactInfo", null, 0, -1, Party.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
904 initEReference(getParty_Identity(), this.getIdentity(), null, "identity", null, 0, -1, Party.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
905 initEReference(getParty_Parent(), this.getOrganization(), this.getOrganization_Children(), "parent", null, 0, 1, Party.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
906 initEAttribute(getParty_Name(), ecorePackage.getEString(), "name", null, 1, 1, Party.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
907 initEAttribute(getParty_Uid(), ecorePackage.getEString(), "uid", null, 0, 1, Party.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
908
909 addEOperation(partyEClass, this.getParty(), "getPath", 0, -1, IS_UNIQUE, IS_ORDERED);
910
911 EOperation op = addEOperation(partyEClass, null, "setExternalParent", 0, 1, IS_UNIQUE, IS_ORDERED);
912 addEParameter(op, this.getOrganization(), "externalParent", 0, 1, IS_UNIQUE, IS_ORDERED);
913
914 initEClass(identityEClass, Identity.class, "Identity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
915 initEAttribute(getIdentity_Type(), ecorePackage.getEString(), "type", null, 1, 1, Identity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
916 initEAttribute(getIdentity_Value(), ecorePackage.getEString(), "value", null, 1, 1, Identity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
917 initEAttribute(getIdentity_Comment(), ecorePackage.getEString(), "comment", null, 0, 1, Identity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
918
919 initEClass(taggedEClass, Tagged.class, "Tagged", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
920 initEReference(getTagged_Tags(), this.getTag(), null, "tags", null, 0, -1, Tagged.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
921 initEAttribute(getTagged_Comment(), ecorePackage.getEString(), "comment", null, 0, 1, Tagged.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
922
923 initEClass(dateEffectiveObjectEClass, DateEffectiveObject.class, "DateEffectiveObject", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
924 initEAttribute(getDateEffectiveObject_Start(), ecorePackage.getEDate(), "start", null, 0, 1, DateEffectiveObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
925 initEAttribute(getDateEffectiveObject_End(), ecorePackage.getEDate(), "end", null, 0, 1, DateEffectiveObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
926
927 addEOperation(dateEffectiveObjectEClass, ecorePackage.getEBoolean(), "isEffectiveNow", 0, 1, IS_UNIQUE, IS_ORDERED);
928
929 op = addEOperation(dateEffectiveObjectEClass, ecorePackage.getEBoolean(), "isEffective", 0, 1, IS_UNIQUE, IS_ORDERED);
930 addEParameter(op, ecorePackage.getEDate(), "date", 0, 1, IS_UNIQUE, IS_ORDERED);
931
932 initEClass(contactInfoEClass, ContactInfo.class, "ContactInfo", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
933 initEAttribute(getContactInfo_Category(), ecorePackage.getEString(), "category", null, 0, 1, ContactInfo.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
934 initEReference(getContactInfo_Owner(), this.getParty(), this.getParty_ContactInfo(), "owner", null, 1, 1, ContactInfo.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
935
936 initEClass(phoneEClass, Phone.class, "Phone", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
937 initEAttribute(getPhone_CountryCode(), ecorePackage.getEString(), "countryCode", null, 0, 1, Phone.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
938 initEAttribute(getPhone_AreaCode(), ecorePackage.getEInt(), "areaCode", null, 0, 1, Phone.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
939 initEAttribute(getPhone_Number(), ecorePackage.getEString(), "number", null, 1, 1, Phone.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
940
941 initEClass(webEClass, Web.class, "Web", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
942
943 initEClass(eMailEClass, EMail.class, "EMail", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
944
945 initEClass(addressEClass, Address.class, "Address", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
946 initEAttribute(getAddress_Country(), ecorePackage.getEString(), "country", null, 0, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
947
948 initEClass(customEClass, Custom.class, "Custom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
949 initEAttribute(getCustom_Location(), ecorePackage.getEString(), "location", null, 1, 1, Custom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
950
951 initEClass(usAddressEClass, USAddress.class, "USAddress", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
952 initEAttribute(getUSAddress_Recipient(), ecorePackage.getEString(), "recipient", null, 0, 1, USAddress.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
953 initEAttribute(getUSAddress_Street1(), ecorePackage.getEString(), "street1", null, 1, 1, USAddress.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
954 initEAttribute(getUSAddress_Street2(), ecorePackage.getEString(), "street2", null, 0, 1, USAddress.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
955 initEAttribute(getUSAddress_City(), ecorePackage.getEString(), "city", null, 1, 1, USAddress.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
956 initEAttribute(getUSAddress_State(), ecorePackage.getEString(), "state", null, 1, 1, USAddress.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
957 initEAttribute(getUSAddress_Zip(), ecorePackage.getEString(), "zip", null, 1, 1, USAddress.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
958
959 initEClass(organizationEClass, Organization.class, "Organization", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
960 initEReference(getOrganization_Children(), this.getParty(), this.getParty_Parent(), "children", null, 0, -1, Organization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
961 initEReference(getOrganization_ExternalChildren(), this.getParty(), null, "externalChildren", null, 0, -1, Organization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
962 initEAttribute(getOrganization_OrganizationType(), ecorePackage.getEString(), "organizationType", null, 0, 1, Organization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
963 initEReference(getOrganization_MatrixedChildren(), this.getMatrixRelationship(), null, "matrixedChildren", null, 0, -1, Organization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
964
965 initEClass(personEClass, Person.class, "Person", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
966 initEAttribute(getPerson_Title(), ecorePackage.getEString(), "title", null, 0, 1, Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
967
968 initEClass(tagEClass, Tag.class, "Tag", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
969 initEAttribute(getTag_Name(), ecorePackage.getEString(), "name", null, 1, 1, Tag.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
970 initEAttribute(getTag_Value(), ecorePackage.getEString(), "value", null, 1, -1, Tag.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
971 initEAttribute(getTag_Comment(), ecorePackage.getEString(), "comment", null, 0, 1, Tag.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
972
973 initEClass(roleEClass, Role.class, "Role", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
974 initEReference(getRole_Party(), this.getParty(), null, "party", null, 0, -1, Role.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
975 initEAttribute(getRole_Name(), ecorePackage.getEString(), "name", null, 1, 1, Role.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
976 initEReference(getRole_Owner(), this.getCommonObject(), this.getCommonObject_Roles(), "owner", null, 0, 1, Role.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
977
978 initEClass(urlEClass, com.hammurapi.party.URL.class, "URL", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
979 initEAttribute(getURL_Address(), ecorePackage.getEString(), "address", null, 1, 1, com.hammurapi.party.URL.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
980
981 initEClass(commonObjectEClass, CommonObject.class, "CommonObject", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
982 initEReference(getCommonObject_Roles(), this.getRole(), this.getRole_Owner(), "roles", null, 0, -1, CommonObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
983
984 initEClass(matrixRelationshipEClass, MatrixRelationship.class, "MatrixRelationship", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
985 initEAttribute(getMatrixRelationship_Name(), ecorePackage.getEString(), "name", null, 0, 1, MatrixRelationship.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
986 initEReference(getMatrixRelationship_Target(), this.getParty(), null, "target", null, 1, 1, MatrixRelationship.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
987
988 // Create resource
989 createResource(eNS_URI);
990 }
991
992 } //PartyPackageImpl