getProcessableTransactionClasses()); } abstract protected function processTransaction(PhabricatorApplicationTransaction $transaction); public function processTransactions(array $transactions) { $results = []; foreach ($transactions as $transaction) { $results[$transaction->getPHID()] = $this->processTransaction($transaction); } return $results; } public function isEnabled() { return true; } final public static function getAllProcessors() { $processors = (new PhutilClassMapQuery()) ->setAncestorClass(__CLASS__) ->setFilterMethod('isEnabled') ->execute(); return $processors; } }