History.newItem(key);
}
- public void deleteFolder(final Folder folder) {
+ public void deleteFolder(final Folder folder, final Command callback) {
String path = getApiPath() + folder.getOwner() + "/" + folder.getContainer() + "?format=json&delimiter=/&prefix=" + URL.encodeQueryString(folder.getPrefix()) + "&t=" + System.currentTimeMillis();
RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, path);
builder.setHeader("X-Auth-Token", getToken());
JSONArray array = json.isArray();
int i = 0;
if (array != null) {
- deleteObject(folder, i, array);
+ deleteObject(folder, i, array, callback);
}
}
}
}
}
- void deleteObject(final Folder folder, final int i, final JSONArray array) {
+ void deleteObject(final Folder folder, final int i, final JSONArray array, final Command callback) {
if (i < array.size()) {
JSONObject o = array.get(i).isObject();
if (o != null && !o.containsKey("subdir")) {
DeleteRequest delete = new DeleteRequest(getApiPath(), folder.getOwner(), URL.encode(path)) {
@Override
public void onSuccess(Resource result) {
- deleteObject(folder, i + 1, array);
+ deleteObject(folder, i + 1, array, callback);
}
@Override
array.set(l++, array2.get(j));
}
}
- deleteObject(folder, i + 1, array);
+ deleteObject(folder, i + 1, array, callback);
}
}
@Override
public void execute() {
updateStatistics();
+ if (callback != null)
+ callback.execute();
}
});
}