Class Lookup

    • Constructor Detail

      • Lookup

        public Lookup()
        Sole constructor. (For invocation by subclass constructors, typically implicit.)
    • Method Detail

      • getCount

        public abstract long getCount()
                               throws IOException
        Get the number of entries the lookup was built with
        Returns:
        total number of suggester entries
        Throws:
        IOException
      • lookup

        public List<Lookup.LookupResult> lookup​(CharSequence key,
                                                boolean onlyMorePopular,
                                                int num)
                                         throws IOException
        Look up a key and return possible completion for this key.
        Parameters:
        key - lookup key. Depending on the implementation this may be a prefix, misspelling, or even infix.
        onlyMorePopular - return only more popular results
        num - maximum number of results to return
        Returns:
        a list of possible completions, with their relative weight (e.g. popularity)
        Throws:
        IOException
      • lookup

        public abstract List<Lookup.LookupResult> lookup​(CharSequence key,
                                                         Set<BytesRef> contexts,
                                                         boolean onlyMorePopular,
                                                         int num)
                                                  throws IOException
        Look up a key and return possible completion for this key.
        Parameters:
        key - lookup key. Depending on the implementation this may be a prefix, misspelling, or even infix.
        contexts - contexts to filter the lookup by, or null if all contexts are allowed; if the suggestion contains any of the contexts, it's a match
        onlyMorePopular - return only more popular results
        num - maximum number of results to return
        Returns:
        a list of possible completions, with their relative weight (e.g. popularity)
        Throws:
        IOException
      • lookup

        public List<Lookup.LookupResult> lookup​(CharSequence key,
                                                BooleanQuery contextFilerQuery,
                                                int num,
                                                boolean allTermsRequired,
                                                boolean doHighlight)
                                         throws IOException
        Look up a key and return possible completion for this key. This needs to be overridden by all implementing classes as the default implementation just returns null
        Parameters:
        key - the lookup key
        contextFilerQuery - A query for further filtering the result of the key lookup
        num - maximum number of results to return
        allTermsRequired - true is all terms are required
        doHighlight - set to true if key should be highlighted
        Returns:
        a list of suggestions/completions. The default implementation returns null, meaning each @Lookup implementation should override this and provide their own implementation
        Throws:
        IOException - when IO exception occurs
      • store

        public abstract boolean store​(DataOutput output)
                               throws IOException
        Persist the constructed lookup data to a directory. Optional operation.
        Parameters:
        output - DataOutput to write the data to.
        Returns:
        true if successful, false if unsuccessful or not supported.
        Throws:
        IOException - when fatal IO error occurs.
      • load

        public abstract boolean load​(DataInput input)
                              throws IOException
        Discard current lookup data and load it from a previously saved copy. Optional operation.
        Parameters:
        input - the DataInput to load the lookup data.
        Returns:
        true if completed successfully, false if unsuccessful or not supported.
        Throws:
        IOException - when fatal IO error occurs.