MediaWiki
1.34.0
|
Base search engine base class for database-backed searches. More...
Public Member Functions | |
__construct (ILoadBalancer $lb) | |
doSearchText ( $term) | |
doSearchTitle ( $term) | |
Public Member Functions inherited from SearchEngine | |
augmentSearchResults (ISearchResultSet $resultSet) | |
Augment search results with extra data. More... | |
completionSearch ( $search) | |
Perform a completion search. More... | |
completionSearchWithVariants ( $search) | |
Perform a completion search with variants. More... | |
defaultPrefixSearch ( $search) | |
Simple prefix search for subpages. More... | |
delete ( $id, $title) | |
Delete an indexed page Title should be pre-processed. More... | |
extractTitles (SearchSuggestionSet $completionResults) | |
Extract titles from completion results. More... | |
getFeatureData ( $feature) | |
Way to retrieve custom data set by setFeatureData or by the engine itself. More... | |
getNearMatcher (Config $config) | |
Get service class to finding near matches. More... | |
getProfiles ( $profileType, User $user=null) | |
Get a list of supported profiles. More... | |
getSearchIndexFields () | |
Get fields for search index. More... | |
getSort () | |
Get the sort direction of the search results. More... | |
getTextFromContent (Title $t, Content $c=null) | |
Get the raw text for updating the index from a content object Nicer search backends could possibly do something cooler than just returning raw text. More... | |
getValidSorts () | |
Get the valid sort directions. More... | |
legalSearchChars ( $type=self::CHARS_ALL) | |
Get chars legal for search. More... | |
makeSearchFieldMapping ( $name, $type) | |
Create a search field definition. More... | |
normalizeText ( $string) | |
When overridden in derived class, performs database-specific conversions on text to be used for searching or updating search index. More... | |
replacePrefixes ( $query) | |
Parse some common prefixes: all (search everything) or namespace names and set the list of namespaces of this class accordingly. More... | |
searchArchiveTitle ( $term) | |
Perform a title search in the article archive. More... | |
searchText ( $term) | |
Perform a full text search query and return a result set. More... | |
searchTitle ( $term) | |
Perform a title-only search query and return a result set. More... | |
setFeatureData ( $feature, $data) | |
Way to pass custom data for engines. More... | |
setLimitOffset ( $limit, $offset=0) | |
Set the maximum number of results to return and how many to skip before returning the first. More... | |
setNamespaces ( $namespaces) | |
Set which namespaces the search should include. More... | |
setShowSuggestion ( $showSuggestion) | |
Set whether the searcher should try to build a suggestion. More... | |
setSort ( $sort) | |
Set the sort direction of the search results. More... | |
supports ( $feature) | |
textAlreadyUpdatedForIndex () | |
If an implementation of SearchEngine handles all of its own text processing in getTextFromContent() and doesn't require SearchUpdate::updateText()'s rather silly handling, it should return true here instead. More... | |
update ( $id, $title, $text) | |
Create or update the search index record for the given page. More... | |
updateTitle ( $id, $title) | |
Update a search index record's title only. More... | |
Protected Member Functions | |
doSearchTextInDB ( $term) | |
Perform a full text search query and return a result set. More... | |
doSearchTitleInDB ( $term) | |
Perform a title-only search query and return a result set. More... | |
extractNamespacePrefix ( $term) | |
Extract the optional namespace prefix and set self::namespaces accordingly and return the query string. More... | |
filter ( $text) | |
Return a 'cleaned up' search string. More... | |
Protected Member Functions inherited from SearchEngine | |
completionSearchBackend ( $search) | |
Perform a completion search. More... | |
completionSearchBackendOverfetch ( $search) | |
Perform an overfetch of completion search results. More... | |
doSearchArchiveTitle ( $term) | |
Perform a title search in the article archive. More... | |
normalizeNamespaces ( $search) | |
Makes search simple string if it was namespaced. More... | |
processCompletionResults ( $search, SearchSuggestionSet $suggestions) | |
Process completion search results. More... | |
simplePrefixSearch ( $search) | |
Call out to simple search backend. More... | |
Protected Attributes | |
IDatabase | $db |
(backwards compatibility) More... | |
ILoadBalancer | $lb |
string[] | $searchTerms = [] |
search terms More... | |
Protected Attributes inherited from SearchEngine | |
array | $features = [] |
Feature values. More... | |
int | $limit = 10 |
int | $offset = 0 |
string[] | $searchTerms = [] |
bool | $showSuggestion = true |
Additional Inherited Members | |
Static Public Member Functions inherited from SearchEngine | |
static | parseNamespacePrefixes ( $query, $withAllKeyword=true, $withPrefixSearchExtractNamespaceHook=false) |
Parse some common prefixes: all (search everything) or namespace names. More... | |
static | userHighlightPrefs () |
Find snippet highlight settings for all users. More... | |
Public Attributes inherited from SearchEngine | |
int[] null | $namespaces = [ NS_MAIN ] |
string | $prefix = '' |
const | CHARS_ALL = 1 |
Integer flag for legalSearchChars: includes all chars allowed in a search query. More... | |
const | CHARS_NO_SYNTAX = 2 |
Integer flag for legalSearchChars: includes all chars allowed in a search term. More... | |
const | COMPLETION_PROFILE_TYPE = 'completionSearchProfile' |
Profile type for completionSearch. More... | |
const | DEFAULT_SORT = 'relevance' |
const | FT_QUERY_INDEP_PROFILE_TYPE = 'fulltextQueryIndepProfile' |
Profile type for query independent ranking features. More... | |
Static Protected Member Functions inherited from SearchEngine | |
static | defaultNearMatcher () |
Get near matcher for default SearchEngine. More... | |
Base search engine base class for database-backed searches.
Definition at line 32 of file SearchDatabase.php.
SearchDatabase::__construct | ( | ILoadBalancer | $lb | ) |
ILoadBalancer | $lb | The load balancer for the DB cluster to search on |
Definition at line 46 of file SearchDatabase.php.
References $lb, DB_REPLICA, and Wikimedia\Rdbms\ILoadBalancer\getLazyConnectionRef().
|
final |
string | $term |
Reimplemented from SearchEngine.
Definition at line 56 of file SearchDatabase.php.
References doSearchTextInDB(), and extractNamespacePrefix().
|
abstractprotected |
Perform a full text search query and return a result set.
string | $term | Raw search term |
Reimplemented in SearchSqlite, SearchMySQL, and SearchPostgres.
Referenced by doSearchText().
|
final |
string | $term |
Reimplemented from SearchEngine.
Definition at line 72 of file SearchDatabase.php.
References doSearchTitleInDB(), and extractNamespacePrefix().
|
abstractprotected |
Perform a title-only search query and return a result set.
string | $term | Raw search term |
Reimplemented in SearchSqlite, SearchMySQL, and SearchPostgres.
Referenced by doSearchTitle().
|
finalprotected |
Extract the optional namespace prefix and set self::namespaces accordingly and return the query string.
string | $term |
Definition at line 104 of file SearchDatabase.php.
References SearchEngine\parseNamespacePrefixes().
Referenced by doSearchText(), and doSearchTitle().
|
protected |
Return a 'cleaned up' search string.
string | $text |
Definition at line 90 of file SearchDatabase.php.
References SearchEngine\legalSearchChars().
Referenced by SearchMySQL\searchInternal(), and SearchSqlite\searchInternal().
|
protected |
(backwards compatibility)
Definition at line 36 of file SearchDatabase.php.
|
protected |
Definition at line 34 of file SearchDatabase.php.
Referenced by __construct().
|
protected |
search terms
Definition at line 41 of file SearchDatabase.php.