org.hibernate.validator.internal.metadata.raw

## Interface ConstrainedElement

- All Superinterfaces:
    Iterable<MetaConstraint<?>>
  All Known Implementing Classes:
    AbstractConstrainedElement, ConstrainedExecutable, ConstrainedField, ConstrainedParameter, ConstrainedType

      public interface ConstrainedElement
      extends Iterable<MetaConstraint<?>>

  Represents a (potentially) constrained Java element such as a type, field or method. Such an element has a set of `MetaConstraint`s and can be marked for a cascaded validation. Furthermore each constrained element has a `configuration source` which determines its origin.

  The hierarchy of constrained elements resembles the physical structure of the represented Java types. In particular it doesn't provide the notion of properties and it doesn't aggregate meta data for overridden elements in an inheritance hierarchy.

  Identity of implementations is based on the element location and constraint source. That means that for instance in a set there can be two configurations for one and the same Java field created by two different configuration sources (e.g. via annotation and XML) but not two configurations for the same field originating from one configuration source.

  Implementations are strictly read-only.

  Author:
    Gunnar Morling

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static class` | `ConstrainedElement.ConstrainedElementKind` The kind of a `ConstrainedElement`.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Set<MetaConstraint<?>>` | `getConstraints()` Returns a set containing the constraints specified for this constrained element.
    `Map<Class<?>,Class<?>>` | `getGroupConversions()` Returns a map with the group conversions for this constrained element, as e.g.
    `ConstrainedElement.ConstrainedElementKind` | `getKind()` Returns the kind of this constrained element.
    `ConstraintLocation` | `getLocation()` Returns the location of this constrained element.
    `boolean` | `isCascading()` Whether cascading validation for the represented element shall be performed or not.
    `boolean` | `isConstrained()` Whether this element is constrained or not.
    `boolean` | `requiresUnwrapping()` Whether this element is marked for unwrapping prior to validation or not.

    - ### Methods inherited from interface java.lang.Iterable

      `iterator`

- - ### Method Detail

    - #### getKind

          ConstrainedElement.ConstrainedElementKind getKind()

      Returns the kind of this constrained element.
      Returns:
        The kind of this constrained element.

    - #### getLocation

          ConstraintLocation getLocation()

      Returns the location of this constrained element.
      Returns:
        The location of this constrained element.

    - #### getConstraints

          Set<MetaConstraint<?>> getConstraints()

      Returns a set containing the constraints specified for this constrained element.
      Returns:
        A set with this constrained element's constraints. May be empty, but never `null`.

    - #### getGroupConversions

          Map<Class<?>,Class<?>> getGroupConversions()

      Returns a map with the group conversions for this constrained element, as e.g. given using the `@ConvertGroup` annotation.
      Returns:
        A map with this constrained element's group conversions. May be empty, but never `null`.

    - #### isCascading

          boolean isCascading()

      Whether cascading validation for the represented element shall be performed or not.
      Returns:
        `True`, if cascading validation for the represented element shall be performed, `false` otherwise.

    - #### isConstrained

          boolean isConstrained()

      Whether this element is constrained or not. This is the case, if this element has at least one constraint or a cascaded validation shall be performed for it.
      Returns:
        `True`, if this element is constrained, `false` otherwise.

    - #### requiresUnwrapping

          boolean requiresUnwrapping()

      Whether this element is marked for unwrapping prior to validation or not.
      Returns:
        `true` if the value to be validated needs to unwrapped, `false` otherwise.

Copyright © 2007-2014 Red Hat, Inc. All Rights Reserved