Scalr\Api\Service\User\V1beta0\Controller\Roles::createAction PHP Метод

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

Creates a new Role in this Environment
public createAction ( )
    public function createAction()
    {
        $this->checkPermissions(Acl::RESOURCE_ROLES_ENVIRONMENT, Acl::PERM_ROLES_ENVIRONMENT_MANAGE);
        $object = $this->request->getJsonBody();
        $roleAdapter = $this->adapter('role');
        //Pre validates the request object
        $roleAdapter->validateObject($object, Request::METHOD_POST);
        //Read only property. It is needed before toEntity() call to set envId and accountId properties properly
        $object->scope = $this->getScope();
        /* @var $role Entity\Role */
        //Converts object into Role entity
        $role = $roleAdapter->toEntity($object);
        $role->id = null;
        $roleAdapter->validateEntity($role);
        //Saves entity
        $role->save();
        //Responds with 201 Created status
        $this->response->setStatus(201);
        return $this->result($roleAdapter->toData($role));
    }