Package com.sodius.mdw.metamodel.uml21
Interface PartDecomposition
-
- All Superinterfaces:
Comparable<Object>
,Element
,org.eclipse.emf.ecore.EModelElement
,org.eclipse.emf.ecore.EObject
,InteractionFragment
,InteractionUse
,MDWEObject
,MDWObject
,NamedElement
,org.eclipse.emf.common.notify.Notifier
public interface PartDecomposition extends InteractionUse
A representation of the model object 'Part Decomposition'. A part decomposition is a description of the internal interactions of one lifeline relative to an interaction.- See Also:
UMLPackage.getPartDecomposition()
-
-
Field Summary
-
Fields inherited from interface com.sodius.mdw.metamodel.uml21.NamedElement
SEPARATOR
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
validateAssume(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
Assume that within Interaction X, Lifeline L is of class C and decomposed to D.boolean
validateCommutativityOfDecomposition(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
Assume that within Interaction X, Lifeline L is of class C and decomposed to D.boolean
validatePartsOfInternalStructures(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
PartDecompositions apply only to Parts that are Parts of Internal Structures not to Parts of Collaborations.-
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.metamodel.uml21.InteractionFragment
createGeneralOrdering, getCovered, getCovered, getCovereds, getEnclosingInteraction, getEnclosingOperand, getGeneralOrdering, getGeneralOrdering, getGeneralOrderings, setEnclosingInteraction, setEnclosingOperand
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.InteractionUse
createActualGate, createArgument, getActualGate, getActualGate, getActualGates, getArgument, getArgument, getArguments, getRefersTo, setRefersTo, validateAllLifelines, validateArgumentsAreConstants, validateArgumentsCorrespondToParameters, validateGatesMatch
-
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
-
-
-
-
Method Detail
-
validatePartsOfInternalStructures
boolean validatePartsOfInternalStructures(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
PartDecompositions apply only to Parts that are Parts of Internal Structures not to Parts of Collaborations. true
-
validateAssume
boolean validateAssume(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Within X there is a sequence of constructs along L (such constructs are CombinedFragments, InteractionUse and (plain) OccurrenceSpecifications). Then a corresponding sequence of constructs must appear within D, matched one-to-one in the same order. i) CombinedFragment covering L are matched with an extra-global CombinedFragment in D ii) An InteractionUse covering L are matched with a global (i.e. covering all Lifelines) InteractionUse in D. iii) A plain OccurrenceSpecification on L is considered an actualGate that must be matched by a formalGate of D true
-
validateCommutativityOfDecomposition
boolean validateCommutativityOfDecomposition(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
Assume that within Interaction X, Lifeline L is of class C and decomposed to D. Assume also that there is within X an InteractionUse (say) U that covers L. According to the constraint above U will have a counterpart CU within D. Within the Interaction referenced by U, L should also be decomposed, and the decomposition should reference CU. (This rule is called commutativity of decomposition) true
-
-