Class IgnoreCaseLookup<T>

java.lang.Object
org.apache.calcite.schema.lookup.IgnoreCaseLookup<T>
Type Parameters:
T - Element type
All Implemented Interfaces:
Lookup<T>
Direct Known Subclasses:
CompatibilityLookup

public abstract class IgnoreCaseLookup<T> extends Object implements Lookup<T>
An abstract base class for lookups implementing case insensitive lookup.
  • Constructor Details

    • IgnoreCaseLookup

      public IgnoreCaseLookup()
  • Method Details

    • get

      public abstract @Nullable T get(String name)
      Returns a named entity with a given name, or null if not found.
      Specified by:
      get in interface Lookup<T>
      Parameters:
      name - Name
      Returns:
      Entity with the specified name, or null when the entity is not found.
    • getIgnoreCase

      public @Nullable Named<T> getIgnoreCase(String name)
      Returns a named entity with a given name ignoring the case, or null if not found.
      Specified by:
      getIgnoreCase in interface Lookup<T>
      Parameters:
      name - Name
      Returns:
      Entity with the specified name, or null when the entity is not found.
    • getNames

      public abstract Set<String> getNames(LikePattern pattern)
      Description copied from interface: Lookup
      Returns the names of the entities in matching pattern. The search is always case sensitive. This is caused by the fact that DatabaseMetaData.getTables(...) doesn't support case insensitive lookups.
      Specified by:
      getNames in interface Lookup<T>
      Returns:
      The names of all entities matching the pattern.