diff --git a/src/applications/differential/engine/DifferentialDiffExtractionEngine.php b/src/applications/differential/engine/DifferentialDiffExtractionEngine.php index a6487c8108..d7d7c767e1 100644 --- a/src/applications/differential/engine/DifferentialDiffExtractionEngine.php +++ b/src/applications/differential/engine/DifferentialDiffExtractionEngine.php @@ -284,7 +284,8 @@ final class DifferentialDiffExtractionEngine extends Phobject { ->setTransactionType($type_update) ->setIgnoreOnNoEffect(true) ->setNewValue($new_diff->getPHID()) - ->setMetadataValue('isCommitUpdate', true); + ->setMetadataValue('isCommitUpdate', true) + ->setMetadataValue('commitPHIDs', array($commit->getPHID())); foreach ($more_xactions as $more_xaction) { $xactions[] = $more_xaction; diff --git a/src/applications/differential/xaction/DifferentialRevisionCloseTransaction.php b/src/applications/differential/xaction/DifferentialRevisionCloseTransaction.php index b1c796dca4..7ef0f2ba60 100644 --- a/src/applications/differential/xaction/DifferentialRevisionCloseTransaction.php +++ b/src/applications/differential/xaction/DifferentialRevisionCloseTransaction.php @@ -136,4 +136,23 @@ final class DifferentialRevisionCloseTransaction $this->renderObject()); } + public function getTransactionTypeForConduit($xaction) { + return 'close'; + } + + public function getFieldValuesForConduit($object, $data) { + $commit_phid = $object->getMetadataValue('commitPHID'); + + if ($commit_phid) { + $commit_phids = array($commit_phid); + } else { + $commit_phids = array(); + } + + return array( + 'commitPHIDs' => $commit_phids, + ); + } + + } diff --git a/src/applications/differential/xaction/DifferentialRevisionUpdateTransaction.php b/src/applications/differential/xaction/DifferentialRevisionUpdateTransaction.php index 8b53bced88..c89c3c79e1 100644 --- a/src/applications/differential/xaction/DifferentialRevisionUpdateTransaction.php +++ b/src/applications/differential/xaction/DifferentialRevisionUpdateTransaction.php @@ -182,4 +182,18 @@ final class DifferentialRevisionUpdateTransaction } } + public function getTransactionTypeForConduit($xaction) { + return 'update'; + } + + public function getFieldValuesForConduit($object, $data) { + $commit_phids = $object->getMetadataValue('commitPHIDs', array()); + + return array( + 'old' => $object->getOldValue(), + 'new' => $object->getNewValue(), + 'commitPHIDs' => $commit_phids, + ); + } + }