/** * This method is the completion handler for the setMetadataTask. * * @param currentState Supplies the current state object. * @param task Supplies the task object. */ private void processSetMetadataTask(final State currentState, final Task task) { switch (task.getState().toUpperCase()) { case "QUEUED": case "STARTED": scheduleSetMetadataTaskCall(this, currentState, task.getId()); break; case "ERROR": throw new RuntimeException(ApiUtils.getErrors(task)); case "COMPLETED": TaskUtils.sendSelfPatch(this, buildPatch(TaskState.TaskStage.FINISHED, (Throwable) null)); break; default: throw new RuntimeException("Unknown task state: " + task.getState()); } }