javax.validation.metadata

## Interface ConstraintDescriptor<T extends Annotation>

-     public interface ConstraintDescriptor<T extends Annotation>

  Describes a single constraint and its composing constraints.

  `T` is the constraint's annotation type.
  Author:
    Emmanuel Bernard, Hardy Ferentschik

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `T` | `getAnnotation()` Returns the annotation describing the constraint declaration.
    `Map<String,Object>` | `getAttributes()` Returns a map containing the annotation attribute names as keys and the annotation attribute values as value.
    `Set<ConstraintDescriptor<?>>` | `getComposingConstraints()` Return a set of composing `ConstraintDescriptor`s where each descriptor describes a composing constraint.
    `List<Class<? extends ConstraintValidator<T,?>>>` | `getConstraintValidatorClasses()` List of the constraint validation implementation classes.
    `Set<Class<?>>` | `getGroups()` The set of groups the constraint is applied on.
    `String` | `getMessageTemplate()` The non-interpolated error message
    `Set<Class<? extends Payload>>` | `getPayload()` The set of payload the constraint hosts.
    `ConstraintTarget` | `getValidationAppliesTo()` The `ConstraintTarget` value of `validationAppliesTo` if the constraint hosts it or `null` otherwise.
    `boolean` | `isReportAsSingleViolation()`

- - ### Method Detail

    - #### getAnnotation

          T getAnnotation()

      Returns the annotation describing the constraint declaration. If a composing constraint, attribute values are reflecting the overridden attributes of the composing constraint
      Returns:
        the annotation for this constraint

    - #### getMessageTemplate

          String getMessageTemplate()

      The non-interpolated error message
      Returns:
        the non-interpolated error message
      Since:
        1.1

    - #### getGroups

          Set<Class<?>> getGroups()

      The set of groups the constraint is applied on. If the constraint declares no group, a set with only the `Default` group is returned.
      Returns:
        the groups the constraint is applied on

    - #### getPayload

          Set<Class<? extends Payload>> getPayload()

      The set of payload the constraint hosts.
      Returns:
        payload classes hosted on the constraint or an empty set if none

    - #### getValidationAppliesTo

          ConstraintTarget getValidationAppliesTo()

      The `ConstraintTarget` value of `validationAppliesTo` if the constraint hosts it or `null` otherwise.
      Returns:
        the `ConstraintTarget` value or `null`
      Since:
        1.1

    - #### getConstraintValidatorClasses

          List<Class<? extends ConstraintValidator<T,?>>> getConstraintValidatorClasses()

      List of the constraint validation implementation classes.
      Returns:
        list of the constraint validation implementation classes

    - #### getAttributes

          Map<String,Object> getAttributes()

      Returns a map containing the annotation attribute names as keys and the annotation attribute values as value.

      If this constraint is used as part of a composed constraint, attribute values are reflecting the overridden attribute of the composing constraint.
      Returns:
        a map containing the annotation attribute names as keys and the annotation attribute values as value

    - #### getComposingConstraints

          Set<ConstraintDescriptor<?>> getComposingConstraints()

      Return a set of composing `ConstraintDescriptor`s where each descriptor describes a composing constraint. `ConstraintDescriptor` instances of composing constraints reflect overridden attribute values in `getAttributes()` and `getAnnotation()`.
      Returns:
        a set of `ConstraintDescriptor` objects or an empty set in case there are no composing constraints

    - #### isReportAsSingleViolation

          boolean isReportAsSingleViolation()

      Returns:
        `true` if the constraint is annotated with `ReportAsSingleViolation`

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