public void registerForConfirmation()

in src/main/java/org/openvasp/client/service/impl/ConfirmationServiceImpl.java [56:80]


    public void registerForConfirmation(@NonNull final VaspMessage message) {
        if (!isConfirmationEnabled()) {
            return;
        }

        var messageId = message.getHeader().getMessageId();
        var confirmationTopic = message.getConfirmationTopic();

        var listenerId = whisperService.addTopicListener(
                confirmationTopic,
                EncryptionType.ASSYMETRIC,
                getConfirmationPrivateKey(),
                whisperMessage -> {
                    var entry = waitingForConfirmation.get(messageId);
                    if (entry != null) {
                        waitingForConfirmation.remove(messageId);
                        whisperService.removeTopicListener(confirmationTopic, entry._1);
                        if (confirmationHandler != null) {
                            confirmationHandler.accept(message);
                        }
                    }
                });

        waitingForConfirmation.put(messageId, Tuple2.of(listenerId, message));
    }