Package com.orchestranetworks.service

# Interface ValidationReport

All Known Subinterfaces:
  `DataspaceValidationReport`

public interface ValidationReport
A validation report is composed of validation items, each one characterized by a severity and a user message.

### Message threshold property

A threshold property can be set at data model level so as to specify the maximum number of messages, for each constraint defined in the data model. This threshold must be declared under the element `xs:schema/xs:annotation/xs:appinfo`:

>             <osd:validation>
>                     <validationMessageThreshold>250</validationMessageThreshold>
>             </osd:validation>

This threshold is taken into account for each constraint of a data model. When the threshold is reached by a constraint:

- The validation of the constraint is stopped;
- An error message indicating that the threshold has been reached is added to the validation report.

For more information, see Validation message threshold

See Also:
  - `ValidationReportItem`
  - `getTooManyMessagesItems()`
  - `hasConstraintsWithTooManyMessages()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `countItemsOfSeverity(Severity aSeverity)`
  Returns the number of validation items of the specified severity.
  `ValidationReportItemIterator`
  `getItemsOfSeverity(Severity aSeverity)`
  Returns the validation items of the specified severity.
  `ValidationReportItemIterator`
  `getItemsOfSeverityOrMore(Severity aSeverity)`
  Returns the validation items of the specified severity and higher (more severe).
  `ValidationReportItemIterator`
  `getTooManyMessagesItems()`
  Returns the validation items that contain the information about the constraints that have reached the validation message threshold.
  `boolean`
  `hasConstraintsWithTooManyMessages()`
  Returns `true` if the threshold specified in the EBX® main configuration file has been reached by at least one constraint.
  `boolean`
  `hasItems()`
  Returns `true` if this report has validation items.
  `boolean`
  `hasItemsOfSeverity(Severity aSeverity)`
  Returns `true` if this report has validation items of the specified severity.
  `boolean`
  `hasItemsOfSeverityOrMore(Severity aSeverity)`
  Returns `true` if this report has validation items of the specified severity or higher (more severe).
  `boolean`
  `hasSkippedValidation()`
  Returns `true` if this validation report is empty because the validation of the dataset, table or record didn't wait for the end of a concurrent validation.
  `boolean`
  `hasTooManyItemsOfConstraint(SchemaFacet aFacet)`
  Returns true if the message threshold has been reached by the specified constraint.
  `boolean`
  `hasTooManyItemsOfSeverity(Severity aSeverity)`
  Deprecated.
  Since 6.0

- ## Method Details

  - ### hasItems

    boolean hasItems()
    Returns `true` if this report has validation items.
    Since:
      5.8.0

  - ### hasConstraintsWithTooManyMessages

    boolean hasConstraintsWithTooManyMessages()
    Returns `true` if the threshold specified in the EBX® main configuration file has been reached by at least one constraint.

    For more information, see Validation message threshold

    Since:
      5.8.0
    See Also:
      - `getTooManyMessagesItems()`

  - ### hasItemsOfSeverity

    boolean hasItemsOfSeverity(Severity aSeverity)
    Returns `true` if this report has validation items of the specified severity.

  - ### countItemsOfSeverity

    int countItemsOfSeverity(Severity aSeverity)
    Returns the number of validation items of the specified severity.
    Since:
      5.8.0

  - ### hasItemsOfSeverityOrMore

    boolean hasItemsOfSeverityOrMore(Severity aSeverity)
    Returns `true` if this report has validation items of the specified severity or higher (more severe).
    See Also:
      - `Severity.isEqualOrMoreSevereThan(Severity)`

  - ### hasTooManyItemsOfSeverity

    @Deprecated boolean hasTooManyItemsOfSeverity(Severity aSeverity)
    Deprecated.
    Since 6.0
    Returns `false`.
    See Also:
      - `hasConstraintsWithTooManyMessages()`
      - `getTooManyMessagesItems()`

  - ### hasTooManyItemsOfConstraint

    boolean hasTooManyItemsOfConstraint(SchemaFacet aFacet)
    Returns true if the message threshold has been reached by the specified constraint.
    Since:
      6.0
    See Also:
      - `hasConstraintsWithTooManyMessages()`

  - ### getItemsOfSeverity

    ValidationReportItemIterator getItemsOfSeverity(Severity aSeverity)
    Returns the validation items of the specified severity.

    The iterator has to be closed to free the acquired resources. It can only be accessed as long as the dataspace is open. See `ValidationReportItemIterator`.

  - ### getItemsOfSeverityOrMore

    ValidationReportItemIterator getItemsOfSeverityOrMore(Severity aSeverity)
    Returns the validation items of the specified severity and higher (more severe).

    The iterator has to be closed to free the acquired resources. It can only be accessed as long as the dataspace is open. See `ValidationReportItemIterator`.

    See Also:
      - `Severity.isEqualOrMoreSevereThan(Severity)`

  - ### getTooManyMessagesItems

    ValidationReportItemIterator getTooManyMessagesItems()
    Returns the validation items that contain the information about the constraints that have reached the validation message threshold.

    The iterator has to be closed to free the acquired resources. It can only be accessed as long as the dataspace is open. See `ValidationReportItemIterator`.

    Since:
      5.8.0
    See Also:
      - `hasConstraintsWithTooManyMessages()`

  - ### hasSkippedValidation

    boolean hasSkippedValidation()
    Returns `true` if this validation report is empty because the validation of the dataset, table or record didn't wait for the end of a concurrent validation.
    See Also:
      - `ValidationSpec.RefreshPolicy.NO_WAIT`