Versions Compared

Key

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

...

3.1.2: Deployment Sequence Diagrams

This section defines Deployment/CRUD Operations that can be performed on ControlLoop.

A Client in this case CLAMP can perform CRUD operations or can deploy ControlLoops from DesignTime to RunTime Catalogue Database.

DesignTime/RunTime Catalogue Database stores ControlLoop definitions, CRUD operations on database supported by REST Endpoints like Get, Delete, Create allowing selection of a particular ControlLoop to be addressed, below sequence diag will help you understand flow how a client(Clamp) application can initiate Rest call for performing different operations on Database.

CL_Instance_Control Service is Gateway for interacting to different database DesignTime/RunTime and should be responsible for responding success or failure status on different operations.


  1. GET, DELETE, CREATE API ControlLoop Sequence Diagram

    PlantUML Macro
    titleGET, DELETE, CREATE API Sequence Diag
    @startuml
    
    actor CLAMP
    control CL_Instance_Control
    database Database
    note over Database: It can be DesiginTime Or RuntTime Catalogue Database
    
    
    CLAMP -> CL_Instance_Control: Rest API Request (JSON/Yaml)
    CL_Instance_Control -> Database: Get, Delete Or Create ControlLoops
    activate CL_Instance_Control
    note over CL_Instance_Control,Database: Pull, Delete existing Or Create New ControlLoops in Database
    
    alt successful case
    
        Database -> CL_Instance_Control : Return List of ControlLoops Or able to Delete, Create ControlLoop in Database
        CL_Instance_Control -> CLAMP: Return Success
    
    else failure case
    
        CL_Instance_Control <- Database: Return either Empty List for Get ControlLoops Or Failure Status for Delete, Create Request
    	deactivate CL_Instance_Control
        note over Database: No ControlLoops exist Or Failed in Deleting, Creating ControlLoops
        CL_Instance_Control -> CLAMP : Return Failure
    
    end
    @enduml



  2. Deploy API ControlLoop Sequence Diagram 

    PlantUML Macro
    titleDeploy API ControlLoop Sequence Diag
    @startuml
    
    actor CLAMP
    control CL_Instance_Control
    database DesignTime_Catalogue_Database
    database RunTime_Catalogue_Database
    
    CLAMP -> CL_Instance_Control: Rest Deploy API Request (JSON/Yaml)
    CL_Instance_Control -> DesignTime_Catalogue_Database: Fetch ControlLoop from DesignTime Catalogue Database
    activate CL_Instance_Control
    note over CL_Instance_Control,DesignTime_Catalogue_Database: Fetch existing ControlLoops from DesignTime Catalogue Database
    
    alt successful case
        DesignTime_Catalogue_Database -> CL_Instance_Control : Return List of existing ControlLoops from DesignTime Catalogue Database
        note over DesignTime_Catalogue_Database, RunTime_Catalogue_Database: Populate RunTime Catalogue with ControlLoops existing in DesignTime Catalogue Database
        CL_Instance_Control -> RunTime_Catalogue_Database: Push ControlLoop to RunTime Catalogue Database
        CL_Instance_Control -> CLAMP: Return Success
    
    else failure case
    
        CL_Instance_Control <- DesignTime_Catalogue_Database: Return Empty ControlLoop List, No ControlLoop exist in DesignTime Catalogue
    	deactivate CL_Instance_Control
        note over CL_Instance_Control, DesignTime_Catalogue_Database: DesignTime Catalogue Database is Empty, cannot deploy ControLoop in RunTime Catalogue Database 
        CL_Instance_Control -> CLAMP : Return Failure
    
    end
    @enduml


...