Class SortFieldProvider

    • Field Detail

      • name

        protected final String name
        The name this SortFieldProvider is registered under
    • Constructor Detail

      • SortFieldProvider

        protected SortFieldProvider​(String name)
        Creates a new SortFieldProvider.

        The provided name will be written into the index segment: in order to for the segment to be read this class should be registered with Java's SPI mechanism (registered in META-INF/ of your jar file, etc).

        name - must be all ascii alphanumeric, and less than 128 characters in length.
    • Method Detail

      • availableSortFieldProviders

        public static Set<String> availableSortFieldProviders()
        Lists all available SortFieldProviders
      • reloadSortFieldProviders

        public static void reloadSortFieldProviders​(ClassLoader classLoader)
        Reloads the SortFieldProvider list from the given ClassLoader. Changes to the list are visible after the method ends, all iterators (availableSortFieldProviders() ()},...) stay consistent.

        NOTE: Only new SortFieldProviders are added, existing ones are never removed or replaced.

        This method is expensive and should only be called for discovery of new SortFieldProviders on the given classpath/classloader!

      • writeSortField

        public abstract void writeSortField​(SortField sf,
                                            DataOutput out)
                                     throws IOException
        Writes a SortField to a DataOutput

        This is used to record index sort information in segment headers