...
The Priming operation sends Automation Composition Types and common property values to participants for each Automation Composition Element Type in the Automation Composition Type. A participant should respond for each Automation Composition Element Type, thus causing the full Automation Composition Type to become primed. Note that if more than one participant can support an Automation Composition Element Type the ACM Runtime uses the participant in the first response it receives for that Automation Composition Element Type.
PlantUML Macro |
---|
@startuml participant REST participant ACM_Runtime participant Participant database ACM_Database == Priming REST Request == REST -> ACM_Runtime: Prime Automation Composition Type ACM_Runtime -> ACM_Database: Read Automation Composition Type ACM_Runtime -> Participant: [ASYNC] Send Priming Request to all Participants\nwith Automation Composition Type Definition REST <- ACM_Runtime: Priming of Automation Composition Type Ordered == Each Participant == ACM_Runtime -> Participant: [ASYNC] Receive Priming Request with Automation Composition Type Definition loop Over all Automation Composition Element Type Definitions\nin Automation Composition Type Definition alt Automation Composition Element Type supported by Participant Participant -> Participant: Save Automation Composition Element Type details on this Participant ACM_Runtime <- Participant: [ASYNC] Send Priming Response claiming Automation Composition Element Type alt Automation Composition Element Type already Primed note right of Participant Ignore Priming Response end note else ACM_Runtime -> ACM_Database: Record Participant for Automation Composition Element Type\nand set Element Type as Primed end else note right of Participant Ignore Priming Request end note end end |
...