Refine search
private void respondSuccess(RestRequest request, RestChannel channel, RestStatus status) { try { XContentBuilder builder = RestXContentBuilder.restContentBuilder(request); builder.startObject(); builder.field("success", true); builder.endObject(); channel.sendResponse(new BytesRestResponse(status, builder)); } catch (IOException e) { errorResponse(request, channel, e); } }
private void respondError(RestRequest request, RestChannel channel, String error, RestStatus status) { try { XContentBuilder builder = RestXContentBuilder.restContentBuilder(request); builder.startObject(); builder.field("success", false); builder.field("error", error); builder.endObject(); channel.sendResponse(new BytesRestResponse(status, builder)); } catch (IOException e) { errorResponse(request, channel, e); } }
(!user.getName().equals(evaluator.kibanaServerUsername())) && !adminDns.isAdmin(user)) { response = new BytesRestResponse(RestStatus.FORBIDDEN,""); } else { builder.startObject(); builder.endObject(); response = new BytesRestResponse(RestStatus.OK, builder); builder.startObject(); builder.field("error", e1.toString()); builder.endObject(); response = new BytesRestResponse(RestStatus.INTERNAL_SERVER_ERROR, builder); } finally { if(builder != null) {
@Override public void accept(RestChannel channel) throws Exception { XContentBuilder builder = channel.newBuilder(); RestStatus restStatus = RestStatus.OK; BytesRestResponse response = null; try { String status = "UP"; String message = null; builder.startObject(); if ("strict".equalsIgnoreCase(mode) && registry.isInitialized() == false) { status = "DOWN"; message = "Not initialized"; restStatus = RestStatus.SERVICE_UNAVAILABLE; } builder.field("message", message); builder.field("mode", mode); builder.field("status", status); builder.endObject(); response = new BytesRestResponse(restStatus, builder); } finally { builder.close(); } channel.sendResponse(response); }
@Override public RestResponse buildResponse(GetIndexResponse getIndexResponse, XContentBuilder builder) throws Exception { GetIndexRequest.Feature[] features = getIndexRequest.features(); String[] indices = getIndexResponse.indices(); builder.startObject(); for (String index : indices) { builder.startObject(index); for (GetIndexRequest.Feature feature : features) { switch (feature) { case ALIASES: writeAliases(getIndexResponse.aliases().get(index), builder, channel.request()); break; case MAPPINGS: writeMappings(getIndexResponse.mappings().get(index), builder, channel.request()); break; case SETTINGS: writeSettings(getIndexResponse.settings().get(index), builder, channel.request()); break; default: throw new IllegalStateException("feature [" + feature + "] is not valid"); } } builder.endObject(); } builder.endObject(); return new BytesRestResponse(RestStatus.OK, builder); } private void writeAliases(List<AliasMetaData> aliases, XContentBuilder builder, ToXContent.Params params) throws IOException {
final TransportAddress remoteAddress = (TransportAddress) threadContext.getTransient(ConfigConstants.SG_REMOTE_ADDRESS); builder.startObject(); builder.field("user_name", user==null?null:user.getName()); builder.field("not_fail_on_forbidden_enabled", evaluator.notFailOnForbiddenEnabled()); builder.field("kibana_server_user", evaluator.kibanaServerUsername()); builder.endObject(); response = new BytesRestResponse(RestStatus.OK, builder); } catch (final Exception e1) { log.error(e1.toString(),e1); builder.startObject(); builder.field("error", e1.toString()); builder.endObject(); response = new BytesRestResponse(RestStatus.INTERNAL_SERVER_ERROR, builder); } finally { if(builder != null) {
final TransportAddress remoteAddress = (TransportAddress) threadContext.getTransient(ConfigConstants.SG_REMOTE_ADDRESS); builder.startObject(); builder.field("user", user==null?null:user.toString()); builder.field("user_name", user==null?null:user.getName()); builder.endObject(); response = new BytesRestResponse(RestStatus.OK, builder); } catch (final Exception e1) { log.error(e1.toString(),e1); builder.startObject(); builder.field("error", e1.toString()); builder.endObject(); response = new BytesRestResponse(RestStatus.INTERNAL_SERVER_ERROR, builder); } finally { if(builder != null) {
@Override public RestResponse buildResponse(T response, XContentBuilder builder) throws Exception { builder.startObject(); response.toXContentGroupedByNode(builder, channel.request(), nodesInCluster.get()); builder.endObject(); return new BytesRestResponse(RestStatus.OK, builder); } };
private static BytesRestResponse buildErrorResponse(XContentBuilder builder, String error, boolean explain) throws IOException { builder.startObject(); builder.field(ValidateQueryResponse.VALID_FIELD, false); if (explain) { builder.field(QueryExplanation.ERROR_FIELD, error); } builder.endObject(); return new BytesRestResponse(OK, builder); } }
@Override public RestResponse buildResponse(T response, XContentBuilder builder) throws Exception { builder.startObject(); response.toXContentGroupedByParents(builder, channel.request()); builder.endObject(); return new BytesRestResponse(RestStatus.OK, builder); } };
static BytesRestResponse createSimpleErrorResponse(RestChannel channel, RestStatus status, String errorMessage) throws IOException { return new BytesRestResponse(status, channel.newErrorBuilder().startObject() .field("error", errorMessage) .field("status", status.getStatus()) .endObject()); }
/** * Handle a requests with no candidate handlers (return a 400 Bad Request * error). */ private void handleBadRequest(RestRequest request, RestChannel channel) throws IOException { try (XContentBuilder builder = channel.newErrorBuilder()) { builder.startObject(); { builder.field("error", "no handler found for uri [" + request.uri() + "] and method [" + request.method() + "]"); } builder.endObject(); channel.sendResponse(new BytesRestResponse(BAD_REQUEST, builder)); } }
public static RestResponse buildXContentBuilder(Table table, RestChannel channel) throws Exception { RestRequest request = channel.request(); XContentBuilder builder = channel.newBuilder(); List<DisplayHeader> displayHeaders = buildDisplayHeaders(table, request); builder.startArray(); List<Integer> rowOrder = getRowOrder(table, request); for (Integer row : rowOrder) { builder.startObject(); for (DisplayHeader header : displayHeaders) { builder.field(header.display, renderValue(request, table.getAsMap().get(header.name).get(row).value)); } builder.endObject(); } builder.endArray(); return new BytesRestResponse(RestStatus.OK, builder); }
/** * Automatically transform the {@link ToXContent}-compatible, nodes-level {@code response} into a a {@link BytesRestResponse}. * <p> * This looks like: * <code> * { * "_nodes" : { ... }, * "cluster_name" : "...", * ... * } * </code> * * @param builder XContent builder. * @param params XContent parameters. * @param response The nodes-level (plural) response. * @return Never {@code null}. * @throws IOException if building the response causes an issue */ public static <NodesResponse extends BaseNodesResponse & ToXContent> BytesRestResponse nodesResponse(final XContentBuilder builder, final Params params, final NodesResponse response) throws IOException { builder.startObject(); RestActions.buildNodesHeader(builder, params, response); builder.field("cluster_name", response.getClusterName().value()); response.toXContent(builder, params); builder.endObject(); return new BytesRestResponse(RestStatus.OK, builder); }
@Override public RestResponse buildResponse(FlushResponse response, XContentBuilder builder) throws Exception { builder.startObject(); buildBroadcastShardsHeader(builder, request, response); builder.endObject(); return new BytesRestResponse(OK, builder); } });
@Override public RestResponse buildResponse(ClearIndicesCacheResponse response, XContentBuilder builder) throws Exception { builder.startObject(); buildBroadcastShardsHeader(builder, request, response); builder.endObject(); return new BytesRestResponse(OK, builder); } });
@Override public RestResponse buildResponse(RefreshResponse response, XContentBuilder builder) throws Exception { builder.startObject(); buildBroadcastShardsHeader(builder, request, response); builder.endObject(); return new BytesRestResponse(OK, builder); } });
@Override public RestResponse buildResponse(GetResponse response, XContentBuilder builder) throws Exception { builder.startObject(); response.toXContent(builder, request); builder.endObject(); if (!response.isExists()) { return new BytesRestResponse(NOT_FOUND, builder); } else { return new BytesRestResponse(OK, builder); } } });
@Override public RestResponse buildResponse(UpgradeStatusResponse response, XContentBuilder builder) throws Exception { builder.startObject(); response.toXContent(builder, request); builder.endObject(); return new BytesRestResponse(OK, builder); } });
@Override public RestResponse buildResponse(ForceMergeResponse response, XContentBuilder builder) throws Exception { builder.startObject(); buildBroadcastShardsHeader(builder, request, response); builder.endObject(); return new BytesRestResponse(OK, builder); } });