AuthManager::executeBizRule PHP Method

executeBizRule() public method

Override of parent to utlise the namespaced rulesets that have been defined.
public executeBizRule ( string $bizRule, array $params, mixed $data ) : boolean
$bizRule string
$params array
$data mixed
return boolean
    public function executeBizRule($bizRule, $params, $data)
    {
        if (!$bizRule) {
            return true;
        }
        $bits = explode('.', $bizRule, 2);
        if (count($bits) == 1) {
            $namespace = 'core';
            $rule = $bizRule;
        } else {
            $namespace = $bits[0];
            $rule = $bits[1];
        }
        if (!isset($this->rulesets[$namespace])) {
            throw new Exception("Unknown ruleset '{$namespace}' for business rule '{$bizRule}'");
        }
        $ruleSet = $this->rulesets[$namespace];
        if (!method_exists($ruleSet, $rule)) {
            throw new Exception("Undefined business rule: '{$bizRule}'");
        }
        unset($params['userId']);
        return call_user_func_array(array($ruleSet, $rule), array_merge((array) $data, $params));
    }