Previous | UML Classes | Table of Contents | UML Packages | Next |
DestroyObjectAction is an action that destroys objects.
•
Action (from BasicActions ) on page 247
This action destroys the object on its input pin at runtime. The object may be a link object, in which case the semantics
of DestroyLinkAction also applies.
• isDestroyLinks : Boolean = false Specifies whether links in which the object participates are destroyed along with the object.
Default value is false.
Issue 8039 -clarify type of object ownership
• isDestroyOwnedObjects : Boolean = false Specifies whether objects owned by the object through composite aggregation are
destroyed along with the object. Default value is false.
• target : InputPin [1..1] The input pin providing the object to be destroyed. (Subsets Action::input)
[1] The multiplicity of the input pin is 1..1.
self.target.multiplicity.is(1,1)
[2] The input pin has no type.
self.target.type->size() = 0
Issue 8039 -Clarify semantics of ownership.
The classifiers of the object are removed as its classifiers, and the object is destroyed. The default action has no other
effect. In particular, no behaviors are executed, no state machine transitions are triggered, and references to the destroyed
objects are unchanged. If isDestroyLinks is true, links in which the object participates are destroyed along with the object
according to the semantics of DestroyLinkAction , except for link objects, which are destroyed according to the semantics of
DestroyObjectAction with the same attribute values as the original DestroyObjectAction . If isDestroyOwnedObjects is true,
objects owned by the object through composite aggregation are destroyed according to the semantics of DestroyObjectAction
with the same attribute values as the original DestroyObjectAction .
Destroying an object that is already destroyed has no effect.
No specific notation
DestroyObjectAction is introduced for destroying objects.
Same as UML 1.5