Differential D20914 Diff 49858 src/applications/system/engine/PhabricatorDestructionEngineExtension.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/system/engine/PhabricatorDestructionEngineExtension.php
<?php | <?php | ||||
abstract class PhabricatorDestructionEngineExtension extends Phobject { | abstract class PhabricatorDestructionEngineExtension extends Phobject { | ||||
final public function getExtensionKey() { | final public function getExtensionKey() { | ||||
return $this->getPhobjectClassConstant('EXTENSIONKEY'); | return $this->getPhobjectClassConstant('EXTENSIONKEY'); | ||||
} | } | ||||
abstract public function getExtensionName(); | abstract public function getExtensionName(); | ||||
public function canDestroyObject( | public function canDestroyObject( | ||||
PhabricatorDestructionEngine $engine, | PhabricatorDestructionEngine $engine, | ||||
$object) { | $object) { | ||||
return true; | return true; | ||||
} | } | ||||
abstract public function destroyObject( | public function destroyObject( | ||||
PhabricatorDestructionEngine $engine, | PhabricatorDestructionEngine $engine, | ||||
$object); | $object) { | ||||
return null; | |||||
} | |||||
public function didDestroyObject( | |||||
PhabricatorDestructionEngine $engine, | |||||
$object) { | |||||
return null; | |||||
} | |||||
final public static function getAllExtensions() { | final public static function getAllExtensions() { | ||||
return id(new PhutilClassMapQuery()) | return id(new PhutilClassMapQuery()) | ||||
->setAncestorClass(__CLASS__) | ->setAncestorClass(__CLASS__) | ||||
->setUniqueMethod('getExtensionKey') | ->setUniqueMethod('getExtensionKey') | ||||
->execute(); | ->execute(); | ||||
} | } | ||||
} | } |