Class Filters

java.lang.Object
io.debezium.connector.mongodb.Filters

public final class Filters extends Object
A utility that is contains various filters for acceptable database names, CollectionIds, and fields.
Author:
Randall Hauch
  • Field Details

  • Constructor Details

    • Filters

      public Filters(Configuration configuration)
      Create an instance of the filters.
      Parameters:
      configuration - the configuration; may not be null
  • Method Details

    • createDatabaseFilter

      private Predicate<String> createDatabaseFilter()
    • createCollectionFilter

      private Predicate<CollectionId> createCollectionFilter()
    • createFieldSelector

      private FieldSelector createFieldSelector()
    • databaseFilter

      public Predicate<String> databaseFilter()
      Get the predicate function that determines whether the given database is to be included.
      Returns:
      the database filter; never null
    • collectionFilter

      public Predicate<CollectionId> collectionFilter()
      Get the predicate function that determines whether the given collection is to be included.
      Returns:
      the collection filter; never null
    • fieldFilterFor

      public FieldSelector.FieldFilter fieldFilterFor(CollectionId id)
      Get the field filter for a given collection identifier.
      Parameters:
      id - the collection identifier, never null
      Returns:
      the field filter; never null
    • isNotBuiltIn

      private boolean isNotBuiltIn(CollectionId id)
    • includes

      private <T> Predicate<T> includes(String literalsOrPatterns, Function<T,String> conversion)
    • excludes

      private <T> Predicate<T> excludes(String literalsOrPatterns, Function<T,String> conversion)
    • getConfig

      public Filters.FilterConfig getConfig()