public function addPolicy($roleId, Request $request)
    {
        $createStruct = $this->inputDispatcher->parse(
            new Message(
                array('Content-Type' => $request->headers->get('Content-Type')),
                $request->getContent()
            )
        );

        try {
            // First try to treat $roleId as a role draft ID.
            $role = $this->roleService->addPolicyByRoleDraft(
                $this->roleService->loadRoleDraft($roleId),
                $createStruct
            );
        } catch (NotFoundException $e) {
            // Then try to treat $roleId as a role ID.
            $role = $this->roleService->addPolicy(
                $this->roleService->loadRole($roleId),
                $createStruct
            );
        } catch (LimitationValidationException $e) {
            throw new BadRequestException($e->getMessage());
        }

        return new Values\CreatedPolicy(
            array(
                'policy' => $this->getLastAddedPolicy($role),
            )
        );
    }
public function addPolicy($roleId, Request $request)
    {
        $createStruct = $this->inputDispatcher->parse(
            new Message(
                array('Content-Type' => $request->headers->get('Content-Type')),
                $request->getContent()
            )
        );

        try {
            // First try to treat $roleId as a role draft ID.
            $role = $this->roleService->addPolicyByRoleDraft(
                $this->roleService->loadRoleDraft($roleId),
                $createStruct
            );
        } catch (NotFoundException $e) {
            // Then try to treat $roleId as a role ID.
            $role = $this->roleService->addPolicy(
                $this->roleService->loadRole($roleId),
                $createStruct
            );
        } catch (LimitationValidationException $e) {
            throw new BadRequestException($e->getMessage());
        }

        return new Values\CreatedPolicy(
            array(
                'policy' => $this->getLastAddedPolicy($role),
            )
        );
    }
public function addPolicy ( $ roleId , Request $ request ) { $ createStruct = $ this -> inputDispatcher -> parse ( new Message ( array ( 'Content-Type' => $ request -> headers -> get ( 'Content-Type' ) ) , $ request -> getContent ( ) ) ) ; try { // First try to treat $roleId as a role draft ID. $ role = $ this -> roleService -> addPolicyByRoleDraft ( $ this -> roleService -> loadRoleDraft ( $ roleId ) , $ createStruct ) ; } catch ( NotFoundException $ e ) { // Then try to treat $roleId as a role ID. $ role = $ this -> roleService -> addPolicy ( $ this -> roleService -> loadRole ( $ roleId ) , $ createStruct ) ; } catch ( LimitationValidationException $ e ) { throw new BadRequestException ( $ e -> getMessage ( ) ) ; } return new Values \ CreatedPolicy ( array ( 'policy' => $ this -> getLastAddedPolicy ( $ role ) , ) ) ; }
Adds a policy to role.

@param $roleId int ID of a role or a role draft

@return \eZ\Publish\Core\REST\Server\Values\CreatedPolicy
Adds a policy to role .