@Override public Mono<QueryResponseMessage<I>> initialResult() { return MonoWrapper.<QueryResponseMessage<I>>create(monoSinkWrapper -> query(query) .thenAccept(monoSinkWrapper::success) .exceptionally(t -> { monoSinkWrapper.error(t); return null; })).getMono(); }
@Override public <R, Q> CompletableFuture<R> query(String queryName, Q query, ResponseType<R> responseType) { CompletableFuture<QueryResponseMessage<R>> queryResponse = queryBus .query(processInterceptors(new GenericQueryMessage<>(query, queryName, responseType))); CompletableFuture<R> result = new CompletableFuture<>(); queryResponse.exceptionally(cause -> asResponseMessage(responseType.responseMessagePayloadType(), cause)) .thenAccept(queryResponseMessage -> { try { if (queryResponseMessage.isExceptional()) { result.completeExceptionally(queryResponseMessage.exceptionResult()); } else { result.complete(queryResponseMessage.getPayload()); } } catch (Exception e) { result.completeExceptionally(e); } }); return result; }
QueryResponseMessage<Object> response = localSegment.query(serializer.deserializeRequest(query)) .get(); outboundStreamObserver.onNext(
@Override public <R, Q> CompletableFuture<R> query(String queryName, Q query, ResponseType<R> responseType) { return queryBus.query(processInterceptors(new GenericQueryMessage<>(query, queryName, responseType))) .thenApply(QueryResponseMessage::getPayload); }
@Override public Mono<QueryResponseMessage<I>> initialResult() { return MonoWrapper.<QueryResponseMessage<I>>create(monoSinkWrapper -> query(query) .thenAccept(monoSinkWrapper::success) .exceptionally(t -> { monoSinkWrapper.error(t); return null; })).getMono(); }
@Override public Mono<QueryResponseMessage<I>> initialResult() { return MonoWrapper.<QueryResponseMessage<I>>create(monoSinkWrapper -> query(query) .thenAccept(monoSinkWrapper::success) .exceptionally(t -> { monoSinkWrapper.error(t); return null; })).getMono(); }
@Override public <R, Q> CompletableFuture<R> query(String queryName, Q query, ResponseType<R> responseType) { CompletableFuture<QueryResponseMessage<R>> queryResponse = queryBus .query(processInterceptors(new GenericQueryMessage<>(query, queryName, responseType))); CompletableFuture<R> result = new CompletableFuture<>(); queryResponse.exceptionally(cause -> asResponseMessage(responseType.responseMessagePayloadType(), cause)) .thenAccept(queryResponseMessage -> { if (queryResponseMessage.isExceptional()) { result.completeExceptionally(queryResponseMessage.exceptionResult()); } else { result.complete(queryResponseMessage.getPayload()); } }); return result; }
QueryResponseMessage<Object> response = localSegment.query(serializer.deserializeRequest(query)) .get(); outboundStreamObserver.onNext(