Remove all "FileHasObject" edge reads and writes
[phabricator.git] / src / applications / harbormaster / editor / HarbormasterBuildStepEditor.php
blob8206edee4d751839cb7d8176bd0e5ae538a50755
1 <?php
3 final class HarbormasterBuildStepEditor
4 extends PhabricatorApplicationTransactionEditor {
6 public function getEditorApplicationClass() {
7 return 'PhabricatorHarbormasterApplication';
10 public function getEditorObjectsDescription() {
11 return pht('Harbormaster Build Steps');
14 public function getTransactionTypes() {
15 $types = parent::getTransactionTypes();
17 $types[] = HarbormasterBuildStepTransaction::TYPE_CREATE;
18 $types[] = HarbormasterBuildStepTransaction::TYPE_NAME;
19 $types[] = HarbormasterBuildStepTransaction::TYPE_DEPENDS_ON;
20 $types[] = HarbormasterBuildStepTransaction::TYPE_DESCRIPTION;
22 return $types;
25 protected function getCustomTransactionOldValue(
26 PhabricatorLiskDAO $object,
27 PhabricatorApplicationTransaction $xaction) {
29 switch ($xaction->getTransactionType()) {
30 case HarbormasterBuildStepTransaction::TYPE_CREATE:
31 return null;
32 case HarbormasterBuildStepTransaction::TYPE_NAME:
33 if ($this->getIsNewObject()) {
34 return null;
36 return $object->getName();
37 case HarbormasterBuildStepTransaction::TYPE_DEPENDS_ON:
38 if ($this->getIsNewObject()) {
39 return null;
41 return $object->getDetail('dependsOn', array());
42 case HarbormasterBuildStepTransaction::TYPE_DESCRIPTION:
43 if ($this->getIsNewObject()) {
44 return null;
46 return $object->getDescription();
49 return parent::getCustomTransactionOldValue($object, $xaction);
52 protected function getCustomTransactionNewValue(
53 PhabricatorLiskDAO $object,
54 PhabricatorApplicationTransaction $xaction) {
56 switch ($xaction->getTransactionType()) {
57 case HarbormasterBuildStepTransaction::TYPE_CREATE:
58 return true;
59 case HarbormasterBuildStepTransaction::TYPE_NAME:
60 case HarbormasterBuildStepTransaction::TYPE_DEPENDS_ON:
61 case HarbormasterBuildStepTransaction::TYPE_DESCRIPTION:
62 return $xaction->getNewValue();
65 return parent::getCustomTransactionNewValue($object, $xaction);
68 protected function applyCustomInternalTransaction(
69 PhabricatorLiskDAO $object,
70 PhabricatorApplicationTransaction $xaction) {
72 switch ($xaction->getTransactionType()) {
73 case HarbormasterBuildStepTransaction::TYPE_CREATE:
74 return;
75 case HarbormasterBuildStepTransaction::TYPE_NAME:
76 return $object->setName($xaction->getNewValue());
77 case HarbormasterBuildStepTransaction::TYPE_DEPENDS_ON:
78 return $object->setDetail('dependsOn', $xaction->getNewValue());
79 case HarbormasterBuildStepTransaction::TYPE_DESCRIPTION:
80 return $object->setDescription($xaction->getNewValue());
83 return parent::applyCustomInternalTransaction($object, $xaction);
86 protected function applyCustomExternalTransaction(
87 PhabricatorLiskDAO $object,
88 PhabricatorApplicationTransaction $xaction) {
90 switch ($xaction->getTransactionType()) {
91 case HarbormasterBuildStepTransaction::TYPE_CREATE:
92 case HarbormasterBuildStepTransaction::TYPE_NAME:
93 case HarbormasterBuildStepTransaction::TYPE_DEPENDS_ON:
94 case HarbormasterBuildStepTransaction::TYPE_DESCRIPTION:
95 return;
98 return parent::applyCustomExternalTransaction($object, $xaction);