*/ class Db extends AuthenticationIdentityProvider implements ChainableProvider { /** * {@inheritDoc} */ public function getIdentityRolesTrigger(ChainEvent $event) { $event->addRoles($this->getIdentityRoles()); } /** * {@inheritDoc} */ public function getIdentityRoles() { if (!($identity = $this->authService->getIdentity())) { return array($this->defaultRole); } if (is_array($identity) && isset($identity['db'])) { $identity = $identity['db']; } if ($identity instanceof User) { $roles = $identity->getRoles(); $roles[] = $identity->getUsername(); } else { $roles = array(); } if (!$roles) { $roles = array($this->authenticatedRole); } return $roles; } }