eZ\Publish\Core\REST\Server\Controller\Role::removePolicyByRoleDraft PHP Метод

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

Remove a policy from a role draft.
Устаревший: since 6.3, use {@see \deletePolicy}
С версии: 6.2
public removePolicyByRoleDraft ( $roleId, $policyId, Request $request ) : eZ\Publish\Core\REST\Server\Values\NoContent
$roleId
$policyId
$request Symfony\Component\HttpFoundation\Request
Результат eZ\Publish\Core\REST\Server\Values\NoContent
    public function removePolicyByRoleDraft($roleId, $policyId, Request $request)
    {
        $roleDraft = $this->roleService->loadRoleDraft($roleId);
        $policy = null;
        foreach ($roleDraft->getPolicies() as $rolePolicy) {
            if ($rolePolicy->id == $policyId) {
                $policy = $rolePolicy;
                break;
            }
        }
        if ($policy !== null) {
            $this->roleService->removePolicyByRoleDraft($roleDraft, $policy);
            return new Values\NoContent();
        }
        throw new Exceptions\NotFoundException("Policy not found: '{$request->getPathInfo()}'.");
    }