org.eclipse.viatra.query.runtime.registry

## Interface IQuerySpecificationRegistryEntry

- All Superinterfaces:
    IProvider<IQuerySpecification<?>>, IQuerySpecificationProvider

      public interface IQuerySpecificationRegistryEntry
      extends IQuerySpecificationProvider

  The query specification registry entry interface can return the identifier of the source that added it to the registry. It is provider based and can delay class loading of the wrapped `IQuerySpecification` until needed.
  Since:
    1.3

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.eclipse.viatra.query.runtime.matchers.util.IProvider

      `IProvider.ProvidedValueFunction`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `IQuerySpecificationProvider` | `getProvider()`
    `java.lang.String` | `getSourceIdentifier()`
    `java.lang.String` | `getSourceProjectName()` Collects the name of the project that is registered this specification to the registry.
    `boolean` | `includeInDefaultViews()`
    `boolean` | `isFromProject()` Returns whether the query specification was provided by an identifiable project.

    - ### Methods inherited from interface org.eclipse.viatra.query.runtime.extensibility.IQuerySpecificationProvider

      `getFullyQualifiedName`

    - ### Methods inherited from interface org.eclipse.viatra.query.runtime.matchers.util.IProvider

      `get`

- - ### Method Detail

    - #### getSourceIdentifier

          java.lang.String getSourceIdentifier()

      Returns:
        the identifier of the registry source that contributed the specification

    - #### isFromProject

          boolean isFromProject()

      Returns whether the query specification was provided by an identifiable project.

    - #### getSourceProjectName

          java.lang.String getSourceProjectName()

      Collects the name of the project that is registered this specification to the registry. If `getSourceIdentifier()` is false, it returns null.
      Specified by:
        `getSourceProjectName` in interface `IQuerySpecificationProvider`

    - #### includeInDefaultViews

          boolean includeInDefaultViews()

      Returns:
        true if the entry should be included in default views (created without any filters)

    - #### getProvider

          IQuerySpecificationProvider getProvider()

      Returns:
        the wrapped `IQuerySpecificationProvider` or itself