in src/main/java/com/microsoft/azure/datalake/store/Core.java [423:464]
public static boolean mkdirs(String path,
String octalPermission,
ADLStoreClient client,
RequestOptions opts,
OperationResponse resp) {
QueryParams qp = new QueryParams();
if (octalPermission != null && !octalPermission.equals("")) {
if (isValidOctal(octalPermission)) {
qp.add("permission", octalPermission);
} else {
resp.successful = false;
resp.message = "Invalid directory permissions specified: " + octalPermission;
return false;
}
}
HttpTransport.makeCall(client, Operation.MKDIRS, path, qp, null, 0, 0, opts, resp);
if (!resp.successful) return false;
boolean returnValue = true;
try {
JsonFactory jf = new JsonFactory();
JsonParser jp = jf.createParser(resp.responseStream);
jp.nextToken(); // START_OBJECT - {
jp.nextToken(); // FIELD_NAME - "boolean":
jp.nextToken(); // boolean value
returnValue = jp.getValueAsBoolean();
jp.nextToken(); // END_OBJECT - } for boolean
jp.close();
} catch (IOException ex) {
resp.successful = false;
resp.message = "Unexpected error happened reading response stream or parsing JSon from mkdirs()";
} finally {
try {
resp.responseStream.close();
} catch (IOException ex) {
//swallow since it is only the closing of the stream
}
}
return returnValue;
}