Changeset View
Changeset View
Standalone View
Standalone View
src/applications/policy/storage/PhabricatorPolicy.php
Show First 20 Lines • Show All 315 Lines • ▼ Show 20 Lines | final class PhabricatorPolicy | ||||
* @{class:PhabricatorPolicyRule}) this policy uses. | * @{class:PhabricatorPolicyRule}) this policy uses. | ||||
* | * | ||||
* @return list<string> List of class names. | * @return list<string> List of class names. | ||||
*/ | */ | ||||
public function getCustomRuleClasses() { | public function getCustomRuleClasses() { | ||||
$classes = array(); | $classes = array(); | ||||
foreach ($this->getRules() as $rule) { | foreach ($this->getRules() as $rule) { | ||||
if (!is_array($rule)) { | |||||
// This rule is invalid. We'll reject it later, but don't need to | |||||
// extract anything from it for now. | |||||
continue; | |||||
} | |||||
$class = idx($rule, 'rule'); | $class = idx($rule, 'rule'); | ||||
try { | try { | ||||
if (class_exists($class)) { | if (class_exists($class)) { | ||||
$classes[$class] = $class; | $classes[$class] = $class; | ||||
} | } | ||||
} catch (Exception $ex) { | } catch (Exception $ex) { | ||||
continue; | continue; | ||||
} | } | ||||
▲ Show 20 Lines • Show All 123 Lines • Show Last 20 Lines |