eZ\Publish\Core\Repository\RoleService::getRoleAssignments PHP Метод

getRoleAssignments() публичный Метод

Returns the assigned user and user groups to this role.
public getRoleAssignments ( eZ\Publish\API\Repository\Values\User\Role $role ) : eZ\Publish\API\Repository\Values\User\RoleAssignment[]
$role eZ\Publish\API\Repository\Values\User\Role
Результат eZ\Publish\API\Repository\Values\User\RoleAssignment[]
    public function getRoleAssignments(APIRole $role)
    {
        if ($this->repository->hasAccess('role', 'read') !== true) {
            throw new UnauthorizedException('role', 'read');
        }
        $userService = $this->repository->getUserService();
        $spiRoleAssignments = $this->userHandler->loadRoleAssignmentsByRoleId($role->id);
        $roleAssignments = array();
        foreach ($spiRoleAssignments as $spiRoleAssignment) {
            // First check if the Role is assigned to a User
            // If no User is found, see if it belongs to a UserGroup
            try {
                $user = $userService->loadUser($spiRoleAssignment->contentId);
                $roleAssignments[] = $this->roleDomainMapper->buildDomainUserRoleAssignmentObject($spiRoleAssignment, $user, $role);
            } catch (APINotFoundException $e) {
                try {
                    $userGroup = $userService->loadUserGroup($spiRoleAssignment->contentId);
                    $roleAssignments[] = $this->roleDomainMapper->buildDomainUserGroupRoleAssignmentObject($spiRoleAssignment, $userGroup, $role);
                } catch (APINotFoundException $e) {
                    // Do nothing
                }
            }
        }
        return $roleAssignments;
    }