public interface Substitution extends UmlModelElement
A Substitution is a relationship between two Classifiers, which signifies that the substituting Classifier complies with the contract specified by the contract Classifier. This implies that Instances of the substituting Classifier are runtime substitutable where instances of the contract Classifier are expected.
The Substitution relationship denotes runtime substitutability that is not based on specialization. Substitution, unlike specialization, does not imply inheritance of structure, but only compliance of publicly available contracts. A Substitution like relationship is instrumental to specify runtime substitutability for domains that do not support specialization such as certain component technologies. It requires that
In Modelio, contrary to UML 2.0, Substitution derives from ModelElement. A Substitution is owned by its substituting Classifier.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
MNAME
The metaclass simple name.
|
static java.lang.String |
MQNAME
The metaclass qualified name.
|
Modifier and Type | Method and Description |
---|---|
Classifier |
getContract()
Getter for relation 'Substitution->Contract'
Metamodel description:
Designates the Classifier that is substituted.
|
Classifier |
getSubstitutingClassifier()
Getter for relation 'Substitution->SubstitutingClassifier'
Metamodel description:
null
|
void |
setContract(Classifier value)
Setter for relation 'Substitution->Contract'
Metamodel description:
Designates the Classifier that is substituted.
|
void |
setSubstitutingClassifier(Classifier value)
Setter for relation 'Substitution->SubstitutingClassifier'
Metamodel description:
null
|
getConstraintDefinition, getConstraintDefinition, getDefaultParametering, getDefaultParametering, getManifesting, getManifesting, getOwnerTemplateParameter, getReceivedInfo, getReceivedInfo, getRepresentingConnector, getRepresentingConnector, getRepresentingEnd, getRepresentingEnd, getRepresentingInstance, getRepresentingInstance, getRepresentingPartition, getRepresentingPartition, getRepresents, getRepresents, getSentInfo, getSentInfo, getTemplateSubstitution, getTemplateSubstitution, getTypingParameter, getTypingParameter, setOwnerTemplateParameter
addStereotype, getAttached, getAttached, getDependsOnDependency, getDependsOnDependency, getDescriptor, getDescriptor, getExtension, getExtension, getImpactDependsOn, getImpactDependsOn, getImpactedDependency, getImpactedDependency, getImpactImpacted, getImpactImpacted, getLocalProperties, getLocalProperty, getMatrix, getMatrix, getName, getNote, getNote, getNote, getNoteContent, getNoteContent, getNoteContent, getProduct, getProduct, getProperties, getProperties, getProperties, getProperties, getProperties, getProperty, getProperty, getProperty, getProperty, getStereotype, getTag, getTag, getTag, getTag, getTag, getTagValue, getTagValue, getTagValue, getTagValues, getTagValues, getTagValues, isStereotyped, isStereotyped, isTagged, isTagged, isTagged, putNoteContent, putNoteContent, putNoteContent, putTagValue, putTagValue, putTagValue, putTagValues, putTagValues, putTagValues, removeNotes, removeNotes, removeNotes, removeStereotypes, removeTags, removeTags, removeTags, setLocalProperties, setLocalProperty, setName, setProperty, setProperty, setProperty, setProperty
getAddedToQuery, getAddedToQuery, getCausedImpact, getCausedImpact, getDiagramElement, getDiagramElement
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
eAdapters, eDeliver, eNotify, eSetDeliver
accept, delete, getCompositionChildren, getCompositionOwner, getMClass, getStatus, getUuid, isDeleted, isModifiable, isShell, isValid, mGet, mGet, mSet
static final java.lang.String MNAME
static final java.lang.String MQNAME
Classifier getContract()
void setContract(Classifier value)
Classifier getSubstitutingClassifier()
void setSubstitutingClassifier(Classifier value)