mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-19 12:00:55 +01:00
Make stored custom fields work with v3 EditEngine API
Summary: Ref T11114. This makes the unusual stored custom fields ("Blame Rev", "Revert Plan", etc) work somewhat correctly (?) with EditEngine. Test Plan: - Created, updated and edited revisions with unusual stored custom fields like "Blame Rev". - Observed that these fields now populate in "differential.revision.edit" when available. Reviewers: chad Reviewed By: chad Maniphest Tasks: T11114 Differential Revision: https://secure.phabricator.com/D17068
This commit is contained in:
parent
64509dcca7
commit
a74d602b3c
7 changed files with 49 additions and 4 deletions
|
@ -57,4 +57,12 @@ final class DifferentialAuditorsField
|
||||||
return $this->renderObjectList($handles);
|
return $this->renderObjectList($handles);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function shouldAppearInConduitTransactions() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function newConduitEditParameterType() {
|
||||||
|
return new ConduitPHIDListParameterType();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -114,4 +114,12 @@ final class DifferentialBlameRevisionField
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function shouldAppearInConduitTransactions() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function newConduitEditParameterType() {
|
||||||
|
return new ConduitStringParameterType();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,6 +20,11 @@ abstract class DifferentialCustomField
|
||||||
return $this->getFieldKey();
|
return $this->getFieldKey();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: As above.
|
||||||
|
public function getModernFieldKey() {
|
||||||
|
return $this->getFieldKeyForConduit();
|
||||||
|
}
|
||||||
|
|
||||||
public function shouldEnableForRole($role) {
|
public function shouldEnableForRole($role) {
|
||||||
switch ($role) {
|
switch ($role) {
|
||||||
case self::ROLE_COMMITMESSAGE:
|
case self::ROLE_COMMITMESSAGE:
|
||||||
|
|
|
@ -295,8 +295,6 @@ final class DifferentialJIRAIssuesField
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public function renderCommitMessageValue(array $handles) {
|
public function renderCommitMessageValue(array $handles) {
|
||||||
$value = $this->getValue();
|
$value = $this->getValue();
|
||||||
if (!$value) {
|
if (!$value) {
|
||||||
|
@ -309,5 +307,12 @@ final class DifferentialJIRAIssuesField
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function shouldAppearInConduitTransactions() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function newConduitEditParameterType() {
|
||||||
|
return new ConduitStringListParameterType();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -142,4 +142,12 @@ final class DifferentialRevertPlanField
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function shouldAppearInConduitTransactions() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function newConduitEditParameterType() {
|
||||||
|
return new ConduitStringParameterType();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,8 +61,12 @@ abstract class DifferentialCommitMessageCustomField
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getFieldTransactions($value) {
|
public function getFieldTransactions($value) {
|
||||||
// TODO: Implement this!
|
return array(
|
||||||
return array();
|
array(
|
||||||
|
'type' => $this->getCommitMessageFieldKey(),
|
||||||
|
'value' => $value,
|
||||||
|
),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -107,6 +107,13 @@ abstract class PhabricatorEditType extends Phobject {
|
||||||
|
|
||||||
public function getConduitType() {
|
public function getConduitType() {
|
||||||
$parameter_type = $this->getConduitParameterType();
|
$parameter_type = $this->getConduitParameterType();
|
||||||
|
if (!$parameter_type) {
|
||||||
|
throw new Exception(
|
||||||
|
pht(
|
||||||
|
'Edit type (with key "%s") is missing a Conduit parameter type.',
|
||||||
|
$this->getEditType()));
|
||||||
|
}
|
||||||
|
|
||||||
return $parameter_type->getTypeName();
|
return $parameter_type->getTypeName();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue