Package org.apache.wiki.search

# Interface SearchProvider

All Superinterfaces:
  `WikiProvider`

All Known Implementing Classes:
  `BasicSearchProvider`, `LuceneSearchProvider`

public interface SearchProvider extends WikiProvider
Interface for the search providers that handle searching the Wiki

Since:
  2.2.21.

## Field Summary

### Fields inherited from interface org.apache.wiki.api.providers.WikiProvider

`LATEST_VERSION`

## Method Summary

Modifier and Type
Method
Description
`Collection<SearchResult>`
`findPages(String query, Context wikiContext)`
Search for pages matching a search query.
`void`
`pageRemoved(Page page)`
Delete a page from the search index.
`void`
`reindexPage(Page page)`
Adds a WikiPage for indexing queue.

### Methods inherited from interface org.apache.wiki.api.providers.WikiProvider

`getProviderInfo, initialize`

## Method Details

### pageRemoved

void pageRemoved(Page page)
Delete a page from the search index.

Parameters:
  `page` - Page to remove from search index.

### reindexPage

void reindexPage(Page page)
Adds a WikiPage for indexing queue. This is called a queue, since this method is expected to return pretty quickly, and indexing to be done in a separate thread.

Parameters:
  `page` - The WikiPage to be indexed.

### findPages

Collection<SearchResult> findPages(String query, Context wikiContext) throws ProviderException, IOException
Search for pages matching a search query.

Parameters:
  `query` - query to search for
  `wikiContext` - the context within which to run the search
Returns:
  collection of pages that match query
Throws:
  `ProviderException` - if the search provider failed.
  `IOException` - if for some reason the query could not be executed.