@Override public void verifyCanStart() { readLock.lock(); try { switch (scheduledState.get()) { case DISABLED: throw new IllegalStateException(this.getIdentifier() + " cannot be started because it is disabled"); case RUNNING: throw new IllegalStateException(this.getIdentifier() + " cannot be started because it is already running"); case STOPPED: break; } verifyNoActiveThreads(); final Collection<ValidationResult> validationResults = getValidationErrors(); if (!validationResults.isEmpty()) { throw new IllegalStateException(this.getIdentifier() + " is not in a valid state: " + validationResults.iterator().next().getExplanation()); } } finally { readLock.unlock(); } }
if (!result.isValid()) { validHostPortPairs = false; reason = result.getExplanation();
@Override public void verifyCanStart() { readLock.lock(); try { switch (scheduledState.get()) { case DISABLED: throw new IllegalStateException(this.getIdentifier() + " cannot be started because it is disabled"); case RUNNING: throw new IllegalStateException(this.getIdentifier() + " cannot be started because it is already running"); case STOPPED: break; } verifyNoActiveThreads(); final Collection<ValidationResult> validationResults = getValidationErrors(); if (!validationResults.isEmpty()) { throw new IllegalStateException(this.getIdentifier() + " is not in a valid state: " + validationResults.iterator().next().getExplanation()); } } finally { readLock.unlock(); } }
private static List<ValidationError> transformValidationResults(Collection<ValidationResult> validationResults) { List<ValidationError> validationErrorList = new LinkedList<>(); for (ValidationResult validationResult : validationResults) { if (!validationResult.isValid()) { ValidationError validationError = new ValidationError(); validationError.setSubject(validationResult.getSubject()); validationError.setInput(validationResult.getInput()); validationError.setReason(validationResult.getExplanation()); validationErrorList.add(validationError); } } return validationErrorList; }