javax.validation.executable

## Interface ExecutableValidator

-     public interface ExecutableValidator

  Validates parameters and return values of methods and constructors. Implementations of this interface must be thread-safe.
  Since:
    1.1
  Author:
    Gunnar Morling

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `<T> Set<ConstraintViolation<T>>` | `validateConstructorParameters(Constructor<? extends T> constructor, Object[] parameterValues, Class<?>... groups)` Validates all constraints placed on the parameters of the given constructor.
    `<T> Set<ConstraintViolation<T>>` | `validateConstructorReturnValue(Constructor<? extends T> constructor, T createdObject, Class<?>... groups)` Validates all return value constraints of the given constructor.
    `<T> Set<ConstraintViolation<T>>` | `validateParameters(T object, Method method, Object[] parameterValues, Class<?>... groups)` Validates all constraints placed on the parameters of the given method.
    `<T> Set<ConstraintViolation<T>>` | `validateReturnValue(T object, Method method, Object returnValue, Class<?>... groups)` Validates all return value constraints of the given method.

- - ### Method Detail

    - #### validateParameters

          <T> Set<ConstraintViolation<T>> validateParameters(T object,
                                                           Method method,
                                                           Object[] parameterValues,
                                                           Class<?>... groups)

      Validates all constraints placed on the parameters of the given method.
      Type Parameters:
        `T` - the type hosting the method to validate
      Parameters:
        `object` - the object on which the method to validate is invoked
        `method` - the method for which the parameter constraints is validated
        `parameterValues` - the values provided by the caller for the given method's parameters
        `groups` - the group or list of groups targeted for validation (defaults to `Default`)
      Returns:
        a set with the constraint violations caused by this validation; will be empty if no error occurs, but never `null`
      Throws:
        `IllegalArgumentException` - if `null` is passed for any of the parameters or if parameters don't match with each other
        `ValidationException` - if a non recoverable error happens during the validation process

    - #### validateReturnValue

          <T> Set<ConstraintViolation<T>> validateReturnValue(T object,
                                                            Method method,
                                                            Object returnValue,
                                                            Class<?>... groups)

      Validates all return value constraints of the given method.
      Type Parameters:
        `T` - the type hosting the method to validate
      Parameters:
        `object` - the object on which the method to validate is invoked
        `method` - the method for which the return value constraints is validated
        `returnValue` - the value returned by the given method
        `groups` - the group or list of groups targeted for validation (defaults to `Default`)
      Returns:
        a set with the constraint violations caused by this validation; will be empty if no error occurs, but never `null`
      Throws:
        `IllegalArgumentException` - if `null` is passed for any of the object, method or groups parameters or if parameters don't match with each other
        `ValidationException` - if a non recoverable error happens during the validation process

    - #### validateConstructorParameters

          <T> Set<ConstraintViolation<T>> validateConstructorParameters(Constructor<? extends T> constructor,
                                                                      Object[] parameterValues,
                                                                      Class<?>... groups)

      Validates all constraints placed on the parameters of the given constructor.
      Type Parameters:
        `T` - the type hosting the constructor to validate
      Parameters:
        `constructor` - the constructor for which the parameter constraints is validated
        `parameterValues` - the values provided by the caller for the given constructor's parameters
        `groups` - the group or list of groups targeted for validation (defaults to `Default`)
      Returns:
        a set with the constraint violations caused by this validation; Will be empty if no error occurs, but never `null`
      Throws:
        `IllegalArgumentException` - if `null` is passed for any of the parameters or if parameters don't match with each other
        `ValidationException` - if a non recoverable error happens during the validation process

    - #### validateConstructorReturnValue

          <T> Set<ConstraintViolation<T>> validateConstructorReturnValue(Constructor<? extends T> constructor,
                                                                       T createdObject,
                                                                       Class<?>... groups)

      Validates all return value constraints of the given constructor.
      Type Parameters:
        `T` - the type hosting the constructor to validate
      Parameters:
        `constructor` - the constructor for which the return value constraints is validated
        `createdObject` - the object instantiated by the given method
        `groups` - the group or list of groups targeted for validation (defaults to `Default`)
      Returns:
        a set with the constraint violations caused by this validation; will be empty, if no error occurs, but never `null`
      Throws:
        `IllegalArgumentException` - if `null` is passed for any of the parameters or if parameters don't match with each other
        `ValidationException` - if a non recoverable error happens during the validation process

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.