Существует ли функция dequeue для vert.x AMQP для очистки сообщения? - PullRequest
0 голосов
/ 17 апреля 2019

Из AmqpReceiver я могу распечатать сообщение очереди, но как удалить из очереди или удалить сообщение из очереди?

amqpClient.createReceiver("my-queue",
        done -> {
            if (done.failed()) {
                done.cause().printStackTrace();
                System.out.println("Unable to create receiver");
            } else {
                final AmqpReceiver receiver = done.result();
                receiver.address();
                receiver
                        .exceptionHandler(t -> {
                            t.printStackTrace();
                        })
                        .handler(msg -> {
                            System.out.println("Message: " + msg.bodyAsJsonObject().toString());
                        });

                receiver.connection().close(ar -> {
                });
            }
        }
);

1 Ответ

0 голосов
/ 17 апреля 2019

По умолчанию получатель будет принимать и обрабатывать сообщение, поэтому вам (как указано в документах ) не нужно ничего делать, если вы не изменили конфигурацию так, чтобы она не принять и согласиться на вас. Если вы желаете изменить свое решение или хотите контролировать расчеты, вы можете сделать это, вызвав методы в доставке, которую вы получили.

Есть несколько более подробных объяснений в коде примера vertx-протона здесь .

...