Class 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 Detail

      • ConfigurableElementFilter

        public ConfigurableElementFilter()
    • Method Detail

      • 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