Versions Compared

Key

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

...

PlantUML Macro
titleInstantiation
@startuml

actor CLAMP
participant Deployment_API
database Runtime_DB
control CL_Instance_Control
participant DmaaP
collections Participants

CLAMP -> RuntimeDeployment_DBAPI : Fetch all Deployed Control Loops (using Deploy APIs)
Deployment_API -> Runtime_DB : Rest call to get the Deployed Control Loops
Runtime_DB -> CLAMPDeployment_API : Return all Deployed Loops which reside in the database
Deployment_API -> CLAMP : Provide the data
CLAMP -> CLAMP : Select Control Loop to be instantiated and provide configurations for it
CLAMP -> CL_Instance_Control : Instantiate CL POST REST API call

alt case where CLAMP sends deployed CL id instead of the full CL in the body

CL_Instance_Control -> Runtime_DB : Fetch the Deployed Control Loop from Models table
Runtime_DB -> CL_Instance_Control : Return the requested Deployed Control Loop data

end

CL_Instance_Control -> DmaaP : INSTANTIATE Event (JSON/Yaml)
note over CL_Instance_Control, DmaaP : List of Participant ID's containing Participant Metadata Blocks
Participants -> DmaaP : Pulls its part of CL and tries to Instantiate

alt successful case

Participants -> CL_Instance_Control : INSTANTIATE ACK (JSON/Yaml)
note over DmaaP : One per Participant
CL_Instance_Control -> Runtime_DB : Update the CL Instance LCM Data table
CL_Instance_Control -> CLAMP : Return Instantiation Successful

else failure case

... timeout INSTANTIATE ACK not received ...
CL_Instance_Control -> DmaaP : TEARDOWN Event (JSON/Yaml)
Participants -> DmaaP : Pulls its part of CL and starts Teardown
Participants -> CL_Instance_Control : TEARDOWN ACK (JSON/Yaml)
note over DmaaP : One per Participant
CL_Instance_Control -> CLAMP : Return Instantiation Failed (http code and an error message) 

end
@enduml

...