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

## Interface ILocalSearchAdapter

- All Known Implementing Classes:
    LocalSearchProfilerAdapter

      public interface ILocalSearchAdapter

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `adapterRegistered(ILocalSearchAdaptable adaptable)`
    `void` | `adapterUnregistered(ILocalSearchAdaptable adaptable)`
    `void` | `executorInitializing(SearchPlanExecutor searchPlanExecutor, MatchingFrame frame)` Callback method to indicate that a search plan executor is initialized with the given frame and starting operation
    `void` | `matchFound(SearchPlanExecutor planExecutor, MatchingFrame frame)` Callback that is used to indicate that a match has been found
    `void` | `operationExecuted(SearchPlanExecutor planExecutor, MatchingFrame frame)` Callback method to indicate that an operation is executed
    `void` | `operationSelected(SearchPlanExecutor planExecutor, MatchingFrame frame)` Callback method to indicate the selection of an operation to execute
    `void` | `patternMatchingFinished(LocalSearchMatcher lsMatcher)` Callback method to indicate the end of a matching process
    `void` | `patternMatchingStarted(LocalSearchMatcher lsMatcher)` Callback method to indicate the start of a matching process
    `void` | `planChanged(SearchPlanExecutor oldPlanExecutor, SearchPlanExecutor newPlanExecutor)` Callback method to indicate switching to a new plan during the execution of a pattern matching

- - ### Method Detail

    - #### adapterRegistered

          void adapterRegistered(ILocalSearchAdaptable adaptable)

      Since:
        1.2

    - #### adapterUnregistered

          void adapterUnregistered(ILocalSearchAdaptable adaptable)

      Since:
        1.2

    - #### patternMatchingStarted

          void patternMatchingStarted(LocalSearchMatcher lsMatcher)

      Callback method to indicate the start of a matching process
      Parameters:
        `lsMatcher` - the local search matcher that starts the matching

    - #### patternMatchingFinished

          void patternMatchingFinished(LocalSearchMatcher lsMatcher)

      Callback method to indicate the end of a matching process
      Parameters:
        `lsMatcher` - the local search matcher that finished

    - #### planChanged

          void planChanged(SearchPlanExecutor oldPlanExecutor,
                           SearchPlanExecutor newPlanExecutor)

      Callback method to indicate switching to a new plan during the execution of a pattern matching
      Parameters:
        `oldPlanExecutor` - the plan that is finished. Value is null when the first plan is starting.
        `newPlanExecutor` - the plan that will begin execution

    - #### operationSelected

          void operationSelected(SearchPlanExecutor planExecutor,
                                 MatchingFrame frame)

      Callback method to indicate the selection of an operation to execute
      Parameters:
        `planExecutor` - the current plan executor
        `frame` - the current matching frame

    - #### operationExecuted

          void operationExecuted(SearchPlanExecutor planExecutor,
                                 MatchingFrame frame)

      Callback method to indicate that an operation is executed
      Parameters:
        `planExecutor` - the current plan executor
        `frame` - the current matching frame

    - #### matchFound

          void matchFound(SearchPlanExecutor planExecutor,
                          MatchingFrame frame)

      Callback that is used to indicate that a match has been found
      Parameters:
        `planExecutor` - the search plan executor that found the match
        `frame` - the frame that holds the substitutions of the variables that match

    - #### executorInitializing

          void executorInitializing(SearchPlanExecutor searchPlanExecutor,
                                    MatchingFrame frame)

      Callback method to indicate that a search plan executor is initialized with the given frame and starting operation
      Parameters:
        `searchPlanExecutor` -
        `frame` -