001: package org.andromda.metafacades.emf.uml2;
002:
003: import java.util.List;
004: import java.util.Map;
005: import java.util.Set;
006:
007: import org.eclipse.emf.common.notify.Notification;
008: import org.eclipse.emf.common.util.DiagnosticChain;
009: import org.eclipse.emf.common.util.EList;
010: import org.eclipse.emf.common.util.TreeIterator;
011: import org.eclipse.emf.ecore.EAnnotation;
012: import org.eclipse.emf.ecore.EClass;
013: import org.eclipse.emf.ecore.EObject;
014: import org.eclipse.emf.ecore.EReference;
015: import org.eclipse.emf.ecore.EStructuralFeature;
016: import org.eclipse.emf.ecore.resource.Resource;
017: import org.eclipse.uml2.AggregationKind;
018: import org.eclipse.uml2.Association;
019: import org.eclipse.uml2.Class;
020: import org.eclipse.uml2.Classifier;
021: import org.eclipse.uml2.Comment;
022: import org.eclipse.uml2.DataType;
023: import org.eclipse.uml2.Dependency;
024: import org.eclipse.uml2.Deployment;
025: import org.eclipse.uml2.Element;
026: import org.eclipse.uml2.Model;
027: import org.eclipse.uml2.MultiplicityElement;
028: import org.eclipse.uml2.NamedElement;
029: import org.eclipse.uml2.Namespace;
030: import org.eclipse.uml2.Package;
031: import org.eclipse.uml2.PackageableElement;
032: import org.eclipse.uml2.Property;
033: import org.eclipse.uml2.RedefinableElement;
034: import org.eclipse.uml2.Stereotype;
035: import org.eclipse.uml2.StringExpression;
036: import org.eclipse.uml2.TemplateBinding;
037: import org.eclipse.uml2.TemplateParameter;
038: import org.eclipse.uml2.TemplateSignature;
039: import org.eclipse.uml2.Type;
040: import org.eclipse.uml2.ValueSpecification;
041: import org.eclipse.uml2.VisibilityKind;
042:
043: /**
044: * Implementation of Attribute.
045: *
046: * We extend Property. We keep a reference to the original property and defer
047: * almost all method calls to it.
048: *
049: * @author Cédric Jeanneret
050: */
051: public class AttributeImpl implements Attribute {
052: final Property property;
053:
054: AttributeImpl(final Property property) {
055: this .property = property;
056: }
057:
058: public boolean equals(final Object object) {
059: if (object instanceof Attribute) {
060: Property other = ((AttributeImpl) object).property;
061: return this .property.equals(other);
062: }
063: if (object instanceof AssociationEnd) {
064: Property other = ((AssociationEndImpl) object).property;
065: return this .property.equals(other);
066: }
067: return this .property.equals(object);
068: }
069:
070: public int hashCode() {
071: return this .property.hashCode();
072: }
073:
074: public String toString() {
075: return this .getClass().getName() + '['
076: + this .property.toString() + ']';
077: }
078:
079: public void addKeyword(final String arg0) {
080: this .property.addKeyword(arg0);
081: }
082:
083: public List allNamespaces() {
084: return this .property.allNamespaces();
085: }
086:
087: public Set allOwnedElements() {
088: return this .property.allOwnedElements();
089: }
090:
091: public void apply(final Stereotype arg0) {
092: this .property.apply(arg0);
093: }
094:
095: public ValueSpecification createDefaultValue(final EClass arg0) {
096: return this .property.createDefaultValue(arg0);
097: }
098:
099: public Dependency createDependency(final NamedElement arg0) {
100: return this .property.createDependency(arg0);
101: }
102:
103: public Deployment createDeployment() {
104: return this .property.createDeployment();
105: }
106:
107: public Deployment createDeployment(final EClass arg0) {
108: return this .property.createDeployment(arg0);
109: }
110:
111: public EAnnotation createEAnnotation(final String arg0) {
112: return this .property.createEAnnotation(arg0);
113: }
114:
115: public ValueSpecification createLowerValue(final EClass arg0) {
116: return this .property.createLowerValue(arg0);
117: }
118:
119: public StringExpression createNameExpression() {
120: return this .property.createNameExpression();
121: }
122:
123: public StringExpression createNameExpression(final EClass arg0) {
124: return this .property.createNameExpression(arg0);
125: }
126:
127: public Comment createOwnedComment() {
128: return this .property.createOwnedComment();
129: }
130:
131: public Comment createOwnedComment(final EClass arg0) {
132: return this .property.createOwnedComment(arg0);
133: }
134:
135: public TemplateSignature createOwnedTemplateSignature() {
136: return this .property.createOwnedTemplateSignature();
137: }
138:
139: public TemplateSignature createOwnedTemplateSignature(
140: final EClass arg0) {
141: return this .property.createOwnedTemplateSignature(arg0);
142: }
143:
144: public Property createQualifier() {
145: return this .property.createQualifier();
146: }
147:
148: public Property createQualifier(final EClass arg0) {
149: return this .property.createQualifier(arg0);
150: }
151:
152: public TemplateBinding createTemplateBinding() {
153: return this .property.createTemplateBinding();
154: }
155:
156: public TemplateBinding createTemplateBinding(final EClass arg0) {
157: return this .property.createTemplateBinding(arg0);
158: }
159:
160: public ValueSpecification createUpperValue(final EClass arg0) {
161: return this .property.createUpperValue(arg0);
162: }
163:
164: public void destroy() {
165: this .property.destroy();
166: }
167:
168: public EList eAdapters() {
169: return this .property.eAdapters();
170: }
171:
172: public TreeIterator eAllContents() {
173: return this .property.eAllContents();
174: }
175:
176: public EClass eClass() {
177: return this .property.eClass();
178: }
179:
180: public EObject eContainer() {
181: return this .property.eContainer();
182: }
183:
184: public EStructuralFeature eContainingFeature() {
185: return this .property.eContainingFeature();
186: }
187:
188: public EReference eContainmentFeature() {
189: return this .property.eContainmentFeature();
190: }
191:
192: public EList eContents() {
193: return this .property.eContents();
194: }
195:
196: public EList eCrossReferences() {
197: return this .property.eCrossReferences();
198: }
199:
200: public boolean eDeliver() {
201: return this .property.eDeliver();
202: }
203:
204: public Object eGet(final EStructuralFeature arg0) {
205: return this .property.eGet(arg0);
206: }
207:
208: public Object eGet(final EStructuralFeature arg0, final boolean arg1) {
209: return this .property.eGet(arg0, arg1);
210: }
211:
212: public boolean eIsProxy() {
213: return this .property.eIsProxy();
214: }
215:
216: public boolean eIsSet(final EStructuralFeature arg0) {
217: return this .property.eIsSet(arg0);
218: }
219:
220: public void eNotify(final Notification arg0) {
221: this .property.eNotify(arg0);
222: }
223:
224: public Resource eResource() {
225: return this .property.eResource();
226: }
227:
228: public void eSet(final EStructuralFeature arg0, final Object arg1) {
229: this .property.eSet(arg0, arg1);
230: }
231:
232: public void eSetDeliver(final boolean arg0) {
233: this .property.eSetDeliver(arg0);
234: }
235:
236: public void eUnset(final EStructuralFeature arg0) {
237: this .property.eUnset(arg0);
238: }
239:
240: public AggregationKind getAggregation() {
241: return this .property.getAggregation();
242: }
243:
244: public Stereotype getApplicableStereotype(final String arg0) {
245: return this .property.getApplicableStereotype(arg0);
246: }
247:
248: public Set getApplicableStereotypes() {
249: return this .property.getApplicableStereotypes();
250: }
251:
252: public Stereotype getAppliedStereotype(final String arg0) {
253: return this .property.getAppliedStereotype(arg0);
254: }
255:
256: public Set getAppliedStereotypes() {
257: return this .property.getAppliedStereotypes();
258: }
259:
260: public String getAppliedVersion(final Stereotype arg0) {
261: return this .property.getAppliedVersion(arg0);
262: }
263:
264: public Association getAssociation() {
265: return this .property.getAssociation();
266: }
267:
268: public Property getAssociationEnd() {
269: return this .property.getAssociationEnd();
270: }
271:
272: public Class getClass_() {
273: return this .property.getClass_();
274: }
275:
276: public EList getClientDependencies() {
277: return this .property.getClientDependencies();
278: }
279:
280: public Dependency getClientDependency(final String arg0) {
281: return this .property.getClientDependency(arg0);
282: }
283:
284: public DataType getDatatype() {
285: return this .property.getDatatype();
286: }
287:
288: public String getDefault() {
289: return this .property.getDefault();
290: }
291:
292: public ValueSpecification getDefaultValue() {
293: return this .property.getDefaultValue();
294: }
295:
296: public PackageableElement getDeployedElement(final String arg0) {
297: return this .property.getDeployedElement(arg0);
298: }
299:
300: public EList getDeployedElements() {
301: return this .property.getDeployedElements();
302: }
303:
304: public Deployment getDeployment(final String arg0) {
305: return this .property.getDeployment(arg0);
306: }
307:
308: public EList getDeployments() {
309: return this .property.getDeployments();
310: }
311:
312: public EAnnotation getEAnnotation(final String arg0) {
313: return this .property.getEAnnotation(arg0);
314: }
315:
316: public EList getEAnnotations() {
317: return this .property.getEAnnotations();
318: }
319:
320: public EList getEnds() {
321: return this .property.getEnds();
322: }
323:
324: public Classifier getFeaturingClassifier(final String arg0) {
325: return this .property.getFeaturingClassifier(arg0);
326: }
327:
328: public EList getFeaturingClassifiers() {
329: return this .property.getFeaturingClassifiers();
330: }
331:
332: public Set getKeywords() {
333: return this .property.getKeywords();
334: }
335:
336: public String getLabel() {
337: return this .property.getLabel();
338: }
339:
340: public String getLabel(final boolean arg0) {
341: return this .property.getLabel(arg0);
342: }
343:
344: public int getLower() {
345: return this .property.getLower();
346: }
347:
348: public ValueSpecification getLowerValue() {
349: return this .property.getLowerValue();
350: }
351:
352: public Model getModel() {
353: return this .property.getModel();
354: }
355:
356: public String getName() {
357: return this .property.getName();
358: }
359:
360: public StringExpression getNameExpression() {
361: return this .property.getNameExpression();
362: }
363:
364: public Namespace getNamespace() {
365: return this .property.getNamespace();
366: }
367:
368: public Package getNearestPackage() {
369: return this .property.getNearestPackage();
370: }
371:
372: public Property getOpposite() {
373: return this .property.getOpposite();
374: }
375:
376: public EList getOwnedComments() {
377: return this .property.getOwnedComments();
378: }
379:
380: public EList getOwnedElements() {
381: return this .property.getOwnedElements();
382: }
383:
384: public TemplateSignature getOwnedTemplateSignature() {
385: return this .property.getOwnedTemplateSignature();
386: }
387:
388: public Element getOwner() {
389: return this .property.getOwner();
390: }
391:
392: public Association getOwningAssociation() {
393: return this .property.getOwningAssociation();
394: }
395:
396: public TemplateParameter getOwningParameter() {
397: return this .property.getOwningParameter();
398: }
399:
400: public String getQualifiedName() {
401: return this .property.getQualifiedName();
402: }
403:
404: public Property getQualifier(final String arg0) {
405: return this .property.getQualifier(arg0);
406: }
407:
408: public EList getQualifiers() {
409: return this .property.getQualifiers();
410: }
411:
412: public RedefinableElement getRedefinedElement(final String arg0) {
413: return this .property.getRedefinedElement(arg0);
414: }
415:
416: public EList getRedefinedElements() {
417: return this .property.getRedefinedElements();
418: }
419:
420: public EList getRedefinedProperties() {
421: return this .property.getRedefinedProperties();
422: }
423:
424: public Property getRedefinedProperty(final String arg0) {
425: return this .property.getRedefinedProperty(arg0);
426: }
427:
428: public Classifier getRedefinitionContext(final String arg0) {
429: return this .property.getRedefinitionContext(arg0);
430: }
431:
432: public EList getRedefinitionContexts() {
433: return this .property.getRedefinitionContexts();
434: }
435:
436: public EList getSubsettedProperties() {
437: return this .property.getSubsettedProperties();
438: }
439:
440: public Property getSubsettedProperty(final String arg0) {
441: return this .property.getSubsettedProperty(arg0);
442: }
443:
444: public EList getTemplateBindings() {
445: return this .property.getTemplateBindings();
446: }
447:
448: public TemplateParameter getTemplateParameter() {
449: return this .property.getTemplateParameter();
450: }
451:
452: public Type getType() {
453: return this .property.getType();
454: }
455:
456: public int getUpper() {
457: return this .property.getUpper();
458: }
459:
460: public ValueSpecification getUpperValue() {
461: return this .property.getUpperValue();
462: }
463:
464: public Object getValue(final Stereotype arg0, final String arg1) {
465: return this .property.getValue(arg0, arg1);
466: }
467:
468: public VisibilityKind getVisibility() {
469: return this .property.getVisibility();
470: }
471:
472: public boolean hasKeyword(final String arg0) {
473: return this .property.hasKeyword(arg0);
474: }
475:
476: public boolean hasValue(final Stereotype arg0, final String arg1) {
477: return this .property.hasValue(arg0, arg1);
478: }
479:
480: public boolean includesCardinality(final int arg0) {
481: return this .property.includesCardinality(arg0);
482: }
483:
484: public boolean includesMultiplicity(final MultiplicityElement arg0) {
485: return this .property.includesMultiplicity(arg0);
486: }
487:
488: public boolean isApplied(final Stereotype arg0) {
489: return this .property.isApplied(arg0);
490: }
491:
492: public boolean isComposite() {
493: return this .property.isComposite();
494: }
495:
496: public boolean isConsistentWith(final RedefinableElement arg0) {
497: return this .property.isConsistentWith(arg0);
498: }
499:
500: public boolean isDerived() {
501: return this .property.isDerived();
502: }
503:
504: public boolean isDerivedUnion() {
505: return this .property.isDerivedUnion();
506: }
507:
508: public boolean isDistinguishableFrom(final NamedElement arg0,
509: final Namespace arg1) {
510: return this .property.isDistinguishableFrom(arg0, arg1);
511: }
512:
513: public boolean isLeaf() {
514: return this .property.isLeaf();
515: }
516:
517: public boolean isMultivalued() {
518: return this .property.isMultivalued();
519: }
520:
521: public boolean isNavigable() {
522: return this .property.isNavigable();
523: }
524:
525: public boolean isOrdered() {
526: return this .property.isOrdered();
527: }
528:
529: public boolean isReadOnly() {
530: return this .property.isReadOnly();
531: }
532:
533: public boolean isRedefinitionContextValid(
534: final RedefinableElement arg0) {
535: return this .property.isRedefinitionContextValid(arg0);
536: }
537:
538: public boolean isRequired(final Stereotype arg0) {
539: return this .property.isRequired(arg0);
540: }
541:
542: public boolean isStatic() {
543: return this .property.isStatic();
544: }
545:
546: public boolean isUnique() {
547: return this .property.isUnique();
548: }
549:
550: public int lower() {
551: return this .property.lower();
552: }
553:
554: public int lowerBound() {
555: return this .property.lowerBound();
556: }
557:
558: public boolean mustBeOwned() {
559: return this .property.mustBeOwned();
560: }
561:
562: public Property opposite() {
563: return this .property.opposite();
564: }
565:
566: public Set parameterableElements() {
567: return this .property.parameterableElements();
568: }
569:
570: public String qualifiedName() {
571: return this .property.qualifiedName();
572: }
573:
574: public void removeKeyword(final String arg0) {
575: this .property.removeKeyword(arg0);
576: }
577:
578: public String separator() {
579: return this .property.separator();
580: }
581:
582: public void setAggregation(final AggregationKind arg0) {
583: this .property.setAggregation(arg0);
584: }
585:
586: public void setAssociation(final Association arg0) {
587: this .property.setAssociation(arg0);
588: }
589:
590: public void setAssociationEnd(final Property arg0) {
591: this .property.setAssociationEnd(arg0);
592: }
593:
594: public void setBooleanDefault(final boolean arg0) {
595: this .property.setBooleanDefault(arg0);
596: }
597:
598: public void setDatatype(final DataType arg0) {
599: this .property.setDatatype(arg0);
600: }
601:
602: public void setDefaultValue(final ValueSpecification arg0) {
603: this .property.setDefaultValue(arg0);
604: }
605:
606: public void setIntegerDefault(final int arg0) {
607: this .property.setIntegerDefault(arg0);
608: }
609:
610: public void setIsDerived(final boolean arg0) {
611: this .property.setIsDerived(arg0);
612: }
613:
614: public void setIsDerivedUnion(final boolean arg0) {
615: this .property.setIsDerivedUnion(arg0);
616: }
617:
618: public void setIsLeaf(final boolean arg0) {
619: this .property.setIsLeaf(arg0);
620: }
621:
622: public void setIsOrdered(final boolean arg0) {
623: this .property.setIsOrdered(arg0);
624: }
625:
626: public void setIsReadOnly(final boolean arg0) {
627: this .property.setIsReadOnly(arg0);
628: }
629:
630: public void setIsStatic(final boolean arg0) {
631: this .property.setIsStatic(arg0);
632: }
633:
634: public void setIsUnique(final boolean arg0) {
635: this .property.setIsUnique(arg0);
636: }
637:
638: public void setLowerBound(final int arg0) {
639: this .property.setLowerBound(arg0);
640: }
641:
642: public void setLowerValue(final ValueSpecification arg0) {
643: this .property.setLowerValue(arg0);
644: }
645:
646: public void setName(final String arg0) {
647: this .property.setName(arg0);
648: }
649:
650: public void setNameExpression(final StringExpression arg0) {
651: this .property.setNameExpression(arg0);
652: }
653:
654: public void setNavigable(final boolean arg0) {
655: this .property.setNavigable(arg0);
656: }
657:
658: public void setOwnedTemplateSignature(final TemplateSignature arg0) {
659: this .property.setOwnedTemplateSignature(arg0);
660: }
661:
662: public void setOwningAssociation(final Association arg0) {
663: this .property.setOwningAssociation(arg0);
664: }
665:
666: public void setOwningParameter(final TemplateParameter arg0) {
667: this .property.setOwningParameter(arg0);
668: }
669:
670: public void setStringDefault(final String arg0) {
671: this .property.setStringDefault(arg0);
672: }
673:
674: public void setTemplateParameter(final TemplateParameter arg0) {
675: this .property.setTemplateParameter(arg0);
676: }
677:
678: public void setType(final Type arg0) {
679: this .property.setType(arg0);
680: }
681:
682: public void setUnlimitedNaturalDefault(final int arg0) {
683: this .property.setUnlimitedNaturalDefault(arg0);
684: }
685:
686: public void setUpperBound(final int arg0) {
687: this .property.setUpperBound(arg0);
688: }
689:
690: public void setUpperValue(final ValueSpecification arg0) {
691: this .property.setUpperValue(arg0);
692: }
693:
694: public void setValue(final Stereotype arg0, final String arg1,
695: final Object arg2) {
696: this .property.setValue(arg0, arg1, arg2);
697: }
698:
699: public void setVisibility(final VisibilityKind arg0) {
700: this .property.setVisibility(arg0);
701: }
702:
703: public Set subsettingContext() {
704: return this .property.subsettingContext();
705: }
706:
707: public void unapply(final Stereotype arg0) {
708: this .property.unapply(arg0);
709: }
710:
711: public int upper() {
712: return this .property.upper();
713: }
714:
715: public int upperBound() {
716: return this .property.upperBound();
717: }
718:
719: public boolean validateDerivedUnionIsDerived(
720: final DiagnosticChain arg0, final Map arg1) {
721: return this .property.validateDerivedUnionIsDerived(arg0, arg1);
722: }
723:
724: public boolean validateHasOwner(final DiagnosticChain arg0,
725: final Map arg1) {
726: return this .property.validateHasOwner(arg0, arg1);
727: }
728:
729: public boolean validateLowerEqLowerbound(
730: final DiagnosticChain arg0, final Map arg1) {
731: return this .property.validateLowerEqLowerbound(arg0, arg1);
732: }
733:
734: public boolean validateLowerGe0(final DiagnosticChain arg0,
735: final Map arg1) {
736: return this .property.validateLowerGe0(arg0, arg1);
737: }
738:
739: public boolean validateMultiplicityOfComposite(
740: final DiagnosticChain arg0, final Map arg1) {
741: return this .property
742: .validateMultiplicityOfComposite(arg0, arg1);
743: }
744:
745: public boolean validateNavigablePropertyRedefinition(
746: final DiagnosticChain arg0, final Map arg1) {
747: return this .property.validateNavigablePropertyRedefinition(
748: arg0, arg1);
749: }
750:
751: public boolean validateNavigableReadonly(
752: final DiagnosticChain arg0, final Map arg1) {
753: return this .property.validateNavigableReadonly(arg0, arg1);
754: }
755:
756: public boolean validateNoName(final DiagnosticChain arg0,
757: final Map arg1) {
758: return this .property.validateNoName(arg0, arg1);
759: }
760:
761: public boolean validateNotOwnSelf(final DiagnosticChain arg0,
762: final Map arg1) {
763: return this .property.validateNotOwnSelf(arg0, arg1);
764: }
765:
766: public boolean validateOppositeIsOtherEnd(
767: final DiagnosticChain arg0, final Map arg1) {
768: return this .property.validateOppositeIsOtherEnd(arg0, arg1);
769: }
770:
771: public boolean validateQualifiedName(final DiagnosticChain arg0,
772: final Map arg1) {
773: return this .property.validateQualifiedName(arg0, arg1);
774: }
775:
776: public boolean validateRedefinitionConsistent(
777: final DiagnosticChain arg0, final Map arg1) {
778: return this .property.validateRedefinitionConsistent(arg0, arg1);
779: }
780:
781: public boolean validateRedefinitionContextValid(
782: final DiagnosticChain arg0, final Map arg1) {
783: return this .property.validateRedefinitionContextValid(arg0,
784: arg1);
785: }
786:
787: public boolean validateSubsettingContext(
788: final DiagnosticChain arg0, final Map arg1) {
789: return this .property.validateSubsettingContext(arg0, arg1);
790: }
791:
792: public boolean validateSubsettingRules(final DiagnosticChain arg0,
793: final Map arg1) {
794: return this .property.validateSubsettingRules(arg0, arg1);
795: }
796:
797: public boolean validateUpperEqUpperbound(
798: final DiagnosticChain arg0, final Map arg1) {
799: return this .property.validateUpperEqUpperbound(arg0, arg1);
800: }
801:
802: public boolean validateUpperGeLower(final DiagnosticChain arg0,
803: final Map arg1) {
804: return this .property.validateUpperGeLower(arg0, arg1);
805: }
806:
807: public boolean validateUpperGt0(final DiagnosticChain arg0,
808: final Map arg1) {
809: return this .property.validateUpperGt0(arg0, arg1);
810: }
811:
812: public boolean validateVisibilityNeedsOwnership(
813: final DiagnosticChain arg0, final Map arg1) {
814: return this.property.validateVisibilityNeedsOwnership(arg0,
815: arg1);
816: }
817: }
|