Package com.sodius.mdw.metamodel.uml21
Interface Extension
-
- All Superinterfaces:
Association
,Classifier
,Comparable<Object>
,Element
,org.eclipse.emf.ecore.EModelElement
,org.eclipse.emf.ecore.EObject
,MDWEObject
,MDWObject
,NamedElement
,Namespace
,org.eclipse.emf.common.notify.Notifier
,PackageableElement
,ParameterableElement
,RedefinableElement
,Relationship
,TemplateableElement
,Type
public interface Extension extends Association
A representation of the model object 'Extension'. An extension is used to indicate that the properties of a metaclass are extended through a stereotype, and gives the ability to flexibly add (and later remove) stereotypes to classes.The following features are supported:
- See Also:
UMLPackage.getExtension()
-
-
Field Summary
Fields Modifier and Type Field Description static String
METACLASS_ROLE_PREFIX
The prefix for metaclass role names.static String
STEREOTYPE_ROLE_PREFIX
The prefix for stereotype role names.-
Fields inherited from interface com.sodius.mdw.metamodel.uml21.NamedElement
SEPARATOR
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Class
getMetaclass()
Returns the value of the 'Metaclass' reference.Stereotype
getStereotype()
Retrieves the stereotype that extends a metaclass through this extension.Property
getStereotypeEnd()
Retrieves the extension end that is typed by a stereotype (as opposed to a metaclass).boolean
isRequired()
Returns the value of the 'Is Required' attribute.Property
metaclassEnd()
The query metaclassEnd() returns the Property that is typed by a metaclass (as opposed to a stereotype).boolean
validateIsBinary(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
An Extension is binary, i.e., it has only two memberEnds.boolean
validateNonOwnedEnd(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
The non-owned end of an Extension is typed by a Class.-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.Association
createNavigableOwnedEnd, createNavigableOwnedEnd, createOwnedEnd, createOwnedEnd, getEndType, getEndType, getEndTypes, getMemberEnd, getMemberEnd, getMemberEnds, getNavigableOwnedEnd, getNavigableOwnedEnd, getNavigableOwnedEnds, getOwnedEnd, getOwnedEnd, getOwnedEnds, isBinary, isDerived, setIsDerived, validateAssociationEnds, validateBinaryAssociations, validateSpecializedEndNumber, validateSpecializedEndTypes
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.Classifier
allFeatures, allParents, conformsTo, createCollaborationUse, createGeneralization, createOwnedUseCase, createRepresentation, createSubstitution, getAllAttributes, getAllOperations, getAllUsedInterfaces, getAttribute, getAttribute, getAttributes, getCollaborationUse, getCollaborationUse, getCollaborationUses, getFeature, getFeature, getFeatures, getGeneral, getGeneral, getGeneralization, getGeneralization, getGeneralizations, getGenerals, getInheritedMember, getInheritedMember, getInheritedMembers, getOperation, getOperation, getOperations, getOwnedUseCase, getOwnedUseCase, getOwnedUseCases, getPowertypeExtent, getPowertypeExtent, getPowertypeExtents, getRedefinedClassifier, getRedefinedClassifier, getRedefinedClassifiers, getRepresentation, getSubstitution, getSubstitution, getSubstitutions, getUseCase, getUseCase, getUseCases, getUsedInterfaces, hasVisibilityOf, inherit, inheritableMembers, isAbstract, isFinalSpecialization, maySpecializeType, parents, setIsAbstract, setIsFinalSpecialization, setRepresentation, validateGeneralizationHierarchies, validateMapsToGeneralizationSet, validateNoCyclesInGeneralization, validateSpecializeType
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.Element
addKeyword, allOwnedElements, applyStereotype, createEAnnotation, createOwnedComment, destroy, getApplicableStereotype, getApplicableStereotypes, getAppliedStereotype, getAppliedStereotypes, getAppliedSubstereotype, getAppliedSubstereotypes, getKeywords, getModel, getNearestPackage, getOwnedComments, getOwnedElements, getOwner, getRelationships, getRelationships, getRequiredStereotype, getRequiredStereotypes, getSourceDirectedRelationships, getSourceDirectedRelationships, getStereotypeApplication, getStereotypeApplications, getTargetDirectedRelationships, getTargetDirectedRelationships, getValue, hasKeyword, hasValue, isStereotypeApplicable, isStereotypeApplied, isStereotypeRequired, mustBeOwned, removeKeyword, setValue, unapplyStereotype, validateHasOwner, validateNotOwnSelf
-
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotation, getEAnnotations
-
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
-
Methods inherited from interface com.sodius.mdw.core.model.MDWObject
compareTo, eExtendedClass, eIsInstanceOf, eIsInstanceOf, eIsProfiled, eIsRemoved, eMetamodel, eMetaTypeName, eModel, eRemove, eSetUniqueID, eUniqueID, superScript, superScript, toBoolean, toBoolean, toByte, toByte, toChar, toChar, toDouble, toDouble, toFloat, toFloat, toInt, toInt, toList, toList, toList, toList, toList, toLong, toLong, toObject, toObject, toSet, toSet, toShort, toShort, toString, toString
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.NamedElement
allNamespaces, allOwningPackages, createDependency, createNameExpression, getClientDependencies, getClientDependency, getClientDependency, getLabel, getLabel, getName, getNameExpression, getNamespace, getQualifiedName, getVisibility, isDistinguishableFrom, isSetName, isSetVisibility, separator, setName, setNameExpression, setVisibility, unsetName, unsetVisibility, validateHasNoQualifiedName, validateHasQualifiedName, validateVisibilityNeedsOwnership
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.Namespace
createElementImport, createElementImport, createOwnedDiagram, createOwnedRule, createOwnedRule, createPackageImport, createPackageImport, excludeCollisions, getElementImport, getElementImport, getElementImports, getImportedElements, getImportedMember, getImportedMember, getImportedMembers, getImportedPackages, getMember, getMember, getMembers, getNamesOfMember, getOwnedDiagrams, getOwnedDiagrams, getOwnedMember, getOwnedMember, getOwnedMembers, getOwnedRule, getOwnedRule, getOwnedRules, getPackageImport, getPackageImport, getPackageImports, importMembers, membersAreDistinguishable, validateMembersDistinguishable
-
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.ParameterableElement
getOwningTemplateParameter, getTemplateParameter, isCompatibleWith, isTemplateParameter, setOwningTemplateParameter, setTemplateParameter
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.RedefinableElement
getRedefinedElement, getRedefinedElement, getRedefinedElements, getRedefinitionContext, getRedefinitionContext, getRedefinitionContexts, isConsistentWith, isLeaf, isRedefinitionContextValid, setIsLeaf, validateRedefinitionConsistent, validateRedefinitionContextValid
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.Relationship
getRelatedElements
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.TemplateableElement
createOwnedTemplateSignature, createOwnedTemplateSignature, createTemplateBinding, getOwnedTemplateSignature, getTemplateBinding, getTemplateBinding, getTemplateBindings, isTemplate, parameterableElements, setOwnedTemplateSignature
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.Type
conformsTo, createAssociation, getAssociations, getPackage, setPackage
-
-
-
-
Field Detail
-
METACLASS_ROLE_PREFIX
static final String METACLASS_ROLE_PREFIX
The prefix for metaclass role names.- See Also:
- Constant Field Values
-
STEREOTYPE_ROLE_PREFIX
static final String STEREOTYPE_ROLE_PREFIX
The prefix for stereotype role names.- See Also:
- Constant Field Values
-
-
Method Detail
-
isRequired
boolean isRequired()
Returns the value of the 'Is Required' attribute. The default value is"false"
. Indicates whether an instance of the extending stereotype must be created when an instance of the extended class is created. The attribute value is derived from the multiplicity of the Property referenced by Extension::ownedEnd; a multiplicity of 1 means that isRequired is true, but otherwise it is false. Since the default multiplicity of an ExtensionEnd is 0..1, the default value of isRequired is false.- Returns:
- the value of the 'Is Required' attribute.
- See Also:
UMLPackage.getExtension_IsRequired()
-
getMetaclass
Class getMetaclass()
Returns the value of the 'Metaclass' reference. It is bidirectional and its opposite is 'Extension
'. References the Class that is extended through an Extension. The property is derived from the type of the memberEnd that is not the ownedEnd.- Returns:
- the value of the 'Metaclass' reference.
- See Also:
UMLPackage.getExtension_Metaclass()
,Class.getExtensions()
-
validateNonOwnedEnd
boolean validateNonOwnedEnd(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
The non-owned end of an Extension is typed by a Class. metaclassEnd()->notEmpty() and metaclass()->oclIsKindOf(Class)
-
validateIsBinary
boolean validateIsBinary(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
An Extension is binary, i.e., it has only two memberEnds. memberEnd->size() = 2
-
getStereotypeEnd
Property getStereotypeEnd()
Retrieves the extension end that is typed by a stereotype (as opposed to a metaclass).
-
getStereotype
Stereotype getStereotype()
Retrieves the stereotype that extends a metaclass through this extension.
-
metaclassEnd
Property metaclassEnd()
The query metaclassEnd() returns the Property that is typed by a metaclass (as opposed to a stereotype). result = memberEnd->reject(ownedEnd)
-
-