Versions Compared

Key

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

...

  1. GET DesignTime ControlLoops Sequence Diagram

    PlantUML Macro
    formatPNG
    titleGET DesignTime ControlLoopsInstantiation
    @startuml
    
    actor CLAMP
    control CL_Instance_Control
    participant DesignTime_Catalogue_Database Database
    note over Database: It can be DesiginTime Or RuntTime Catalogue Database
    
    
    CLAMP -> CL_Instance_Control: Rest API Get Request (JSON/Yaml)
    CL_Instance_Control -> DesignTime_Catalogue_Database: Get, Delete Or allCreate ControlLoops
    note over CL_Instance_Control,DesignTime_Catalogue_Database: Pulls List of all existingPull, Delete existing Or Create New ControlLoops from DesignTime Cataloguein Database
    
    alt successful case
    
        DesignTime_Catalogue_Database -> CL_Instance_Control : Return List of ControlLoops
    , able to Delete, Create noteControlLoop overin DesignTime_Catalogue_Database: List of existing ControlLoops
        CL_Instance_Control -> CLAMP: ResultReturn Success
    
    else failure case
    
        CL_Instance_Control <- DesignTime_Catalogue_Database: Return either Empty List for Get ControlLoops Or Failure Status for Delete, Create Request
        note over DesignTime_Catalogue_Database: No ControlLoops exist Or Failed in DesignTimeDeleting, CatalogueCreating DatabaseControlLoops
        CL_Instance_Control -> CLAMP : Return Empty ListFailure
    
    end
    @enduml



3.2: Instantiation

...

PlantUML Macro
titleInstantiation
@startuml

actor CLAMP
control CL_Instance_Control
participant DatabaseDmaaP
note over Database: It can be DesiginTime Or RuntTime Catalogue Database


collections Participants

CLAMP -> CL_Instance_Control : Rest API Request (JSON/Yaml)Instantiate CL
CL_Instance_Control -> DmaaP Database: Get,INSTANTIATE Delete Or Create ControlLoopsEvent (JSON/Yaml)
note over CL_Instance_Control,Database: Pull, Delete existing Or Create New ControlLoops in Database 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  Database -> CL_Instance_Control : ReturnINSTANTIATE List of ControlLoops, able to Delete, Create ControlLoop in Database
    ACK (JSON/Yaml)
note over DmaaP : One per Participant
CL_Instance_Control -> CLAMP : ReturnInstantiation SuccessSuccessful

else failure case

... timeout INSTANTIATE ACK not received ...
CL_Instance_Control <-> DmaaP Database: ReturnTEARDOWN either Empty List for Get ControlLoops Or Failure Status for Delete, Create Request
    note over Database: No ControlLoops exist Or Failed in Deleting, Creating ControlLoops
    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 : ReturnInstantiation FailureFailed

end
@enduml


3.2.3: Instantiation DMaaP API

...