diff --git a/src/applications/auth/phid/PhabricatorAuthPHIDTypeAuthFactor.php b/src/applications/auth/phid/PhabricatorAuthPHIDTypeAuthFactor.php --- a/src/applications/auth/phid/PhabricatorAuthPHIDTypeAuthFactor.php +++ b/src/applications/auth/phid/PhabricatorAuthPHIDTypeAuthFactor.php @@ -4,10 +4,6 @@ const TYPECONST = 'AFTR'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Auth Factor'); } diff --git a/src/applications/calendar/phid/PhabricatorCalendarPHIDTypeEvent.php b/src/applications/calendar/phid/PhabricatorCalendarPHIDTypeEvent.php --- a/src/applications/calendar/phid/PhabricatorCalendarPHIDTypeEvent.php +++ b/src/applications/calendar/phid/PhabricatorCalendarPHIDTypeEvent.php @@ -4,10 +4,6 @@ const TYPECONST = 'CEVT'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Event'); } diff --git a/src/applications/config/phid/PhabricatorConfigPHIDTypeConfig.php b/src/applications/config/phid/PhabricatorConfigPHIDTypeConfig.php --- a/src/applications/config/phid/PhabricatorConfigPHIDTypeConfig.php +++ b/src/applications/config/phid/PhabricatorConfigPHIDTypeConfig.php @@ -4,10 +4,6 @@ const TYPECONST = 'CONF'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Config'); } diff --git a/src/applications/conpherence/phid/PhabricatorConpherencePHIDTypeThread.php b/src/applications/conpherence/phid/PhabricatorConpherencePHIDTypeThread.php --- a/src/applications/conpherence/phid/PhabricatorConpherencePHIDTypeThread.php +++ b/src/applications/conpherence/phid/PhabricatorConpherencePHIDTypeThread.php @@ -4,10 +4,6 @@ const TYPECONST = 'CONP'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Conpherence Thread'); } diff --git a/src/applications/countdown/phid/PhabricatorCountdownPHIDTypeCountdown.php b/src/applications/countdown/phid/PhabricatorCountdownPHIDTypeCountdown.php --- a/src/applications/countdown/phid/PhabricatorCountdownPHIDTypeCountdown.php +++ b/src/applications/countdown/phid/PhabricatorCountdownPHIDTypeCountdown.php @@ -4,10 +4,6 @@ const TYPECONST = 'CDWN'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Countdown'); } diff --git a/src/applications/dashboard/phid/PhabricatorDashboardPHIDTypeDashboard.php b/src/applications/dashboard/phid/PhabricatorDashboardPHIDTypeDashboard.php --- a/src/applications/dashboard/phid/PhabricatorDashboardPHIDTypeDashboard.php +++ b/src/applications/dashboard/phid/PhabricatorDashboardPHIDTypeDashboard.php @@ -4,10 +4,6 @@ const TYPECONST = 'DSHB'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Dashboard'); } diff --git a/src/applications/dashboard/phid/PhabricatorDashboardPHIDTypePanel.php b/src/applications/dashboard/phid/PhabricatorDashboardPHIDTypePanel.php --- a/src/applications/dashboard/phid/PhabricatorDashboardPHIDTypePanel.php +++ b/src/applications/dashboard/phid/PhabricatorDashboardPHIDTypePanel.php @@ -4,10 +4,6 @@ const TYPECONST = 'DSHP'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Panel'); } diff --git a/src/applications/differential/phid/DifferentialPHIDTypeDiff.php b/src/applications/differential/phid/DifferentialPHIDTypeDiff.php --- a/src/applications/differential/phid/DifferentialPHIDTypeDiff.php +++ b/src/applications/differential/phid/DifferentialPHIDTypeDiff.php @@ -4,10 +4,6 @@ const TYPECONST = 'DIFF'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Differential Diff'); } diff --git a/src/applications/differential/phid/DifferentialPHIDTypeRevision.php b/src/applications/differential/phid/DifferentialPHIDTypeRevision.php --- a/src/applications/differential/phid/DifferentialPHIDTypeRevision.php +++ b/src/applications/differential/phid/DifferentialPHIDTypeRevision.php @@ -4,10 +4,6 @@ const TYPECONST = 'DREV'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Revision'); } diff --git a/src/applications/diviner/phid/DivinerPHIDTypeAtom.php b/src/applications/diviner/phid/DivinerPHIDTypeAtom.php --- a/src/applications/diviner/phid/DivinerPHIDTypeAtom.php +++ b/src/applications/diviner/phid/DivinerPHIDTypeAtom.php @@ -4,10 +4,6 @@ const TYPECONST = 'ATOM'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Atom'); } diff --git a/src/applications/diviner/phid/DivinerPHIDTypeBook.php b/src/applications/diviner/phid/DivinerPHIDTypeBook.php --- a/src/applications/diviner/phid/DivinerPHIDTypeBook.php +++ b/src/applications/diviner/phid/DivinerPHIDTypeBook.php @@ -4,10 +4,6 @@ const TYPECONST = 'BOOK'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Book'); } diff --git a/src/applications/drydock/phid/DrydockPHIDTypeBlueprint.php b/src/applications/drydock/phid/DrydockPHIDTypeBlueprint.php --- a/src/applications/drydock/phid/DrydockPHIDTypeBlueprint.php +++ b/src/applications/drydock/phid/DrydockPHIDTypeBlueprint.php @@ -4,10 +4,6 @@ const TYPECONST = 'DRYB'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Blueprint'); } diff --git a/src/applications/drydock/phid/DrydockPHIDTypeLease.php b/src/applications/drydock/phid/DrydockPHIDTypeLease.php --- a/src/applications/drydock/phid/DrydockPHIDTypeLease.php +++ b/src/applications/drydock/phid/DrydockPHIDTypeLease.php @@ -4,10 +4,6 @@ const TYPECONST = 'DRYL'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Drydock Lease'); } diff --git a/src/applications/drydock/phid/DrydockPHIDTypeResource.php b/src/applications/drydock/phid/DrydockPHIDTypeResource.php --- a/src/applications/drydock/phid/DrydockPHIDTypeResource.php +++ b/src/applications/drydock/phid/DrydockPHIDTypeResource.php @@ -4,10 +4,6 @@ const TYPECONST = 'DRYR'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Drydock Resource'); } diff --git a/src/applications/files/phid/PhabricatorFilePHIDTypeFile.php b/src/applications/files/phid/PhabricatorFilePHIDTypeFile.php --- a/src/applications/files/phid/PhabricatorFilePHIDTypeFile.php +++ b/src/applications/files/phid/PhabricatorFilePHIDTypeFile.php @@ -4,10 +4,6 @@ const TYPECONST = 'FILE'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('File'); } diff --git a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuild.php b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuild.php --- a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuild.php +++ b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuild.php @@ -4,10 +4,6 @@ const TYPECONST = 'HMBD'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Build'); } diff --git a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildItem.php b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildItem.php --- a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildItem.php +++ b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildItem.php @@ -4,10 +4,6 @@ const TYPECONST = 'HMBI'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Build Item'); } diff --git a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildLog.php b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildLog.php --- a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildLog.php +++ b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildLog.php @@ -4,10 +4,6 @@ const TYPECONST = 'HMCL'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Build Log'); } diff --git a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildPlan.php b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildPlan.php --- a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildPlan.php +++ b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildPlan.php @@ -4,10 +4,6 @@ const TYPECONST = 'HMCP'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Build Plan'); } diff --git a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildStep.php b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildStep.php --- a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildStep.php +++ b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildStep.php @@ -4,10 +4,6 @@ const TYPECONST = 'HMCS'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Build Step'); } diff --git a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildTarget.php b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildTarget.php --- a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildTarget.php +++ b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildTarget.php @@ -4,10 +4,6 @@ const TYPECONST = 'HMBT'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Build Target'); } diff --git a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildable.php b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildable.php --- a/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildable.php +++ b/src/applications/harbormaster/phid/HarbormasterPHIDTypeBuildable.php @@ -4,10 +4,6 @@ const TYPECONST = 'HMBB'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Buildable'); } diff --git a/src/applications/herald/phid/HeraldPHIDTypeRule.php b/src/applications/herald/phid/HeraldPHIDTypeRule.php --- a/src/applications/herald/phid/HeraldPHIDTypeRule.php +++ b/src/applications/herald/phid/HeraldPHIDTypeRule.php @@ -4,10 +4,6 @@ const TYPECONST = 'HRUL'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Herald Rule'); } diff --git a/src/applications/legalpad/phid/PhabricatorLegalpadPHIDTypeDocument.php b/src/applications/legalpad/phid/PhabricatorLegalpadPHIDTypeDocument.php --- a/src/applications/legalpad/phid/PhabricatorLegalpadPHIDTypeDocument.php +++ b/src/applications/legalpad/phid/PhabricatorLegalpadPHIDTypeDocument.php @@ -4,10 +4,6 @@ const TYPECONST = 'LEGD'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Legalpad Document'); } diff --git a/src/applications/macro/phid/PhabricatorMacroPHIDTypeMacro.php b/src/applications/macro/phid/PhabricatorMacroPHIDTypeMacro.php --- a/src/applications/macro/phid/PhabricatorMacroPHIDTypeMacro.php +++ b/src/applications/macro/phid/PhabricatorMacroPHIDTypeMacro.php @@ -4,10 +4,6 @@ const TYPECONST = 'MCRO'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Image Macro'); } diff --git a/src/applications/mailinglists/phid/PhabricatorMailingListPHIDTypeList.php b/src/applications/mailinglists/phid/PhabricatorMailingListPHIDTypeList.php --- a/src/applications/mailinglists/phid/PhabricatorMailingListPHIDTypeList.php +++ b/src/applications/mailinglists/phid/PhabricatorMailingListPHIDTypeList.php @@ -4,10 +4,6 @@ const TYPECONST = 'MLST'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Mailing List'); } diff --git a/src/applications/maniphest/phid/ManiphestPHIDTypeTask.php b/src/applications/maniphest/phid/ManiphestPHIDTypeTask.php --- a/src/applications/maniphest/phid/ManiphestPHIDTypeTask.php +++ b/src/applications/maniphest/phid/ManiphestPHIDTypeTask.php @@ -4,10 +4,6 @@ const TYPECONST = 'TASK'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Task'); } diff --git a/src/applications/meta/phid/PhabricatorApplicationPHIDTypeApplication.php b/src/applications/meta/phid/PhabricatorApplicationPHIDTypeApplication.php --- a/src/applications/meta/phid/PhabricatorApplicationPHIDTypeApplication.php +++ b/src/applications/meta/phid/PhabricatorApplicationPHIDTypeApplication.php @@ -5,10 +5,6 @@ const TYPECONST = 'APPS'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Application'); } diff --git a/src/applications/nuance/phid/NuancePHIDTypeItem.php b/src/applications/nuance/phid/NuancePHIDTypeItem.php --- a/src/applications/nuance/phid/NuancePHIDTypeItem.php +++ b/src/applications/nuance/phid/NuancePHIDTypeItem.php @@ -1,14 +1,9 @@ getConstant('TYPECONST'); + if ($const === false) { + throw new Exception( + pht( + 'PHIDType class "%s" must define an TYPECONST property.', + get_class($this))); + } + + if (!is_string($const) || !preg_match('/^[A-Z]{4}$/', $const)) { + throw new Exception( + pht( + 'PHIDType class "%s" has an invalid TYPECONST property. PHID '. + 'constants must be a four character uppercase string.', + get_class($this))); + } + + return $const; + } + abstract public function getTypeName(); public function newObject() { diff --git a/src/applications/phlux/phid/PhluxPHIDTypeVariable.php b/src/applications/phlux/phid/PhluxPHIDTypeVariable.php --- a/src/applications/phlux/phid/PhluxPHIDTypeVariable.php +++ b/src/applications/phlux/phid/PhluxPHIDTypeVariable.php @@ -4,10 +4,6 @@ const TYPECONST = 'PVAR'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Variable'); } diff --git a/src/applications/pholio/phid/PholioPHIDTypeImage.php b/src/applications/pholio/phid/PholioPHIDTypeImage.php --- a/src/applications/pholio/phid/PholioPHIDTypeImage.php +++ b/src/applications/pholio/phid/PholioPHIDTypeImage.php @@ -4,10 +4,6 @@ const TYPECONST = 'PIMG'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Image'); } diff --git a/src/applications/pholio/phid/PholioPHIDTypeMock.php b/src/applications/pholio/phid/PholioPHIDTypeMock.php --- a/src/applications/pholio/phid/PholioPHIDTypeMock.php +++ b/src/applications/pholio/phid/PholioPHIDTypeMock.php @@ -4,10 +4,6 @@ const TYPECONST = 'MOCK'; - public function getTypeConstant() { - return self::TYPECONST; - } - public function getTypeName() { return pht('Mock'); } diff --git a/src/applications/phragment/phid/PhragmentPHIDTypeFragment.php b/src/applications/phragment/phid/PhragmentPHIDTypeFragment.php --- a/src/applications/phragment/phid/PhragmentPHIDTypeFragment.php +++ b/src/applications/phragment/phid/PhragmentPHIDTypeFragment.php @@ -1,14 +1,9 @@