...
PlantUML Macro |
---|
@startuml participant REST participant ACM_Runtime database ACM_Database REST -> ACM_Runtime: Create Automation Composition Instance for\nspecified Automation Composition Type with\nspecified parameter values alt Automation Composition Instance exists alt Automation Composition Instance is innot state "In Service" ACM_Runtime -> REST: Automation Composition instance exists and is in use elsealready deployed note right of REST Updates on "Not In Service" Automation Composition Instances are allowed end note else ACM_Runtime -> REST: Automation Composition instance exists and is already deployed end end alt Specified Automation Type Composition Exists alt Specified Automation Composition Type is Primed ACM_Runtime -> ACM_Database: Store Automation Composition Instance ACM_Runtime -> REST: Automation Composition Instance Created else ACM_Runtime -> REST: Automation Composition Type is not primed end else ACM_Runtime -> REST: Automation Composition Type is not found end @enduml |
...
PlantUML Macro |
---|
@startuml participant REST participant ACM_Runtime database ACM_Database REST -> ACM_Runtime: Delete Automation Composition Instance alt Automation Composition Instance exists alt Automation Composition Instance is in state "In Service"deployed ACM_Runtime -> REST: Automation Composition instance exists and is in usedeployed else ACM_Runtime -> REST: Automation Composition instance does not exist end else ACM_Runtime -> ACM_Database: Delete Automation Composition Instance ACM_Runtime -> REST: Automation Composition Instance Deleted end @enduml |
...
The user requests the AC Instance to come into service be deployed using a REST endpoint. The ACM Runtime orders the AC Instance to be deployed to Participants.
...
PlantUML Macro |
---|
@startuml participant REST participant ACM_Runtime participant Participants database ACM_Database REST -> ACM_Runtime: Deploy Automation Composition Instance ACM_Runtime -> ACM_Database: Read Automation Composition Instance Information alt Automation Composition Instance exists alt Automation Composition Instance is deployed ACM_Runtime -> REST: Automation Composition instance is already deployed else ACM_Runtime -> REST: Automation Composition instance does not exist end else ACM_Runtime -> Participants: [ASYNC] Deploy AC Element Instances for this AC Instance ACM_Runtime -> ACM_Database: Set status of AC Instance and its AC Element Instances as Deploying ACM_Runtime -> REST: Deployment of Automation Composition Instance has been requested end @enduml |
Each participant brings deploys its AC Element Instances from the AC Instance into service.
PlantUML Macro |
---|
@startuml
participant ACM_Runtime
participant Participant
ACM_Runtime -> Participant: [ASYNC] Deploy AC Element Instances for this AC Instance
loop over AC Element Instances in AC Instance
alt Does the primed Participant ID on this AC Element Instance\nmatch my Participant ID?
alt Is this AC Element Instance already deployed
ACM_Runtime <- Participant: [ASYNC] WARN: AC Element is already deployed
else
Participant -> Participant: Deploy AC Element Instance
activate Participant
deactivate Participant
alt AC Element deployed successfully
Participant -> Participant: Set state of AC Element Instance administrative state to LOCKED
ACM_Runtime <- Participant: [ASYNC] INFO: AC Element has been deployed
else
ACM_Runtime <- Participant: [ASYNC] ERROR: AC Element was not deployed
end
end
else
note left of participant
ignore this AC Element instance as its for another participant
end note
end
end
@enduml |
...
PlantUML Macro |
---|
@startuml participant ACM_Runtime participant Participant database ACM_Database ACM_Runtime <- Participant: [ASYNC] Deploy Automation Composition Element Instance into ServiceInstance Response ACM_Runtime -> ACM_Database: Store Automation Composition Element Instance Response Information alt Is AC Element Instance in serviceDeployed? ACM_Runtime -> ACM_Database: Set AC Element Instance as "In Service" else ACM_Runtime -> ACM_Database: Set AC Element Instance as "Not In Service" endadministrative state as LOCKED end @enduml |
3.4
...
Undeploy Automation Composition Instance
...
The user requests the AC Instance to drop out of service be undeployed using a REST endpoint. The ACM Runtime orders the AC Instance to drop out of servicebe undeployed.
PlantUML Macro |
---|
@startuml participant REST participant ACM_Runtime participant Participants database ACM_Database REST -> ACM_Runtime: TakeUndeploy Automation Composition Instance out of Service ACM_Runtime -> ACM_Database: Read Automation Composition Instance Information alt Automation Composition Instance exists alt Automation Composition Instance is in state "Out Of Service" ACM_Runtime -> REST: Automation Composition instance exists and is already out of service else ACM_Runtime -> REST: Automation Composition instance does not exist end else ACM_Runtime -> Participants: [ASYNC] Take AC Element Instances for this AC Instance out of Service ACM_Runtime -> ACM_Database: Set status of AC Instance and its AC Element Instances as "Dropping out of Service" ACM_Runtime -> REST: Automation Composition Instance has been requested to drop out of service end @enduml |
...