public function rulesInit() { $role = $this->roleService->getRoleName("admin"); $rule = null; try { $rule = $this->ruleService->getUniqueRule($role); } catch (Exceptions\NoResultException $ex) { $this->logger->addDebug($ex->getMessage()); } if ($rule === null) { $this->logger->addInfo("Security module initializer - AclRules - no godlike Rule for role {$role} found. New one is gonna be created."); $rule = new AclRule(); $rule->setRole($role); $rule->setResource(null); $rule->setPrivilege(null); $rule->setMode(\App\Model\Misc\Enum\AclMode::PERMIT); $this->ruleService->createRule($rule); } }
private function roleTypeHandle(AclRule $e) { if ($e === null) { throw new Exceptions\NullPointerException("Argument Event cannot be null", 0); } try { $role = null; $id = $this->getMixId($e->getRole()); if ($id !== null) { $role = $this->roleService->getRole($id, false); } $e->setRole($role); } catch (\Exception $e) { throw new Exceptions\DataErrorException($e->getMessage(), $e->getCode(), $e->getPrevious()); } }