Update documentation for restart ACM
[policy/parent.git] / docs / clamp / acm / design-impl / participants / participant-intermediary.rst
old mode 100644 (file)
new mode 100755 (executable)
index 6ebc76f..36b1319
@@ -26,6 +26,8 @@ Inbound messages to participants
 - AUTOMATION_COMPOSITION_DEPLOY: a message received from clamp-acm runtime server for a clamp-acm deploy with clamp-acm instances
 - PARTICIPANT_PRIME: a message received from clamp-acm runtime server for a participant update with tosca definitions of clamp-acm
 - PARTICIPANT_STATUS_REQ: A status request received from clamp-acm runtime server to send an immediate ParticipantStatus from all participants
+- PROPERTIES_UPDATE: a message received from clamp-acm runtime server for updating the Ac instance property values
+- PARTICIPANT_RESTART: a message received from clamp-acm runtime server with tosca definitions and the Ac instances to handle restarting
 
 Outbound messages
 -----------------
@@ -42,12 +44,14 @@ Design of a PARTICIPANT_REGISTER message
 - in AC-runtime ParticipantRegisterListener collects the message from Message Broker
 - if participant is not present in DB, it saves participant reference with status ON_LINE to DB
 - It triggers the execution to send a PARTICIPANT_REGISTER_ACK message to the participant registered
+- if participant is present in DB and there are AC Definitions related to the Participant, 
+  it triggers the execution to send a PARTICIPANT_RESTART message to the participant restarted 
 
 Design of a PARTICIPANT_DEREGISTER message
 ------------------------------------------
 - A participant is going to close and undeploys all AC-elements and send a PARTICIPANT_DEREGISTER message
 - in AC-runtime, ParticipantDeregisterListener collects the message from Message Broker
-- if participant has AC-elements instance, it updates with UNDEPLOYED deployStatus
+- It saves participant reference with status OFF_LINE to DB
 - It triggers the execution to send a PARTICIPANT_DEREGISTER_ACK message to the participant deregistered
 - Participant is not monitored.
 
@@ -64,31 +68,47 @@ DePrime of an Automation Composition Definition Type
 - the message is built by ParticipantPrimePublisher with an empty list of ParticipantDefinition
 - Participant-intermediary will receive a PARTICIPANT_PRIME message and deletes the Tosca Service Template data on ParticipantHandler
 
-Design of "issues automation composition commands to automation compositions" - case UNDEPLOY to DEPLOY
--------------------------------------------------------------------------------------------------------
+Design of "issues automation composition commands to automation compositions" - case UNDEPLOYED to DEPLOYED
+-----------------------------------------------------------------------------------------------------------
 - AUTOMATION_COMPOSITION_DEPLOY message with instantiation details and DEPLOY order state is sent to participants
 - Participant-intermediary validates the current deployState change
 - Participant-intermediary will receive AUTOMATION_COMPOSITION_DEPLOY message and sends the details of AutomationCompositionElements to participants
 - Each participant performs its designated job of deployment by interacting with respective frameworks
 
-Design of "issues automation composition commands to automation compositions" - case DEPLOY to UNDEPLOY
--------------------------------------------------------------------------------------------------------
+Design of "issues automation composition commands to automation compositions" - case DEPLOYED to UNDEPLOYED
+-----------------------------------------------------------------------------------------------------------
 - AUTOMATION_COMPOSITION_STATE_CHANGE message with instantiation details and UNDEPLOY order state is sent to participants
 - Participant-intermediary validates the current deployState change
 - Participant-intermediary will receive AUTOMATION_COMPOSITION_STATE_CHANGE message and sends AC-element details to participants
 - Each participant performs its designated job of undeployment by interacting with respective frameworks
 
-Design of "issues automation composition commands to automation compositions" - case LOCK to UNLOCK
----------------------------------------------------------------------------------------------------
+
+Update of an Automation Composition Instance
+--------------------------------------------
+- AC-runtime updates the instance properties of the deployed Ac instances
+- it triggers the execution to send a broadcast PROPERTIES_UPDATE message
+- the message is built by AcElementPropertiesPublisher using the REST request payload (to fill the list of elements with the updated property values)
+- Participant-intermediary will receive a PROPERTIES_UPDATE message and stores the updated values of the elements on ParticipantHandler
+
+Design of "issues automation composition commands to automation compositions" - case LOCKED to UNLOCKED
+-------------------------------------------------------------------------------------------------------
 - AUTOMATION_COMPOSITION_STATE_CHANGE message with instantiation details and UNLOCK order state is sent to participants
 - Participant-intermediary validates the current lockState change
 - Participant-intermediary will receive AUTOMATION_COMPOSITION_STATE_CHANGE message
 
-Design of "issues automation composition commands to automation compositions" - case UNLOCK to LOCK
----------------------------------------------------------------------------------------------------
+Design of "issues automation composition commands to automation compositions" - case UNLOCKED to LOCKED
+-------------------------------------------------------------------------------------------------------
 - AUTOMATION_COMPOSITION_STATE_CHANGE message with instantiation details and LOCK order state is sent to participants
 - Participant-intermediary validates the current lockState change
 
+Design of Delete - case UNDEPLOYED to DELETED
+---------------------------------------------
+- AUTOMATION_COMPOSITION_STATE_CHANGE message with instantiation details and DELETE order state is sent to participants
+- Participant-intermediary validates the current deployState change
+- Participant-intermediary will receive AUTOMATION_COMPOSITION_STATE_CHANGE message and sends AC-element details to participants
+- Each participant performs its designated job of removing instantiation data if not done in undeployment
+- Participant-intermediary will remove instantiation data
+
 Design of a PARTICIPANT_STATUS_REQ message
 ------------------------------------------
 - AC-runtime triggers the execution to send a broadcast PARTICIPANT_STATUS_REQ message or to send it to a specific participant