in src/main/java/com/microsoft/azure/datalake/store/Core.java [511:553]
public static ContentSummary getContentSummary(String path,
ADLStoreClient client,
RequestOptions opts,
OperationResponse resp) {
HttpTransport.makeCall(client, Operation.GETCONTENTSUMMARY, path, null, null, 0, 0, opts, resp);
if (!resp.successful) return null;
try {
long length=0;
long directoryCount=0;
long fileCount=0;
long spaceConsumed=0;
JsonFactory jf = new JsonFactory();
JsonParser jp = jf.createParser(resp.responseStream);
String fieldName, fieldValue;
jp.nextToken();
while (jp.hasCurrentToken()) {
if (jp.getCurrentToken() == JsonToken.FIELD_NAME) {
fieldName = jp.getCurrentName();
jp.nextToken();
fieldValue = jp.getText();
if (fieldName.equals("length")) length = Long.parseLong(fieldValue);
if (fieldName.equals("directoryCount")) directoryCount = Long.parseLong(fieldValue);
if (fieldName.equals("fileCount")) fileCount = Long.parseLong(fieldValue);
if (fieldName.equals("spaceConsumed")) spaceConsumed = Long.parseLong(fieldValue);
}
jp.nextToken();
}
jp.close();
return new ContentSummary(length, directoryCount, fileCount, spaceConsumed);
} catch (IOException ex) {
resp.successful = false;
resp.message = "Unexpected error happened reading response stream or parsing JSon from getContentSummary()";
return null;
} finally {
try {
resp.responseStream.close();
} catch (IOException ex) {
//swallow since it is only the closing of the stream
}
}
}