Reduce code duplication in Herald fields

Summary:
Ref T8726. I want to modularize values and reduce how hard-coded / copypasta'd they are.

  - Rename `get...StandardCondition()` to `get...StandardType()`, since we can drive both conditions and values from it.
  - Rename `STANDARD_LIST` to `STANDARD_PHID_LIST` for consistency: all "lists" are lists of PHIDs.
  - For all standard types which don't require typehaeads, lift their logic into the base class.
  - I'll lift typeaheads soon, but need to generalize them first.

Test Plan: Edited various Herald rules, saw value UI generate correctly.

Reviewers: btrahan

Reviewed By: btrahan

Subscribers: epriestley

Maniphest Tasks: T8726

Differential Revision: https://secure.phabricator.com/D13612
This commit is contained in:
epriestley
2015-07-16 14:11:44 -07:00
parent fc72b000f0
commit b2b739c709
85 changed files with 143 additions and 297 deletions

View File

@@ -13,7 +13,7 @@ final class PhrictionDocumentAuthorHeraldField
return $object->getContent()->getAuthorPHID();
}
protected function getHeraldFieldStandardConditions() {
protected function getHeraldFieldStandardType() {
return self::STANDARD_PHID;
}

View File

@@ -13,12 +13,8 @@ final class PhrictionDocumentContentHeraldField
return $object->getContent()->getContent();
}
protected function getHeraldFieldStandardConditions() {
protected function getHeraldFieldStandardType() {
return self::STANDARD_TEXT;
}
public function getHeraldFieldValueType($condition) {
return HeraldAdapter::VALUE_TEXT;
}
}

View File

@@ -13,12 +13,8 @@ final class PhrictionDocumentPathHeraldField
return $object->getcontent()->getSlug();
}
protected function getHeraldFieldStandardConditions() {
protected function getHeraldFieldStandardType() {
return self::STANDARD_TEXT;
}
public function getHeraldFieldValueType($condition) {
return HeraldAdapter::VALUE_TEXT;
}
}

View File

@@ -13,12 +13,8 @@ final class PhrictionDocumentTitleHeraldField
return $object->getContent()->getTitle();
}
protected function getHeraldFieldStandardConditions() {
protected function getHeraldFieldStandardType() {
return self::STANDARD_TEXT;
}
public function getHeraldFieldValueType($condition) {
return HeraldAdapter::VALUE_TEXT;
}
}