@Override protected boolean validateTransition(Operation patch, ResourceEnumerationTaskState currentTask, ResourceEnumerationTaskState patchBody) { boolean ok = super.validateTransition(patch, currentTask, patchBody); if (ok) { if (currentTask.taskInfo.stage == TaskStage.STARTED && patchBody.taskInfo.stage == TaskStage.STARTED) { patch.fail(new IllegalArgumentException("Cannot start task again")); return false; } } return ok; }
@Override protected boolean validateTransition(Operation patch, ResourceEnumerationTaskState currentTask, ResourceEnumerationTaskState patchBody) { boolean ok = super.validateTransition(patch, currentTask, patchBody); if (ok) { if (currentTask.taskInfo.stage == TaskStage.STARTED && patchBody.taskInfo.stage == TaskStage.STARTED) { patch.fail(new IllegalArgumentException("Cannot start task again")); return false; } } return ok; }
/** * Validate that the PATCH we got requests reasonable changes to our state * * @see TaskService#validateTransition(Operation, TaskServiceState, TaskServiceState) */ @Override protected boolean validateTransition(Operation patch, NodeGroupMigrationState currentTask, NodeGroupMigrationState patchBody) { super.validateTransition(patch, currentTask, patchBody); if (patchBody.taskInfo.stage == TaskState.TaskStage.STARTED && patchBody.subStage == null) { patch.fail(new IllegalArgumentException("Missing substage")); return false; } return true; }
/** * Customize the validation transition logic that's part of {@code PATCH} request. */ @Override protected boolean validateTransition( Operation patchOp, ImageEnumerationTaskState currentState, ImageEnumerationTaskState patchState) { boolean ok = super.validateTransition(patchOp, currentState, patchState); if (ok) { if (currentState.taskInfo.stage == TaskStage.STARTED && patchState.taskInfo.stage == TaskStage.STARTED) { patchOp.fail(new IllegalArgumentException("Cannot start task again")); return false; } } return ok; }
/** * Customize the validation transition logic that's part of {@code PATCH} request. */ @Override protected boolean validateTransition( Operation patchOp, ImageEnumerationTaskState currentState, ImageEnumerationTaskState patchState) { boolean ok = super.validateTransition(patchOp, currentState, patchState); if (ok) { if (currentState.taskInfo.stage == TaskStage.STARTED && patchState.taskInfo.stage == TaskStage.STARTED) { patchOp.fail(new IllegalArgumentException("Cannot start task again")); return false; } } return ok; }
/** * Validate that the PATCH we got requests reasonable changes to our state. */ @Override protected boolean validateTransition( Operation patch, SynchronizationTaskService.State currentTask, SynchronizationTaskService.State patchBody) { boolean validTransition = super.validateTransition(patch, currentTask, patchBody); if (!validTransition) { return false; } if (!TaskState.isInProgress(currentTask.taskInfo) && !TaskState.isInProgress(patchBody.taskInfo)) { patch.fail(new IllegalArgumentException("Task stage cannot transitioned to same stopped state")); return false; } return true; }
@Override public boolean validateTransition(Operation patchOp, DemoTaskState currentState, DemoTaskState patchBody) { if (!super.validateTransition(patchOp, currentState, patchBody)) { return false; } if (patchBody.taskInfo.stage == TaskState.TaskStage.STARTED) { // A sub-stage must be specified when in STARTED stage if (patchBody.subStage == null) { patchOp.fail(new IllegalArgumentException("subStage is required")); return false; } // A patch cannot transition the task to an earlier sub-stage if (currentState.taskInfo.stage == TaskState.TaskStage.STARTED && patchBody.subStage.ordinal() < currentState.subStage.ordinal()) { patchOp.fail(new IllegalArgumentException("Invalid sub-stage")); return false; } } return true; }
/** * Validate that the PATCH we got requests reasonanble changes to our state */ @Override protected boolean validateTransition(Operation patch, ExampleTaskServiceState currentTask, ExampleTaskServiceState patchBody) { super.validateTransition(patch, currentTask, patchBody); if (patchBody.taskInfo.stage == TaskStage.STARTED && patchBody.subStage == null) { patch.fail(new IllegalArgumentException("Missing substage")); return false; } if (currentTask.taskInfo != null && currentTask.taskInfo.stage != null) { if (currentTask.taskInfo.stage == TaskStage.STARTED && patchBody.taskInfo.stage == TaskStage.STARTED) { if (currentTask.subStage.ordinal() > patchBody.subStage.ordinal()) { patch.fail(new IllegalArgumentException("Task substage cannot move backwards")); return false; } } } return true; }