...
PlantUML Macro |
---|
@startuml participant CLAMP_GUI participant CLAMP_Runtime database Database CLAMP_GUI -> CLAMP_Runtime: [REST] Read Control Loop Instances CLAMP_Runtime -> Database: Read Control Loop Instances CLAMP_Runtime -> CLAMP_GUI: [REST] Control Loop Instances returned CLAMP_GUI -> CLAMP_GUI: Select Control Loop Instance on which to Update Parameters CLAMP_GUI -> CLAMP_GUI: Step version of Control Loop Instance as Major/Minor/Patch CLAMP_GUI -> CLAMP_Runtime: [REST] Fetch GUI fields for Instance Specific Parameter Definitions CLAMP_Runtime -> Database: Read Control Loop Type Definition CLAMP_Runtime -> CLAMP_Runtime: Generate fields for Instance Specific Parameters for GUI CLAMP_Runtime -> CLAMP_GUI: [REST] Return GUI fields Instance Specific Parameter Definitions CLAMP_GUI -> CLAMP_GUI: Render UI for Instance Specific Parameters CLAMP_GUI -> CLAMP_GUI: Get values for Instance Specific Parameters from user CLAMP_GUI -> CLAMP_Runtime: [REST] Request Update of Control Loop Instance CLAMP_Runtime -> CLAMP_Runtime: Update Control Loop Instance CLAMP_Runtime -> Database: Store New Version of Control Loop Instance CLAMP_Runtime -> CLAMP_GUI: [REST] Control Loop Instance Updated @enduml |
2.3 Updating a Control Loop Instance
...
with a Configuration on Participants
PlantUML Macro |
---|
@startuml participant CLAMP_GUI participant CLAMP_Runtime participant Participant database Database CLAMP_GUI -> CLAMP_Runtime: [REST] Read all configuration versions of Control Loop Instance CLAMP_Runtime -> Database: Read all configuration versions of Control Loop Instance CLAMP_Runtime -> CLAMP_GUI: [REST] All configuration versions of Control Loop Instance returned CLAMP_GUI -> CLAMP_GUI: Select configuration version of Control Loop Instance for Instantiation Participants CLAMP_GUI -> CLAMP_Runtime: [REST] Instantiate selected configuration version of Control Loop Instance on Participants alt Selected configuration version of Control Loop Instance not instantiated on Participants CLAMP_Runtime -> Database: Read configuration version of Control Loop Instance CLAMP_Runtime -> Participants: [DMaaP] Update Participants with configuration version of Control Loop Instance CLAMP_Runtime -> CLAMP_GUI: [REST] Instantiation of configuration Versionversion of Control Loop Instance ordered on participants else Selected configuration version of Control Loop Instance instantiated on Participants CLAMP_Runtime -> CLAMP_GUI: [REST] configuration Versionversion of Control Loop Instance already instantiated on participants end == Participant Responses == Participants -> CLAMP_Runtime: [DMaaP] Result of update of configuration version of Control Loop Instance on participant CLAMP_Runtime -> Database: Store result of update of configuration version of Control Loop Instance on participant == Supervision == loop forever CLAMP_Runtime -> Database: Read Control Loop Instances loop over each Control Loop Instance alt Control Loop Instance configuration Instantiationversion update underway on participants CLAMP_Runtime -> Database: read result of Control Loop updates from participants alt Updates completed on all participants CLAMP_Runtime -> Database: set configuration version of Control Loop Instance as Instantiated on Participants CLAMP_Runtime -> Database: set overall configuration version of Control Loop Instance state as Instantiated else Updates not completed alt Instantiation of Control Loop Instance on participants timed out CLAMP_Runtime -> Database: set configuration version Control Loop Instance Instantiation as timed out on Participants CLAMP_Runtime -> CLAMP_Runtime: Log error else Wait for updates to complete end end else Control Loop Instance configuration Instantiationversion update on participants not underway end end end @enduml |
...