Correct a parameter order swap in "diffusion.historyquery" for Mercurial
[phabricator.git] / src / applications / search / index / PhabricatorIndexEngineExtension.php
blobaaf22d055b264c58f03d1d77b9d17847b710045a
1 <?php
3 abstract class PhabricatorIndexEngineExtension extends Phobject {
5 private $parameters;
6 private $forceFullReindex;
8 public function setParameters(array $parameters) {
9 $this->parameters = $parameters;
10 return $this;
13 public function getParameter($key, $default = null) {
14 return idx($this->parameters, $key, $default);
17 final public function getExtensionKey() {
18 return $this->getPhobjectClassConstant('EXTENSIONKEY');
21 final protected function getViewer() {
22 return PhabricatorUser::getOmnipotentUser();
25 abstract public function getExtensionName();
27 abstract public function shouldIndexObject($object);
29 abstract public function indexObject(
30 PhabricatorIndexEngine $engine,
31 $object);
33 public function getIndexVersion($object) {
34 return null;
37 final public static function getAllExtensions() {
38 return id(new PhutilClassMapQuery())
39 ->setAncestorClass(__CLASS__)
40 ->setUniqueMethod('getExtensionKey')
41 ->execute();
44 final public function shouldForceFullReindex() {
45 return $this->getParameter('force');