Package org.eclipse.viatra.query.runtime.localsearch.matcher.integration

## Class GenericLocalSearchResultProvider

- java.lang.Object
- - org.eclipse.viatra.query.runtime.localsearch.matcher.integration.AbstractLocalSearchResultProvider
  - - org.eclipse.viatra.query.runtime.localsearch.matcher.integration.GenericLocalSearchResultProvider

- All Implemented Interfaces:
    `IQueryResultProvider`

      public class GenericLocalSearchResultProvider
      extends AbstractLocalSearchResultProvider

  Since:
    1.7

- - ### Field Summary

    - ### Fields inherited from class org.eclipse.viatra.query.runtime.localsearch.matcher.integration.AbstractLocalSearchResultProvider

      `backend, backendContext, hintCache, planProvider, query, resultProviderRequestor, runtimeContext, searchContext, userHints`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `GenericLocalSearchResultProvider​(LocalSearchBackend backend, IQueryBackendContext context, PQuery query, IPlanProvider planProvider, QueryEvaluationHint userHints)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected IOperationCompiler` | `getOperationCompiler​(IQueryBackendContext backendContext, LocalSearchHints configuration)` |
    `protected void` | `indexInitializationBeforePlanning()` | This method is called before planning start to allow indexing.

    - ### Methods inherited from class org.eclipse.viatra.query.runtime.localsearch.matcher.integration.AbstractLocalSearchResultProvider

      `addUpdateListener, countMatches, countMatches, estimateAverageBucketSize, estimateCardinality, estimateCost, forgetAllPlans, getAllMatches, getAllMatches, getCapabilites, getOneArbitraryMatch, getOneArbitraryMatch, getQueryBackend, getSearchPlan, hasMatch, hasMatch, indexReferredTypesOfQuery, newLocalSearchMatcher, newLocalSearchMatcher, prepare, prepareDirectDependencies, preparePlansForExpectedAdornments, removeUpdateListener`

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

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

- - ### Constructor Detail

    - #### GenericLocalSearchResultProvider

          public GenericLocalSearchResultProvider​(LocalSearchBackend backend,
                                                  IQueryBackendContext context,
                                                  PQuery query,
                                                  IPlanProvider planProvider,
                                                  QueryEvaluationHint userHints)

      Throws:
        `ViatraQueryRuntimeException`

  - ### Method Detail

    - #### indexInitializationBeforePlanning

          protected void indexInitializationBeforePlanning()

      Description copied from class: `AbstractLocalSearchResultProvider`
      This method is called before planning start to allow indexing. It is important to note that this method is called inside a coalesceTraversals block, meaning (1) it is safe to add multiple registration requests as necessary, but (2) no value or statistics is available from the index.
      Overrides:
        `indexInitializationBeforePlanning` in class `AbstractLocalSearchResultProvider`

    - #### getOperationCompiler

          protected IOperationCompiler getOperationCompiler​(IQueryBackendContext backendContext,
                                                            LocalSearchHints configuration)

      Specified by:
        `getOperationCompiler` in class `AbstractLocalSearchResultProvider`