mirror of
https://github.com/nasa/openmct.git
synced 2025-01-31 08:25:31 +00:00
f602aa9247
Add an optional parameter to method signature of copyService, used to determine if a domain object should or should not be cloned. This will be used to support usages of copyService where links should remain links; https://github.com/nasa/openmctweb/pull/666/files#r52525612
Entanglement
Entanglement is the process of moving, copying, and linking domain objects in such a way that their relationships are impossible to discern.
This bundle provides move, copy, and link functionality. Acheiving a state of entanglement is left up to the end user.
Services implement logic
Each method (move, copy, link) is implemented as a service, and each service
provides two functions: validate
and perform
.
validate(object, parentCandidate)
returns true if the object
can be
move/copy/linked into the parentCandidate
's composition.
perform(object, parentObject)
move/copy/links the object
into the
parentObject
's composition.
Actions implement user interactions
Actions are used to expose move/copy/link to the user. They prompt for input where necessary, and complete the actions.