Interface FilterProvider

All Superinterfaces:
ChangeSetFilter

public interface FilterProvider extends ChangeSetFilter
Instance of this class provide a EventFilter for observation events and a filter for commits.

In order to support OAK-4908 a FilterProvider extends ChangeSetFilter

  • Method Details

    • includeCommit

      boolean includeCommit(@NotNull @NotNull String sessionId, @Nullable @Nullable CommitInfo info)
      Filter whole commits. Only commits for which this method returns true will be further processed to create individual events.
      Parameters:
      sessionId - id of the filtering (this) session
      info - commit info of the commit or null if not available
      Returns:
      true if observation events should be created from this commit, false otherwise.
      See Also:
    • getFilter

      @NotNull @NotNull EventFilter getFilter(@NotNull @NotNull NodeState before, @NotNull @NotNull NodeState after)
      Factory method for creating a Filter for the passed before and after states.
      Parameters:
      before - before state
      after - after state
      Returns:
      new Filter instance
    • getSubTrees

      @NotNull @NotNull Iterable<String> getSubTrees()
      A set of paths whose subtrees include all events of this filter.
      Returns:
      list of paths
      See Also:
    • getConfigMBean

      FilterConfigMBean getConfigMBean()
    • getEventAggregator

      @Nullable @Nullable EventAggregator getEventAggregator()
      Allows providers to supply an optional EventAggregator that is used to adjust (aggregate) the event identifier before event creation (ie after event filtering).