Class ConfigurableElementFilter

java.lang.Object
org.revapi.basic.ConfigurableElementFilter
All Implemented Interfaces:
AutoCloseable, org.revapi.configuration.Configurable, org.revapi.TreeFilterProvider

public class ConfigurableElementFilter extends Object implements org.revapi.TreeFilterProvider
An element filter that can filter out elements based on matching their full human readable representations. Archive filter can filter out elements that belong to specified archives.

If no include or exclude filters are defined, everything is included. If at least 1 include filter is defined, only elements matching it are included. Out of the included elements, some may be further excluded by the exclude filters.

See META-INF/filter-schema.json for the schema of the configuration.

Since:
0.1
Author:
Lukas Krejci
  • Constructor Details

    • ConfigurableElementFilter

      public ConfigurableElementFilter()
  • Method Details

    • getExtensionId

      @Nullable public String getExtensionId()
      Specified by:
      getExtensionId in interface org.revapi.configuration.Configurable
    • getJSONSchema

      @Nullable public Reader getJSONSchema()
      Specified by:
      getJSONSchema in interface org.revapi.configuration.Configurable
    • initialize

      public void initialize(@Nonnull org.revapi.AnalysisContext analysisContext)
      Specified by:
      initialize in interface org.revapi.configuration.Configurable
    • filterFor

      public <E extends org.revapi.Element<E>> Optional<org.revapi.TreeFilter<E>> filterFor(org.revapi.ArchiveAnalyzer<E> archiveAnalyzer)
      Specified by:
      filterFor in interface org.revapi.TreeFilterProvider
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable