/** * Builds a full rule set with a rule and results. * * @param array $data * * @return RuleSet */ public function buildRuleSet($data) { $ruleSet = new RuleSet(); if (isset($data['identifier'])) { $ruleSet->setIdentifier($data['identifier']); } // Build the rule if (isset($data['rule'])) { $ruleSet->setRule($this->buildRule($data['rule'])); } // Loop over each result and build that too if (isset($data['result'])) { foreach ($data['result'] as $result) { $ruleSet->addResult($this->buildResult($result)); } } return $ruleSet; }