@Override
  public void validate(Object obj) throws ValidationException {
    super.validate(obj);
    VOParameter parameter = (VOParameter) obj;

    if (isOptionalAndNullOrEmpty(parameter)) {
      return;
    }

    if (!ADMValidator.isBoolean(parameter.getValue())) {
      throw new ValidationException(
          ValidationException.ReasonEnum.BOOLEAN,
          null,
          new Object[] {parameter.getParameterDefinition().getParameterId()});
    }
  }
  @Override
  public void validate(Object obj) throws ValidationException {
    super.validate(obj);
    VOParameter parameter = (VOParameter) obj;

    if (isOptionalAndNullOrEmpty(parameter)) {
      return;
    }

    if (!isValidNumber(parameter.getValue())
        || !hasValidPrecision(parameter.getValue())
        || convertDuration(parameter.getValue()) == null) {
      throw new ValidationException(
          ValidationException.ReasonEnum.DURATION,
          null,
          new Object[] {parameter.getParameterDefinition().getParameterId()});
    }
  }