|
MediaWiki master
|
Basic infrastructure of the field definition. More...
Inherits MediaWiki\Search\SearchIndexField.
Inherited by MediaWiki\Search\DummySearchIndexFieldDefinition.

Public Member Functions | ||||
| __construct ( $name, $type) | ||||
| checkFlag ( $flag) | ||||
| Check if flag is set. | ||||
| getEngineHints (SearchEngine $engine) | ||||
A list of search engine hints for this field.Hints are usually specific to a search engine implementation and allow to fine control how the search engine will handle this particular field.For example some search engine permits some optimizations at index time by ignoring an update if the updated value does not change by more than X% on a numeric value.
| ||||
| getIndexType () | ||||
| getMapping (SearchEngine $engine) | ||||
| getName () | ||||
| Get field name. | ||||
| getSubfields () | ||||
| merge (SearchIndexField $that) | ||||
| Merge two field definitions if possible. | ||||
| setFlag ( $flag, $unset=false) | ||||
| Set global flag for this field. | ||||
| setMergeCallback ( $callback) | ||||
| Set field-specific merge strategy. | ||||
| setSubfields (array $subfields) | ||||
Protected Attributes | |
| int | $flags = 0 |
| Bit flags for the field. | |
| string | $name |
| Name of the field. | |
| SearchIndexFieldDefinition[] | $subfields = [] |
| Subfields. | |
| string | $type |
| Type of the field, one of the constants above. | |
Additional Inherited Members | |
Public Attributes inherited from MediaWiki\Search\SearchIndexField | |
| const | FLAG_CASEFOLD = 1 |
| Generic field flags. | |
| const | FLAG_NO_HIGHLIGHT = 4 |
| This field does not need highlight handling. | |
| const | FLAG_NO_INDEX = 8 |
| Do not index this field, just store it. | |
| const | FLAG_SCORING = 2 |
| This field contains secondary information, which is already present in other fields, but can be used for scoring. | |
| const | INDEX_TYPE_BOOL = 'bool' |
| const | INDEX_TYPE_DATETIME = 'datetime' |
| const | INDEX_TYPE_INTEGER = 'integer' |
| const | INDEX_TYPE_KEYWORD = 'keyword' |
| KEYWORD fields are indexed without any processing, so are appropriate for e.g. | |
| const | INDEX_TYPE_NESTED = 'nested' |
| const | INDEX_TYPE_NUMBER = 'number' |
| const | INDEX_TYPE_SHORT_TEXT = 'short_text' |
| SHORT_TEXT is meant to be used with short text made of mostly ascii technical information. | |
| const | INDEX_TYPE_TEXT = 'text' |
| TEXT fields are suitable for natural language and may be subject to analysis such as stemming. | |
Basic infrastructure of the field definition.
Specific engines should extend this class and at least, override the getMapping method, but can reuse other parts.
Definition at line 14 of file SearchIndexFieldDefinition.php.
| MediaWiki\Search\SearchIndexFieldDefinition::__construct | ( | $name, | |
| $type ) |
| string | $name | Field name |
| string | $type | Index type |
Definition at line 52 of file SearchIndexFieldDefinition.php.
References MediaWiki\Search\SearchIndexFieldDefinition\$name, and MediaWiki\Search\SearchIndexFieldDefinition\$type.
| MediaWiki\Search\SearchIndexFieldDefinition::checkFlag | ( | $flag | ) |
Check if flag is set.
| int | $flag |
Implements MediaWiki\Search\SearchIndexField.
Definition at line 96 of file SearchIndexFieldDefinition.php.
| MediaWiki\Search\SearchIndexFieldDefinition::getEngineHints | ( | SearchEngine | $engine | ) |
A list of search engine hints for this field.Hints are usually specific to a search engine implementation and allow to fine control how the search engine will handle this particular field.For example some search engine permits some optimizations at index time by ignoring an update if the updated value does not change by more than X% on a numeric value.
| SearchEngine | $engine |
Implements MediaWiki\Search\SearchIndexField.
Definition at line 154 of file SearchIndexFieldDefinition.php.
| MediaWiki\Search\SearchIndexFieldDefinition::getIndexType | ( | ) |
Definition at line 68 of file SearchIndexFieldDefinition.php.
References MediaWiki\Search\SearchIndexFieldDefinition\$type.
|
abstract |
| SearchEngine | $engine |
Implements MediaWiki\Search\SearchIndexField.
Reimplemented in MediaWiki\Search\DummySearchIndexFieldDefinition.
| MediaWiki\Search\SearchIndexFieldDefinition::getName | ( | ) |
Get field name.
Definition at line 61 of file SearchIndexFieldDefinition.php.
References MediaWiki\Search\SearchIndexFieldDefinition\$name.
| MediaWiki\Search\SearchIndexFieldDefinition::getSubfields | ( | ) |
Definition at line 123 of file SearchIndexFieldDefinition.php.
References MediaWiki\Search\SearchIndexFieldDefinition\$subfields.
| MediaWiki\Search\SearchIndexFieldDefinition::merge | ( | SearchIndexField | $that | ) |
Merge two field definitions if possible.
| SearchIndexField | $that |
Implements MediaWiki\Search\SearchIndexField.
Definition at line 107 of file SearchIndexFieldDefinition.php.
References MediaWiki\Search\SearchIndexField\INDEX_TYPE_NESTED.
| MediaWiki\Search\SearchIndexFieldDefinition::setFlag | ( | $flag, | |
| $unset = false ) |
Set global flag for this field.
| int | $flag | Bit flag to set/unset |
| bool | $unset | True if flag should be unset, false by default |
Implements MediaWiki\Search\SearchIndexField.
Definition at line 80 of file SearchIndexFieldDefinition.php.
| MediaWiki\Search\SearchIndexFieldDefinition::setMergeCallback | ( | $callback | ) |
Set field-specific merge strategy.
| callable | $callback |
Definition at line 147 of file SearchIndexFieldDefinition.php.
| MediaWiki\Search\SearchIndexFieldDefinition::setSubfields | ( | array | $subfields | ) |
| SearchIndexFieldDefinition[] | $subfields |
Definition at line 131 of file SearchIndexFieldDefinition.php.
References MediaWiki\Search\SearchIndexFieldDefinition\$subfields.
|
protected |
Bit flags for the field.
Definition at line 35 of file SearchIndexFieldDefinition.php.
Referenced by MediaWiki\Search\DummySearchIndexFieldDefinition\getMapping().
|
protected |
Name of the field.
Definition at line 21 of file SearchIndexFieldDefinition.php.
Referenced by MediaWiki\Search\SearchIndexFieldDefinition\__construct(), MediaWiki\Search\DummySearchIndexFieldDefinition\getMapping(), and MediaWiki\Search\SearchIndexFieldDefinition\getName().
|
protected |
Subfields.
Definition at line 41 of file SearchIndexFieldDefinition.php.
Referenced by MediaWiki\Search\SearchIndexFieldDefinition\getSubfields(), and MediaWiki\Search\SearchIndexFieldDefinition\setSubfields().
|
protected |
Type of the field, one of the constants above.
Definition at line 28 of file SearchIndexFieldDefinition.php.
Referenced by MediaWiki\Search\SearchIndexFieldDefinition\__construct(), MediaWiki\Search\SearchIndexFieldDefinition\getIndexType(), and MediaWiki\Search\DummySearchIndexFieldDefinition\getMapping().