Class SearchMatcher

java.lang.Object
org.apache.wiki.search.SearchMatcher

public class SearchMatcher
extends 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
  • Constructor Details

    • 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 Details

    • matchPageContent

      public SearchResult matchPageContent​(String wikiname, String pageText) throws 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:
      IOException - If reading page content fails