protected <T> void processConsulResponse(Message message, ConsulResponse<T> response) throws Exception { message.setHeader(ConsulConstants.CONSUL_INDEX, response.getIndex()); message.setHeader(ConsulConstants.CONSUL_LAST_CONTACT, response.getLastContact()); message.setHeader(ConsulConstants.CONSUL_KNOWN_LEADER, response.isKnownLeader()); setBodyAndResult(message, response.getResponse()); }
@Override public void onComplete(ConsulResponse<List<V>> consulResponse) { if (consulResponse.isKnownLeader()) { if (!isRunning()) { return; isKnownLeader.set(consulResponse.isKnownLeader());
@Override public void onComplete(ConsulResponse<List<Value>> consulResponse) { callback.onComplete( new ConsulResponse<>(getSingleValue(consulResponse.getResponse()), consulResponse.getLastContact(), consulResponse.isKnownLeader(), consulResponse.getIndex())); }
/** * Returns a {@link ConsulResponse<Value>} for a specific key from the kv store. * Contains the consul response headers along with the configuration value. * * GET /v1/kv/{key} * * @param key The key to retrieve. * @param queryOptions The query options. * @return An {@link Optional} containing the ConsulResponse or {@link Optional#empty()} */ public Optional<ConsulResponse<Value>> getConsulResponseWithValue(String key, QueryOptions queryOptions) { try { ConsulResponse<List<Value>> consulResponse = http.extractConsulResponse(api.getValue(trimLeadingSlash(key), queryOptions.toQuery()), NOT_FOUND_404); Optional<Value> consulValue = getSingleValue(consulResponse.getResponse()); if (consulValue.isPresent()) { ConsulResponse<Value> result = new ConsulResponse<>(consulValue.get(), consulResponse.getLastContact(), consulResponse.isKnownLeader(), consulResponse.getIndex()); return Optional.of(result); } } catch (ConsulException ignored) { if (ignored.getCode() != NOT_FOUND_404) { throw ignored; } } return Optional.empty(); }