Fix registration flow 11/138311/1
authorFrancescoFioraEst <francesco.fiora@est.tech>
Fri, 21 Jun 2024 15:19:38 +0000 (16:19 +0100)
committerFrancesco Fiora <francesco.fiora@est.tech>
Mon, 24 Jun 2024 11:51:54 +0000 (11:51 +0000)
* set replicaId in RegisterAck message
* ParticipantRegisterAckPublisher
  and ParticipantRegisterAckListener should be used with sync topic

Issue-ID: POLICY-5060
Change-Id: I1292d636ea79055e902ec3d68108a28fbd80afdc
Signed-off-by: FrancescoFioraEst <francesco.fiora@est.tech>
participant/participant-intermediary/src/main/java/org/onap/policy/clamp/acm/participant/intermediary/comm/ParticipantRegisterAckListener.java
runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/supervision/SupervisionParticipantHandler.java
runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/supervision/comm/ParticipantRegisterAckPublisher.java
runtime-acm/src/test/java/org/onap/policy/clamp/acm/runtime/supervision/SupervisionParticipantHandlerTest.java
runtime-acm/src/test/java/org/onap/policy/clamp/acm/runtime/supervision/comm/SupervisionMessagesTest.java

index 4c8c581..3c93a35 100644 (file)
@@ -81,7 +81,7 @@ public class SupervisionParticipantHandler {
                 participantRegisterMsg.getParticipantSupportedElementType(), true);
 
         participantRegisterAckPublisher.send(participantRegisterMsg.getMessageId(),
-                participantRegisterMsg.getParticipantId());
+                participantRegisterMsg.getParticipantId(), participantRegisterMsg.getReplicaId());
     }
 
     /**
index d021c57..5e07308 100644 (file)
@@ -36,14 +36,21 @@ public class ParticipantRegisterAckPublisher extends AbstractParticipantAckPubli
      *
      * @param responseTo the original request id in the request.
      * @param participantId the participant Id
+     * @param replicaId the participant replica Id
      */
     @Timed(value = "publisher.participant_register_ack", description = "PARTICIPANT_REGISTER_ACK messages published")
-    public void send(UUID responseTo, UUID participantId) {
+    public void send(UUID responseTo, UUID participantId, UUID replicaId) {
         var message = new ParticipantRegisterAck();
         message.setParticipantId(participantId);
+        message.setReplicaId(replicaId);
         message.setResponseTo(responseTo);
         message.setMessage("Participant Register Ack");
         message.setResult(true);
         super.send(message);
     }
+
+    @Override
+    public boolean isDefaultTopic() {
+        return false;
+    }
 }
index bebaa33..932529d 100644 (file)
@@ -104,7 +104,7 @@ class SupervisionParticipantHandlerTest {
 
         verify(participantProvider).saveParticipant(any());
         verify(participantRegisterAckPublisher).send(participantRegisterMessage.getMessageId(),
-                CommonTestData.getParticipantId());
+                CommonTestData.getParticipantId(), null);
     }
 
     @Test
@@ -158,7 +158,8 @@ class SupervisionParticipantHandlerTest {
                 CommonTestData.getTestParamaterGroup());
         handler.handleParticipantMessage(participantRegisterMessage);
 
-        verify(participantRegisterAckPublisher).send(participantRegisterMessage.getMessageId(), participantId);
+        verify(participantRegisterAckPublisher)
+                .send(participantRegisterMessage.getMessageId(), participantId, participantId);
         verify(acDefinitionProvider).updateAcDefinition(any(AutomationCompositionDefinition.class),
                 eq(CommonTestData.TOSCA_COMP_NAME));
         verify(participantRestartPublisher).send(any(), any(AutomationCompositionDefinition.class), any());
@@ -216,7 +217,8 @@ class SupervisionParticipantHandlerTest {
                 CommonTestData.getTestParamaterGroup());
         handler.handleParticipantMessage(participantRegisterMessage);
 
-        verify(participantRegisterAckPublisher).send(participantRegisterMessage.getMessageId(), participantId);
+        verify(participantRegisterAckPublisher)
+                .send(participantRegisterMessage.getMessageId(), participantId, replicaId);
         verify(acDefinitionProvider, times(0)).updateAcDefinition(any(AutomationCompositionDefinition.class),
                 eq(CommonTestData.TOSCA_COMP_NAME));
         verify(participantSyncPublisher)
index cab5adf..7cf0bf8 100644 (file)
@@ -200,7 +200,7 @@ class SupervisionMessagesTest {
         var publisher = new ParticipantRegisterAckPublisher();
         var topicSink = mock(TopicSink.class);
         publisher.active(topicSink);
-        publisher.send(UUID.randomUUID(), CommonTestData.getParticipantId());
+        publisher.send(UUID.randomUUID(), CommonTestData.getParticipantId(), CommonTestData.getReplicaId());
         verify(topicSink).send(anyString());
     }