int webhdfs_set_replication (webhdfs_t *fs, const char *path, int replication) { webhdfs_req_t req; yajl_val node, v; webhdfs_req_open(&req, fs, path); webhdfs_req_set_args(&req, "op=SETREPLICATION&replication=%d", replication); char *error = NULL; webhdfs_req_exec(&req, WEBHDFS_REQ_PUT, &error); if (error) free(error); node = webhdfs_req_json_response(&req); webhdfs_req_close(&req); if ((v = webhdfs_response_exception(node)) != NULL) { yajl_tree_free(node); return(1); } if ((v = webhdfs_response_boolean(node)) != NULL) { int failure = YAJL_IS_FALSE(v); yajl_tree_free(node); return(failure); } yajl_tree_free(node); return(2); }
int webhdfs_rename (webhdfs_t *fs, const char *oldname, const char *newname) { webhdfs_req_t req; yajl_val node, v; webhdfs_req_open(&req, fs, oldname); webhdfs_req_set_args(&req, "op=RENAME&destination=%s", newname); char *error = NULL; webhdfs_req_exec(&req, WEBHDFS_REQ_PUT, &error); if (error) free(error); node = webhdfs_req_json_response(&req); webhdfs_req_close(&req); if ((v = webhdfs_response_exception(node)) != NULL) { yajl_tree_free(node); return(1); } if ((v = webhdfs_response_boolean(node)) != NULL) { int failure = YAJL_IS_FALSE(v); yajl_tree_free(node); return(failure); } yajl_tree_free(node); return(2); }
static int __webhdfs_delete (webhdfs_t *fs, const char *path, int recursive) { webhdfs_req_t req; yajl_val node, v; webhdfs_req_open(&req, fs, path); webhdfs_req_set_args(&req, "op=DELETE&recursive=%s", recursive ? "true" : "false"); char *error = NULL; webhdfs_req_exec(&req, WEBHDFS_REQ_DELETE, &error); if (error) free(error); node = webhdfs_req_json_response(&req); webhdfs_req_close(&req); if ((v = webhdfs_response_exception(node)) != NULL) { yajl_tree_free(node); return(1); } if ((v = webhdfs_response_boolean(node)) != NULL) { int failure = YAJL_IS_FALSE(v); yajl_tree_free(node); return(failure); } yajl_tree_free(node); return(2); }
int webhdfs_rename_snapshot (webhdfs_t *fs, const char *path, const char *oldname, const char *newname) { webhdfs_req_t req; yajl_val node, v; webhdfs_req_open(&req, fs, path); webhdfs_req_set_args(&req, "op=RENAMESNAPSHOT&oldsnapshotname=%s&snapshotname=%s", oldname, newname); webhdfs_req_exec(&req, WEBHDFS_REQ_PUT); node = webhdfs_req_json_response(&req); webhdfs_req_close(&req); if ((v = webhdfs_response_exception(node)) != NULL) { yajl_tree_free(node); return(1); } if ((v = webhdfs_response_boolean(node)) != NULL) { int failure = YAJL_IS_FALSE(v); yajl_tree_free(node); return(failure); } yajl_tree_free(node); return(2); }
int webhdfs_mkdir (webhdfs_t *fs, const char *path, int permission) { webhdfs_req_t req; yajl_val node, v; webhdfs_req_open(&req, fs, path); webhdfs_req_set_args(&req, "op=MKDIRS&permission=%o", permission); webhdfs_req_exec(&req, WEBHDFS_REQ_PUT); node = webhdfs_req_json_response(&req); webhdfs_req_close(&req); if ((v = webhdfs_response_exception(node)) != NULL) { yajl_tree_free(node); return(1); } if ((v = webhdfs_response_boolean(node)) != NULL) { int failure = YAJL_IS_FALSE(v); yajl_tree_free(node); return(failure); } yajl_tree_free(node); return(2); }