javax.validation

## Interface ValidatorFactory

-     public interface ValidatorFactory

  Factory returning initialized `Validator` instances.

  Implementations are thread-safe and instances are typically cached and reused.
  Author:
    Emmanuel Bernard, Gunnar Morling, Hardy Ferentschik

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` Closes the `ValidatorFactory` instance.
    `ConstraintValidatorFactory` | `getConstraintValidatorFactory()` Returns the `ConstraintValidatorFactory` instance configured at initialization time for the `ValidatorFactory`.
    `MessageInterpolator` | `getMessageInterpolator()` Returns the `MessageInterpolator` instance configured at initialization time for the `ValidatorFactory`.
    `ParameterNameProvider` | `getParameterNameProvider()` Returns the `ParameterNameProvider` instance configured at initialization time for the `ValidatorFactory`.
    `TraversableResolver` | `getTraversableResolver()` Returns the `TraversableResolver` instance configured at initialization time for the `ValidatorFactory`.
    `Validator` | `getValidator()` Returns an initialized `Validator` instance using the factory defaults for message interpolator, traversable resolver and constraint validator factory.
    `<T> T` | `unwrap(Class<T> type)` Returns an instance of the specified type allowing access to provider-specific APIs.
    `ValidatorContext` | `usingContext()` Defines a new validator context and returns a `Validator` compliant this new context.

- - ### Method Detail

    - #### getValidator

          Validator getValidator()

      Returns an initialized `Validator` instance using the factory defaults for message interpolator, traversable resolver and constraint validator factory.

      Validator instances can be pooled and shared by the implementation.
      Returns:
        an initialized `Validator` instance

    - #### usingContext

          ValidatorContext usingContext()

      Defines a new validator context and returns a `Validator` compliant this new context.
      Returns:
        a `ValidatorContext` instance

    - #### getMessageInterpolator

          MessageInterpolator getMessageInterpolator()

      Returns the `MessageInterpolator` instance configured at initialization time for the `ValidatorFactory`. This is the instance used by `getValidator()`.
      Returns:
        `MessageInterpolator` instance

    - #### getTraversableResolver

          TraversableResolver getTraversableResolver()

      Returns the `TraversableResolver` instance configured at initialization time for the `ValidatorFactory`. This is the instance used by `getValidator()`.
      Returns:
        `TraversableResolver` instance

    - #### getConstraintValidatorFactory

          ConstraintValidatorFactory getConstraintValidatorFactory()

      Returns the `ConstraintValidatorFactory` instance configured at initialization time for the `ValidatorFactory`. This is the instance used by `getValidator()`.
      Returns:
        `ConstraintValidatorFactory` instance

    - #### getParameterNameProvider

          ParameterNameProvider getParameterNameProvider()

      Returns the `ParameterNameProvider` instance configured at initialization time for the `ValidatorFactory`. This is the instance used by #getValidator().
      Returns:
        `ParameterNameProvider` instance
      Since:
        1.1

    - #### unwrap

          <T> T unwrap(Class<T> type)

      Returns an instance of the specified type allowing access to provider-specific APIs. If the Bean Validation provider implementation does not support the specified class, a `ValidationException` is thrown.
      Parameters:
        `type` - the class of the object to be returned
      Returns:
        an instance of the specified class
      Throws:
        `ValidationException` - if the provider does not support the call.

    - #### close

          void close()

      Closes the `ValidatorFactory` instance. After the `ValidatorFactory` instance is closed, calling the following methods is not allowed:
      - methods of this `ValidatorFactory` instance
      - methods of `Validator` instances created by this `ValidatorFactory`
      Since:
        1.1

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