org.eclipse.viatra.query.runtime.localsearch.plan

## Class CachingPlanProvider

- java.lang.Object
- - org.eclipse.viatra.query.runtime.localsearch.plan.CachingPlanProvider

- All Implemented Interfaces:
    IPlanProvider

      public class CachingPlanProvider
      extends java.lang.Object
      implements IPlanProvider

  A plan provider implementation which caches previously calculated plans to avoid re-planning for the same adornment
  Since:
    1.4

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `CachingPlanProvider(org.apache.log4j.Logger logger)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `IPlanDescriptor` | `getPlan(LocalSearchBackend backend, LocalSearchHints configuration, MatcherReference key)`

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

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

- - ### Constructor Detail

    - #### CachingPlanProvider

          public CachingPlanProvider(org.apache.log4j.Logger logger)

  - ### Method Detail

    - #### getPlan

          public IPlanDescriptor getPlan(LocalSearchBackend backend,
                                         LocalSearchHints configuration,
                                         MatcherReference key)
                                  throws QueryProcessingException

      Specified by:
        `getPlan` in interface `IPlanProvider`
      Throws:
        `QueryProcessingException`