Search in sources :

Example 1 with ConsistencyCheckRequest

use of org.xbib.elasticsearch.action.admin.cluster.state.ConsistencyCheckRequest in project elasticsearch-skywalker by jprante.

the class RestConsistencyCheckAction method handleRequest.

@Override
public void handleRequest(final RestRequest request, final RestChannel channel, final Client client) throws Exception {
    ConsistencyCheckRequest r = new ConsistencyCheckRequest();
    client.admin().cluster().execute(ConsistencyCheckAction.INSTANCE, r, new RestResponseListener<ConsistencyCheckResponse>(channel) {

        @Override
        public RestResponse buildResponse(ConsistencyCheckResponse response) throws Exception {
            XContentBuilder builder = XContentFactory.jsonBuilder();
            builder.startObject();
            builder.field("ok", true);
            builder.startObject("state");
            response.getState().toXContent(builder, ToXContent.EMPTY_PARAMS);
            builder.startArray("files");
            for (File file : response.getFiles()) {
                Instant instant = new Instant(file.lastModified());
                builder.startObject().field("path", file.getAbsolutePath()).field("lastmodified", instant.toDateTime().toString()).field("size", new SizeValue(file.length(), SizeUnit.SINGLE).toString()).field("totalspace", new SizeValue(file.getTotalSpace(), SizeUnit.SINGLE).toString()).field("usablespace", new SizeValue(file.getUsableSpace(), SizeUnit.SINGLE).toString()).field("freespace", new SizeValue(file.getFreeSpace(), SizeUnit.SINGLE).toString()).endObject();
            }
            builder.endArray();
            builder.endObject();
            return new BytesRestResponse(OK, builder);
        }
    });
}
Also used : ConsistencyCheckRequest(org.xbib.elasticsearch.action.admin.cluster.state.ConsistencyCheckRequest) SizeValue(org.elasticsearch.common.unit.SizeValue) Instant(org.elasticsearch.common.joda.time.Instant) File(java.io.File) XContentBuilder(org.elasticsearch.common.xcontent.XContentBuilder) ConsistencyCheckResponse(org.xbib.elasticsearch.action.admin.cluster.state.ConsistencyCheckResponse)

Aggregations

File (java.io.File)1 Instant (org.elasticsearch.common.joda.time.Instant)1 SizeValue (org.elasticsearch.common.unit.SizeValue)1 XContentBuilder (org.elasticsearch.common.xcontent.XContentBuilder)1 ConsistencyCheckRequest (org.xbib.elasticsearch.action.admin.cluster.state.ConsistencyCheckRequest)1 ConsistencyCheckResponse (org.xbib.elasticsearch.action.admin.cluster.state.ConsistencyCheckResponse)1