...
PlantUML Macro |
---|
@startuml
(*) --> "Process Update Message"
if "All Control Loop Elements with my Participant ID processed" then
--> [yes] --> "Send Update Ack Message"
--> (*)
else
[no] --> "Process next Control Loop Element with my ID"
[no] if "New Control Loop Element" then
--> [yes] "Create Control Loop Element"
--> "Set Control Loop Element to state UNINITIALISED"
--> "Order Initiation of Control Loop Element"
--> "Pass Parameters to Control Loop Element"
--> "Wait for Initiation to complete"
if "Control Loop Element Initiation" then
--> [success] "Record Success for Update Ack message"
--> "Process Update Message"
else
--> [fail] "Delete Control Loop Element"
--> "Record Error for Update Ack message"
--> "Process Update Message"
endif
else
--> [no] "Check Control Loop Element State"
endif
if "RUNNING and Control Loop Version change != patch" then
--> [true] "Record Error for Update Ack message"
--> "Process Update Message"
else
[false] if "PASSIVE and Control Loop Version change == major" then
--> [true] "Record Error for Update Ack message"
--> "Process Update Message"
else
--> [false] "Pass Changed Parameters to Control Loop Element"
--> "Wait for reconfiguration to complete"
if "Control Loop Element Reconfiguration" then
--> [success] "Record Success for Update Ack message"
--> "Process Update Message"
else
--> "Roll back reconfiguration"
--> "Record Error for Update Ack message"
--> "Process Update Message"
endif
endif
endif
@enduml
|
...