Class SearchMatcher


  • public class SearchMatcher
    extends java.lang.Object
    SearchMatcher performs the task of matching a search query to a page's contents. This utility class is isolated to simplify WikiPageProvider implementations and to offer an easy target for upgrades. The upcoming(?) TranslatorReader rewrite will presumably invalidate this, among other things.
    Since:
    2.1.5
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      SearchResult matchPageContent​(java.lang.String wikiname, java.lang.String pageText)
      Compares the page content, available through the given stream, to the query items of this matcher.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SearchMatcher

        public SearchMatcher​(Engine engine,
                             QueryItem[] queries)
        Creates a new SearchMatcher.
        Parameters:
        engine - The Engine
        queries - A list of queries
      • SearchMatcher

        @Deprecated
        public SearchMatcher​(WikiEngine engine,
                             QueryItem[] queries)
        Deprecated.
        kept for compatibility with page/attachment providers not using public API. Use SearchMatcher(Engine, QueryItem) instead.
        Creates a new SearchMatcher.
        Parameters:
        engine - The Engine
        queries - A list of queries
    • Method Detail

      • matchPageContent

        public SearchResult matchPageContent​(java.lang.String wikiname,
                                             java.lang.String pageText)
                                      throws java.io.IOException
        Compares the page content, available through the given stream, to the query items of this matcher. Returns a search result object describing the quality of the match.

        This method would benefit of regexps (1.4) and streaming. FIXME!

        Parameters:
        wikiname - The name of the page
        pageText - The content of the page
        Returns:
        A SearchResult item, or null, there are no queries
        Throws:
        java.io.IOException - If reading page content fails