Package org.eclipse.viatra.query.runtime.matchers.psystem.queries

## Interface PQueryHeader

- All Known Subinterfaces:
    `InitializablePQuery`, `IQuerySpecification<Matcher>`, `PQuery`
  All Known Implementing Classes:
    `BaseGeneratedEMFPQuery`, `BaseGeneratedEMFQuerySpecification`, `BaseGeneratedEMFQuerySpecificationWithGenericMatcher`, `BasePQuery`, `BaseQuerySpecification`, `GenericEMFPatternPQuery`, `GenericQuerySpecification`, `GenericQuerySpecification`, `GenericSingleConstraintPQuery`

      public interface PQueryHeader

  Represents header information (metainfo) about a query.

  To be implemented both by IQuerySpecifications intended for end users, and the internal query representation `PQuery`.

  Since:
    0.9

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.util.List<PAnnotation>` | `getAllAnnotations()` | Returns the list of annotations specified for this query
    `java.util.List<PAnnotation>` | `getAnnotationsByName​(java.lang.String annotationName)` | Returns the list of annotations with a specified name
    `java.util.Optional<PAnnotation>` | `getFirstAnnotationByName​(java.lang.String annotationName)` | Returns the first annotation with a specified name
    `java.lang.String` | `getFullyQualifiedName()` | Identifies the pattern for which matchers can be instantiated.
    `default java.util.Optional<PParameter>` | `getParameter​(java.lang.String parameterName)` | Returns a parameter by name if exists
    `java.util.List<java.lang.String>` | `getParameterNames()` | Return the list of parameter names
    `java.util.List<PParameter>` | `getParameters()` | Returns a list of parameter descriptions
    `java.lang.Integer` | `getPositionOfParameter​(java.lang.String parameterName)` | Returns the index of a named parameter
    `default java.lang.String` | `getSimpleName()` | Returns the non-qualified name of the query.
    `PVisibility` | `getVisibility()` | Returns the visibility information about the query.

- - ### Method Detail

    - #### getFullyQualifiedName

          java.lang.String getFullyQualifiedName()

      Identifies the pattern for which matchers can be instantiated.

    - #### getParameterNames

          java.util.List<java.lang.String> getParameterNames()

      Return the list of parameter names
      Returns:
        a non-null, but possibly empty list of parameter names

    - #### getParameters

          java.util.List<PParameter> getParameters()

      Returns a list of parameter descriptions
      Returns:
        a non-null, but possibly empty list of parameter descriptions

    - #### getPositionOfParameter

          java.lang.Integer getPositionOfParameter​(java.lang.String parameterName)

      Returns the index of a named parameter
      Parameters:
        `parameterName` -
      Returns:
        the index, or null of no such parameter is available

    - #### getParameter

          default java.util.Optional<PParameter> getParameter​(java.lang.String parameterName)

      Returns a parameter by name if exists
      Since:
        2.1

    - #### getAllAnnotations

          java.util.List<PAnnotation> getAllAnnotations()

      Returns the list of annotations specified for this query
      Returns:
        a non-null, but possibly empty list of annotations

    - #### getAnnotationsByName

          java.util.List<PAnnotation> getAnnotationsByName​(java.lang.String annotationName)

      Returns the list of annotations with a specified name
      Parameters:
        `annotationName` -
      Returns:
        a non-null, but possibly empty list of annotations

    - #### getFirstAnnotationByName

          java.util.Optional<PAnnotation> getFirstAnnotationByName​(java.lang.String annotationName)

      Returns the first annotation with a specified name
      Since:
        2.0

    - #### getVisibility

          PVisibility getVisibility()

      Returns the visibility information about the query.
      Since:
        2.0

    - #### getSimpleName

          default java.lang.String getSimpleName()

      Returns the non-qualified name of the query. By default this means returning the qualified name after the last '.' character.
      Since:
        2.0