org.eclipse.incquery.patternlanguage.annotations.impl

## Class PatternAnnotationValidator

- java.lang.Object
- - org.eclipse.incquery.patternlanguage.annotations.impl.PatternAnnotationValidator

- All Implemented Interfaces:
    IPatternAnnotationValidator

      public class PatternAnnotationValidator
      extends java.lang.Object
      implements IPatternAnnotationValidator

  A type-safe wrapper created from a pattern annotation extension point together with validation-related methods. Such validators are instantiated in `PatternAnnotationProvider`.
  Author:
    Zoltan Ujhelyi

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PatternAnnotationValidator(java.lang.String name, java.lang.String description, boolean deprecated, java.lang.Iterable<PatternAnnotationParameter> parameters, IPatternAnnotationAdditionalValidator validator)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `IPatternAnnotationAdditionalValidator` | `getAdditionalValidator()` Provides an additional validator implementation.
    `java.lang.Iterable<java.lang.String>` | `getAllAvailableParameterNames()`
    `java.lang.String` | `getAnnotationName()`
    `java.lang.String` | `getDescription()`
    `java.lang.String` | `getDescription(java.lang.String parameterName)`
    `java.lang.Class<? extends ValueReference>` | `getExpectedParameterType(AnnotationParameter parameter)` Returns whether a parameter of an annotation is mistyped
    `java.lang.Iterable<java.lang.String>` | `getMissingMandatoryAttributes(Annotation annotation)`
    `java.lang.Iterable<AnnotationParameter>` | `getUnknownAttributes(Annotation annotation)`
    `boolean` | `isDeprecated()`
    `boolean` | `isDeprecated(java.lang.String parameterName)`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### PatternAnnotationValidator

          public PatternAnnotationValidator(java.lang.String name,
                                            java.lang.String description,
                                            boolean deprecated,
                                            java.lang.Iterable<PatternAnnotationParameter> parameters,
                                            IPatternAnnotationAdditionalValidator validator)

  - ### Method Detail

    - #### getAllAvailableParameterNames

          public java.lang.Iterable<java.lang.String> getAllAvailableParameterNames()

      Specified by:
        `getAllAvailableParameterNames` in interface `IPatternAnnotationValidator`

    - #### getMissingMandatoryAttributes

          public java.lang.Iterable<java.lang.String> getMissingMandatoryAttributes(Annotation annotation)

      Specified by:
        `getMissingMandatoryAttributes` in interface `IPatternAnnotationValidator`

    - #### getUnknownAttributes

          public java.lang.Iterable<AnnotationParameter> getUnknownAttributes(Annotation annotation)

      Specified by:
        `getUnknownAttributes` in interface `IPatternAnnotationValidator`

    - #### getExpectedParameterType

          public java.lang.Class<? extends ValueReference> getExpectedParameterType(AnnotationParameter parameter)

      Description copied from interface: `IPatternAnnotationValidator`
      Returns whether a parameter of an annotation is mistyped
      Specified by:
        `getExpectedParameterType` in interface `IPatternAnnotationValidator`
      Returns:
        the expected class of the parameter variable

    - #### getAnnotationName

          public java.lang.String getAnnotationName()

      Specified by:
        `getAnnotationName` in interface `IPatternAnnotationValidator`

    - #### getDescription

          public java.lang.String getDescription()

      Specified by:
        `getDescription` in interface `IPatternAnnotationValidator`

    - #### getDescription

          public java.lang.String getDescription(java.lang.String parameterName)

      Specified by:
        `getDescription` in interface `IPatternAnnotationValidator`

    - #### isDeprecated

          public boolean isDeprecated()

      Specified by:
        `isDeprecated` in interface `IPatternAnnotationValidator`

    - #### isDeprecated

          public boolean isDeprecated(java.lang.String parameterName)

      Specified by:
        `isDeprecated` in interface `IPatternAnnotationValidator`

    - #### getAdditionalValidator

          public IPatternAnnotationAdditionalValidator getAdditionalValidator()

      Description copied from interface: `IPatternAnnotationValidator`
      Provides an additional validator implementation.
      Specified by:
        `getAdditionalValidator` in interface `IPatternAnnotationValidator`
      Returns:
        the validator object if specified or null otherwise.