Interface IQueryBackend

  • All Known Implementing Classes:
    LocalSearchBackend, ReteEngine

    public interface IQueryBackend
    Internal interface for a VIATRA query specification. Each query is associated with a pattern. Methods instantiate a matcher of the pattern with various parameters.
    Since:
    0.9
    No Extend:
    This interface is not intended to be extended by users of the VIATRA framework, and should only be used by the query engine
    • Method Detail

      • isCaching

        boolean isCaching()
        Returns:
        true iff this backend is incremental, i.e. it caches the results of queries for quick retrieval, and can provide update notifications on result set changes.
      • peekExistingResultProvider

        IQueryResultProvider peekExistingResultProvider​(PQuery query)
        Returns an existing result provider for a given query, if it was previously constructed, returns null otherwise. Will not construct and initialize new result providers.
      • flushUpdates

        void flushUpdates()
        Propagates all pending updates in this query backend. The implementation of this method is optional, and it can be ignored entirely if the backend does not delay updates.
        Since:
        1.6
      • dispose

        void dispose()
        Disposes the query backend.
      • getFactory

        IQueryBackendFactory getFactory()
        Returns:
        the factory that created this backend, if this functionality is supported
        Since:
        2.1