Page MenuHomePhabricator

D20214.id48263.diff
No OneTemporary

D20214.id48263.diff

diff --git a/src/applications/differential/editor/DifferentialDiffEditor.php b/src/applications/differential/editor/DifferentialDiffEditor.php
--- a/src/applications/differential/editor/DifferentialDiffEditor.php
+++ b/src/applications/differential/editor/DifferentialDiffEditor.php
@@ -208,15 +208,6 @@
return $adapter;
}
- protected function didApplyHeraldRules(
- PhabricatorLiskDAO $object,
- HeraldAdapter $adapter,
- HeraldTranscript $transcript) {
-
- $xactions = array();
- return $xactions;
- }
-
private function updateDiffFromDict(DifferentialDiff $diff, $dict) {
$diff
->setSourcePath(idx($dict, 'sourcePath'))
diff --git a/src/applications/herald/adapter/HeraldAdapter.php b/src/applications/herald/adapter/HeraldAdapter.php
--- a/src/applications/herald/adapter/HeraldAdapter.php
+++ b/src/applications/herald/adapter/HeraldAdapter.php
@@ -186,15 +186,16 @@
return $this->appliedTransactions;
}
- public function queueTransaction($transaction) {
+ final public function queueTransaction(
+ PhabricatorApplicationTransaction $transaction) {
$this->queuedTransactions[] = $transaction;
}
- public function getQueuedTransactions() {
+ final public function getQueuedTransactions() {
return $this->queuedTransactions;
}
- public function newTransaction() {
+ final public function newTransaction() {
$object = $this->newObject();
if (!($object instanceof PhabricatorApplicationTransactionInterface)) {
@@ -205,7 +206,19 @@
'PhabricatorApplicationTransactionInterface'));
}
- return $object->getApplicationTransactionTemplate();
+ $xaction = $object->getApplicationTransactionTemplate();
+
+ if (!($xaction instanceof PhabricatorApplicationTransaction)) {
+ throw new Exception(
+ pht(
+ 'Expected object (of class "%s") to return a transaction template '.
+ '(of class "%s"), but it returned something else ("%s").',
+ get_class($object),
+ 'PhabricatorApplicationTransaction',
+ phutil_describe_type($xaction)));
+ }
+
+ return $xaction;
}
diff --git a/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php b/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php
--- a/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php
+++ b/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php
@@ -3779,9 +3779,14 @@
$this->mustEncrypt = $adapter->getMustEncryptReasons();
+ $apply_xactions = $this->didApplyHeraldRules($object, $adapter, $xscript);
+ assert_instances_of($apply_xactions, 'PhabricatorApplicationTransaction');
+
+ $queue_xactions = $adapter->getQueuedTransactions();
+
return array_merge(
- $this->didApplyHeraldRules($object, $adapter, $xscript),
- $adapter->getQueuedTransactions());
+ array_values($apply_xactions),
+ array_values($queue_xactions));
}
protected function didApplyHeraldRules(

File Metadata

Mime Type
text/plain
Expires
Thu, Mar 20, 12:57 PM (8 h, 59 m ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7690411
Default Alt Text
D20214.id48263.diff (2 KB)

Event Timeline