use of org.xbib.elasticsearch.action.admin.cluster.state.ConsistencyCheckResponse 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);
}
});
}
Aggregations