ProtonHelper.accepted(delivery, true); } else { ProtonHelper.rejected(delivery, true);
private void createReceiver(Vertx vertx, String address, CompletableFuture<Void> promise, int retries) { receiver = connection.createReceiver(address); Source source = new Source(); source.setDynamic(true); receiver.setSource(source); receiver.openHandler(h -> { if (h.succeeded()) { context = vertx.getOrCreateContext(); replyTo = receiver.getRemoteSource().getAddress(); promise.complete(null); } else { if (retries > maxRetries) { promise.completeExceptionally(h.cause()); } else { log.info("Error creating receiver, retries = {}", retries); vertx.setTimer(1000, id -> createReceiver(vertx, address, promise, retries + 1)); } } }); receiver.handler(((protonDelivery, message) -> { try { replies.put(message); ProtonHelper.accepted(protonDelivery, true); } catch (Exception e) { ProtonHelper.rejected(protonDelivery, true); } })); receiver.open(); }
LOG.debug("discarding unexpected response [reply-to: {}, correlation ID: {}]", replyToAddress, message.getCorrelationId()); ProtonHelper.rejected(delivery, true); } else { final R response = getRequestResponseResult(message);