public function loadRoleByIdentifier($identifier)
    {
        if (!is_string($identifier)) {
            throw new InvalidArgumentValue('identifier', $identifier);
        }

        if ($this->repository->hasAccess('role', 'read') !== true) {
            throw new UnauthorizedException('role', 'read');
        }

        $spiRole = $this->userHandler->loadRoleByIdentifier($identifier);

        return $this->roleDomainMapper->buildDomainRoleObject($spiRole);
    }