Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F15391360
D19647.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
12 KB
Referenced Files
None
Subscribers
None
D19647.diff
View Options
diff --git a/src/applications/audit/constants/PhabricatorAuditCommitStatusConstants.php b/src/applications/audit/constants/PhabricatorAuditCommitStatusConstants.php
--- a/src/applications/audit/constants/PhabricatorAuditCommitStatusConstants.php
+++ b/src/applications/audit/constants/PhabricatorAuditCommitStatusConstants.php
@@ -60,6 +60,30 @@
return idx($this->spec, 'name', pht('Unknown ("%s")', $this->key));
}
+ public function isNoAudit() {
+ return ($this->key == self::MODERN_NONE);
+ }
+
+ public function isConcernRaised() {
+ return ($this->key == self::MODERN_CONCERN_RAISED);
+ }
+
+ public function isNeedsVerification() {
+ return ($this->key == self::MODERN_NEEDS_VERIFICATION);
+ }
+
+ public function isPartiallyAudited() {
+ return ($this->key == self::MODERN_PARTIALLY_AUDITED);
+ }
+
+ public function isAudited() {
+ return ($this->key == self::MODERN_AUDITED);
+ }
+
+ public function getIsClosed() {
+ return idx($this->spec, 'closed');
+ }
+
public static function getStatusNameMap() {
$map = self::getMap();
return ipull($map, 'name', 'legacy');
diff --git a/src/applications/audit/editor/PhabricatorAuditEditor.php b/src/applications/audit/editor/PhabricatorAuditEditor.php
--- a/src/applications/audit/editor/PhabricatorAuditEditor.php
+++ b/src/applications/audit/editor/PhabricatorAuditEditor.php
@@ -206,12 +206,10 @@
$object->writeImportStatusFlag($import_status_flag);
}
- $partial_status = PhabricatorAuditCommitStatusConstants::PARTIALLY_AUDITED;
-
// If the commit has changed state after this edit, add an informational
// transaction about the state change.
if ($old_status != $new_status) {
- if ($new_status == $partial_status) {
+ if ($object->isAuditStatusPartiallyAudited()) {
// This state isn't interesting enough to get a transaction. The
// best way we could lead the user forward is something like "This
// commit still requires additional audits." but that's redundant and
diff --git a/src/applications/diffusion/controller/DiffusionCommitController.php b/src/applications/diffusion/controller/DiffusionCommitController.php
--- a/src/applications/diffusion/controller/DiffusionCommitController.php
+++ b/src/applications/diffusion/controller/DiffusionCommitController.php
@@ -171,13 +171,12 @@
->setHeaderIcon('fa-code-fork')
->addTag($commit_tag);
- if ($commit->getAuditStatus()) {
- $icon = PhabricatorAuditCommitStatusConstants::getStatusIcon(
- $commit->getAuditStatus());
- $color = PhabricatorAuditCommitStatusConstants::getStatusColor(
- $commit->getAuditStatus());
- $status = PhabricatorAuditCommitStatusConstants::getStatusName(
- $commit->getAuditStatus());
+ if (!$commit->isAuditStatusNoAudit()) {
+ $status = $commit->getAuditStatusObject();
+
+ $icon = $status->getIcon();
+ $color = $status->getColor();
+ $status = $status->getName();
$header->setStatus($icon, $color, $status);
}
diff --git a/src/applications/diffusion/doorkeeper/DiffusionDoorkeeperCommitFeedStoryPublisher.php b/src/applications/diffusion/doorkeeper/DiffusionDoorkeeperCommitFeedStoryPublisher.php
--- a/src/applications/diffusion/doorkeeper/DiffusionDoorkeeperCommitFeedStoryPublisher.php
+++ b/src/applications/diffusion/doorkeeper/DiffusionDoorkeeperCommitFeedStoryPublisher.php
@@ -31,8 +31,6 @@
// After ApplicationTransactions, we could annotate feed stories more
// explicitly.
- $fully_audited = PhabricatorAuditCommitStatusConstants::FULLY_AUDITED;
-
$story = $this->getFeedStory();
$xaction = $story->getPrimaryTransaction();
switch ($xaction->getTransactionType()) {
@@ -41,7 +39,7 @@
case PhabricatorAuditActionConstants::CLOSE:
return true;
case PhabricatorAuditActionConstants::ACCEPT:
- if ($object->getAuditStatus() == $fully_audited) {
+ if ($object->isAuditStatusAudited()) {
return true;
}
break;
@@ -165,14 +163,7 @@
}
public function isObjectClosed($object) {
- switch ($object->getAuditStatus()) {
- case PhabricatorAuditCommitStatusConstants::NEEDS_AUDIT:
- case PhabricatorAuditCommitStatusConstants::CONCERN_RAISED:
- case PhabricatorAuditCommitStatusConstants::PARTIALLY_AUDITED:
- return false;
- default:
- return true;
- }
+ return $object->getAuditStatusObject()->getIsClosed();
}
public function getResponsibilityTitle($object) {
diff --git a/src/applications/diffusion/engineextension/DiffusionHovercardEngineExtension.php b/src/applications/diffusion/engineextension/DiffusionHovercardEngineExtension.php
--- a/src/applications/diffusion/engineextension/DiffusionHovercardEngineExtension.php
+++ b/src/applications/diffusion/engineextension/DiffusionHovercardEngineExtension.php
@@ -41,12 +41,12 @@
$hovercard->addField(pht('Date'),
phabricator_date($commit->getEpoch(), $viewer));
- if ($commit->getAuditStatus() !=
- PhabricatorAuditCommitStatusConstants::NONE) {
+ if (!$commit->isAuditStatusNoAudit()) {
+ $status = $commit->getAuditStatusObject();
- $hovercard->addField(pht('Audit Status'),
- PhabricatorAuditCommitStatusConstants::getStatusName(
- $commit->getAuditStatus()));
+ $hovercard->addField(
+ pht('Audit Status'),
+ $status->getName());
}
}
diff --git a/src/applications/diffusion/query/DiffusionCommitRequiredActionResultBucket.php b/src/applications/diffusion/query/DiffusionCommitRequiredActionResultBucket.php
--- a/src/applications/diffusion/query/DiffusionCommitRequiredActionResultBucket.php
+++ b/src/applications/diffusion/query/DiffusionCommitRequiredActionResultBucket.php
@@ -69,14 +69,12 @@
$results = array();
$objects = $this->objects;
- $status_concern = PhabricatorAuditCommitStatusConstants::CONCERN_RAISED;
-
foreach ($objects as $key => $object) {
if (empty($phids[$object->getAuthorPHID()])) {
continue;
}
- if ($object->getAuditStatus() != $status_concern) {
+ if (!$object->isAuditStatusConcernRaised()) {
continue;
}
@@ -91,7 +89,6 @@
$results = array();
$objects = $this->objects;
- $status_verify = PhabricatorAuditCommitStatusConstants::NEEDS_VERIFICATION;
$has_concern = array(
PhabricatorAuditStatusConstants::CONCERNED,
);
@@ -102,7 +99,7 @@
continue;
}
- if ($object->getAuditStatus() != $status_verify) {
+ if (!$object->isAuditStatusNeedsVerification()) {
continue;
}
@@ -147,10 +144,8 @@
$results = array();
$objects = $this->objects;
- $status_concern = PhabricatorAuditCommitStatusConstants::CONCERN_RAISED;
-
foreach ($objects as $key => $object) {
- if ($object->getAuditStatus() != $status_concern) {
+ if (!$object->isAuditStatusConcernRaised()) {
continue;
}
diff --git a/src/applications/diffusion/xaction/DiffusionCommitConcernTransaction.php b/src/applications/diffusion/xaction/DiffusionCommitConcernTransaction.php
--- a/src/applications/diffusion/xaction/DiffusionCommitConcernTransaction.php
+++ b/src/applications/diffusion/xaction/DiffusionCommitConcernTransaction.php
@@ -54,10 +54,8 @@
// Even if you've already raised a concern, you can raise again as long
// as the author requested you verify.
- $state_verify = PhabricatorAuditCommitStatusConstants::NEEDS_VERIFICATION;
-
if ($this->isViewerFullyRejected($object, $viewer)) {
- if ($object->getAuditStatus() != $state_verify) {
+ if (!$object->isAuditStatusNeedsVerification()) {
throw new Exception(
pht(
'You can not raise a concern with this commit because you have '.
diff --git a/src/applications/diffusion/xaction/DiffusionCommitStateTransaction.php b/src/applications/diffusion/xaction/DiffusionCommitStateTransaction.php
--- a/src/applications/diffusion/xaction/DiffusionCommitStateTransaction.php
+++ b/src/applications/diffusion/xaction/DiffusionCommitStateTransaction.php
@@ -11,29 +11,32 @@
throw new PhutilMethodNotImplementedException();
}
- public function getIcon() {
+ private function getAuditStatusObject() {
$new = $this->getNewValue();
- return PhabricatorAuditCommitStatusConstants::getStatusIcon($new);
+ return PhabricatorAuditCommitStatusConstants::newForLegacyStatus($new);
+ }
+
+ public function getIcon() {
+ return $this->getAuditStatusObject()->getIcon();
}
public function getColor() {
- $new = $this->getNewValue();
- return PhabricatorAuditCommitStatusConstants::getStatusColor($new);
+ return $this->getAuditStatusObject()->getColor();
}
public function getTitle() {
- $new = $this->getNewValue();
+ $status = $this->getAuditStatusObject();
- switch ($new) {
- case PhabricatorAuditCommitStatusConstants::NONE:
+ switch ($status->getKey()) {
+ case PhabricatorAuditCommitStatusConstants::MODERN_NONE:
return pht('This commit no longer requires audit.');
- case PhabricatorAuditCommitStatusConstants::NEEDS_AUDIT:
+ case PhabricatorAuditCommitStatusConstants::MODERN_NEEDS_AUDIT:
return pht('This commit now requires audit.');
- case PhabricatorAuditCommitStatusConstants::CONCERN_RAISED:
+ case PhabricatorAuditCommitStatusConstants::MODERN_CONCERN_RAISED:
return pht('This commit now has outstanding concerns.');
- case PhabricatorAuditCommitStatusConstants::NEEDS_VERIFICATION:
+ case PhabricatorAuditCommitStatusConstants::MODERN_NEEDS_VERIFICATION:
return pht('This commit now requires verification by auditors.');
- case PhabricatorAuditCommitStatusConstants::FULLY_AUDITED:
+ case PhabricatorAuditCommitStatusConstants::MODERN_AUDITED:
return pht('All concerns with this commit have now been addressed.');
}
@@ -41,26 +44,26 @@
}
public function getTitleForFeed() {
- $new = $this->getNewValue();
+ $status = $this->getAuditStatusObject();
- switch ($new) {
- case PhabricatorAuditCommitStatusConstants::NONE:
+ switch ($status->getKey()) {
+ case PhabricatorAuditCommitStatusConstants::MODERN_NONE:
return pht(
'%s no longer requires audit.',
$this->renderObject());
- case PhabricatorAuditCommitStatusConstants::NEEDS_AUDIT:
+ case PhabricatorAuditCommitStatusConstants::MODERN_NEEDS_AUDIT:
return pht(
'%s now requires audit.',
$this->renderObject());
- case PhabricatorAuditCommitStatusConstants::CONCERN_RAISED:
+ case PhabricatorAuditCommitStatusConstants::MODERN_CONCERN_RAISED:
return pht(
'%s now has outstanding concerns.',
$this->renderObject());
- case PhabricatorAuditCommitStatusConstants::NEEDS_VERIFICATION:
+ case PhabricatorAuditCommitStatusConstants::MODERN_NEEDS_VERIFICATION:
return pht(
'%s now requires verification by auditors.',
$this->renderObject());
- case PhabricatorAuditCommitStatusConstants::FULLY_AUDITED:
+ case PhabricatorAuditCommitStatusConstants::MODERN_AUDITED:
return pht(
'All concerns with %s have now been addressed.',
$this->renderObject());
diff --git a/src/applications/diffusion/xaction/DiffusionCommitVerifyTransaction.php b/src/applications/diffusion/xaction/DiffusionCommitVerifyTransaction.php
--- a/src/applications/diffusion/xaction/DiffusionCommitVerifyTransaction.php
+++ b/src/applications/diffusion/xaction/DiffusionCommitVerifyTransaction.php
@@ -48,8 +48,7 @@
'are not the author.'));
}
- $status = $object->getAuditStatus();
- if ($status != PhabricatorAuditCommitStatusConstants::CONCERN_RAISED) {
+ if (!$object->isAuditStatusConcernRaised()) {
throw new Exception(
pht(
'You can not request verification of this commit because no '.
diff --git a/src/applications/repository/storage/PhabricatorRepositoryCommit.php b/src/applications/repository/storage/PhabricatorRepositoryCommit.php
--- a/src/applications/repository/storage/PhabricatorRepositoryCommit.php
+++ b/src/applications/repository/storage/PhabricatorRepositoryCommit.php
@@ -535,6 +535,26 @@
return PhabricatorAuditCommitStatusConstants::newForLegacyStatus($status);
}
+ public function isAuditStatusNoAudit() {
+ return $this->getAuditStatusObject()->isNoAudit();
+ }
+
+ public function isAuditStatusConcernRaised() {
+ return $this->getAuditStatusObject()->isConcernRaised();
+ }
+
+ public function isAuditStatusNeedsVerification() {
+ return $this->getAuditStatusObject()->isNeedsVerification();
+ }
+
+ public function isAuditStatusPartiallyAudited() {
+ return $this->getAuditStatusObject()->isPartiallyAudited();
+ }
+
+ public function isAuditStatusAudited() {
+ return $this->getAuditStatusObject()->isAudited();
+ }
+
/* -( PhabricatorPolicyInterface )----------------------------------------- */
public function getCapabilities() {
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Mar 16, 9:30 AM (6 d, 5 h ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7583429
Default Alt Text
D19647.diff (12 KB)
Attached To
Mode
D19647: Continue replacing Commit/Audit status checks with object-based checks
Attached
Detach File
Event Timeline
Log In to Comment