Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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

...