PHP Class ZfcRbac\Service\RoleService

Author: Michaël Gallego ([email protected])
Afficher le fichier Open project: zf-commons/zfc-rbac Class Usage Examples

Protected Properties

Свойство Type Description
$guestRole string
$identityProvider ZfcRbac\Identity\IdentityProviderInterface
$roleProvider ZfcRbac\Role\RoleProviderInterface
$traversalStrategy Rbac\Traversal\Strategy\TraversalStrategyInterface

Méthodes publiques

Méthode Description
__construct ( ZfcRbac\Identity\IdentityProviderInterface $identityProvider, ZfcRbac\Role\RoleProviderInterface $roleProvider, Rbac\Traversal\Strategy\TraversalStrategyInterface $traversalStrategy ) Constructor
getGuestRole ( ) : string Get the guest role
getIdentity ( ) : ZfcRbac\Identity\IdentityInterface | null Get the current identity from the identity provider
getIdentityRoles ( ) : Rbac\Role\RoleInterface[] Get the identity roles from the current identity, applying some more logic
matchIdentityRoles ( array $roles ) : boolean Check if the given roles match one of the identity roles
setGuestRole ( string $guestRole ) : void Set the guest role
setIdentityProvider ( ZfcRbac\Identity\IdentityProviderInterface $identityProvider ) Set the identity provider
setRoleProvider ( ZfcRbac\Role\RoleProviderInterface $roleProvider ) Set the role provider

Méthodes protégées

Méthode Description
convertRoles ( array | Traversabl\Traversable $roles ) : Rbac\Role\RoleInterface[] Convert the roles (potentially strings) to concrete RoleInterface objects using role provider
flattenRoles ( array $roles ) : string[] Flatten an array of role with role names

Method Details

__construct() public méthode

Constructor
public __construct ( ZfcRbac\Identity\IdentityProviderInterface $identityProvider, ZfcRbac\Role\RoleProviderInterface $roleProvider, Rbac\Traversal\Strategy\TraversalStrategyInterface $traversalStrategy )
$identityProvider ZfcRbac\Identity\IdentityProviderInterface
$roleProvider ZfcRbac\Role\RoleProviderInterface
$traversalStrategy Rbac\Traversal\Strategy\TraversalStrategyInterface

convertRoles() protected méthode

Convert the roles (potentially strings) to concrete RoleInterface objects using role provider
protected convertRoles ( array | Traversabl\Traversable $roles ) : Rbac\Role\RoleInterface[]
$roles array | Traversabl\Traversable
Résultat Rbac\Role\RoleInterface[]

flattenRoles() protected méthode

This method iterates through the list of roles, and convert any RoleInterface to a string. For any role, it also extracts all the children
protected flattenRoles ( array $roles ) : string[]
$roles array
Résultat string[]

getGuestRole() public méthode

Get the guest role
public getGuestRole ( ) : string
Résultat string

getIdentity() public méthode

Get the current identity from the identity provider
public getIdentity ( ) : ZfcRbac\Identity\IdentityInterface | null
Résultat ZfcRbac\Identity\IdentityInterface | null

getIdentityRoles() public méthode

Get the identity roles from the current identity, applying some more logic
public getIdentityRoles ( ) : Rbac\Role\RoleInterface[]
Résultat Rbac\Role\RoleInterface[]

matchIdentityRoles() public méthode

This method is smart enough to automatically recursively extracts roles for hierarchical roles
public matchIdentityRoles ( array $roles ) : boolean
$roles array
Résultat boolean

setGuestRole() public méthode

Set the guest role
public setGuestRole ( string $guestRole ) : void
$guestRole string
Résultat void

setIdentityProvider() public méthode

Set the identity provider
public setIdentityProvider ( ZfcRbac\Identity\IdentityProviderInterface $identityProvider )
$identityProvider ZfcRbac\Identity\IdentityProviderInterface

setRoleProvider() public méthode

Set the role provider
public setRoleProvider ( ZfcRbac\Role\RoleProviderInterface $roleProvider )
$roleProvider ZfcRbac\Role\RoleProviderInterface

Property Details

$guestRole protected_oe property

protected string $guestRole
Résultat string

$identityProvider protected_oe property

protected IdentityProviderInterface,ZfcRbac\Identity $identityProvider
Résultat ZfcRbac\Identity\IdentityProviderInterface

$roleProvider protected_oe property

protected RoleProviderInterface,ZfcRbac\Role $roleProvider
Résultat ZfcRbac\Role\RoleProviderInterface

$traversalStrategy protected_oe property

protected TraversalStrategyInterface,Rbac\Traversal\Strategy $traversalStrategy
Résultat Rbac\Traversal\Strategy\TraversalStrategyInterface