Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F2894843
PhabricatorFulltextStorageEngine.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Advanced/Developer...
View Handle
View Hovercard
Size
2 KB
Referenced Files
None
Subscribers
None
PhabricatorFulltextStorageEngine.php
View Options
<?php
/**
* Base class for Phabricator search engine providers. Each engine must offer
* three capabilities: indexing, searching, and reconstruction (this can be
* stubbed out if an engine can't reasonably do it, it is used for debugging).
*/
abstract
class
PhabricatorFulltextStorageEngine
extends
Phobject
{
protected
$service
;
public
function
getHosts
(
)
{
return
$this
->
service
->
getHosts
(
)
;
}
public
function
setService
(
PhabricatorSearchService
$service
)
{
$this
->
service
=
$service
;
return
$this
;
}
/**
* @return PhabricatorSearchService
*/
public
function
getService
(
)
{
return
$this
->
service
;
}
/**
* Implementations must return a prototype host instance which is cloned
* by the PhabricatorSearchService infrastructure to configure each engine.
* @return PhabricatorSearchHost
*/
abstract
public
function
getHostType
(
)
;
/* -( Engine Metadata )---------------------------------------------------- */
/**
* Return a unique, nonempty string which identifies this storage engine.
*
* @return string Unique string for this engine, max length 32.
* @task meta
*/
abstract
public
function
getEngineIdentifier
(
)
;
/* -( Managing Documents )------------------------------------------------- */
/**
* Update the index for an abstract document.
*
* @param PhabricatorSearchAbstractDocument $document Document to update.
* @return void
*/
abstract
public
function
reindexAbstractDocument
(
PhabricatorSearchAbstractDocument
$document
)
;
/**
* Execute a search query.
*
* @param PhabricatorSavedQuery $query A query to execute.
* @return list A list of matching PHIDs.
*/
abstract
public
function
executeSearch
(
PhabricatorSavedQuery
$query
)
;
/**
* Does the search index exist?
*
* @return bool
*/
abstract
public
function
indexExists
(
)
;
/**
* Implementations should override this method to return a dictionary of
* stats which are suitable for display in the admin UI.
*/
abstract
public
function
getIndexStats
(
)
;
/**
* Is the index in a usable state?
*
* @return bool
*/
public
function
indexIsSane
(
)
{
return
$this
->
indexExists
(
)
;
}
/**
* Do any sort of setup for the search index.
*
* @return void
*/
public
function
initIndex
(
)
{
}
public
function
getFulltextTokens
(
)
{
return
array
(
)
;
}
}
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Sun, Jan 19, 20:34 (1 w, 5 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1119035
Default Alt Text
PhabricatorFulltextStorageEngine.php (2 KB)
Attached To
Mode
rP Phorge
Attached
Detach File
Event Timeline
Log In to Comment