Beispiel #1
0
 def GET(self, release_id, role_name):
     """:http:
         * 200 (OK)
         * 404 (no such object found)
     """
     release = self.get_object_or_404(objects.Release, release_id)
     return RoleSerializer.serialize_from_release(release, role_name)
Beispiel #2
0
 def GET(self, release_id):
     release = self.get_object_or_404(objects.Release, release_id)
     role_names = six.iterkeys(release.roles_metadata)
     return [
         RoleSerializer.serialize_from_release(release, name)
         for name in role_names
     ]
Beispiel #3
0
 def GET(self, release_id):
     """:http:
         * 200 (OK)
     """
     release = self.get_object_or_404(objects.Release, release_id)
     role_names = six.iterkeys(release.roles_metadata)
     return [RoleSerializer.serialize_from_release(release, name)
             for name in role_names]
Beispiel #4
0
    def GET(self, release_id, role_name):
        """Retrieve role

        :http:
            * 200 (OK)
            * 404 (no such object found)
        """
        release = self.get_object_or_404(objects.Release, release_id)
        return RoleSerializer.serialize_from_release(release, role_name)
Beispiel #5
0
 def PUT(self, release_id, role_name):
     """:http:
         * 200 (OK)
         * 404 (no such object found)
     """
     data = self.checked_data()
     release = self.get_object_or_404(objects.Release, release_id)
     objects.Release.update_role(release, data)
     return RoleSerializer.serialize_from_release(release, role_name)
Beispiel #6
0
 def PUT(self, release_id, role_name):
     """:http:
         * 200 (OK)
         * 404 (no such object found)
     """
     release = self.get_object_or_404(objects.Release, release_id)
     data = self.checked_data(self.validator.validate_update,
                              instance=release)
     objects.Release.update_role(release, data)
     return RoleSerializer.serialize_from_release(release, role_name)
Beispiel #7
0
    def PUT(self, release_id, role_name):
        """Update role

        :http:
            * 200 (OK)
            * 404 (no such object found)
        """
        release = self.get_object_or_404(objects.Release, release_id)
        data = self.checked_data(
            self.validator.validate_update, instance=release)
        objects.Release.update_role(release, data)
        return RoleSerializer.serialize_from_release(release, role_name)
Beispiel #8
0
    def POST(self, release_id):
        """Create role for release

        :http:
            * 201 (object successfully created)
            * 400 (invalid object data specified)
            * 409 (object with such parameters already exists)
        """
        release = self.get_object_or_404(objects.Release, release_id)
        try:
            data = self.checked_data(self.validator.validate_create,
                                     instance=release)
        except errors.AlreadyExists as exc:
            raise self.http(409, exc.message)

        role_name = data['name']
        objects.Release.update_role(release, data)
        raise self.http(
            201, RoleSerializer.serialize_from_release(release, role_name))
Beispiel #9
0
    def POST(self, release_id):
        """Create role for release

        :http:
            * 201 (object successfully created)
            * 400 (invalid object data specified)
            * 409 (object with such parameters already exists)
        """
        release = self.get_object_or_404(objects.Release, release_id)
        try:
            data = self.checked_data(
                self.validator.validate_create, instance=release)
        except errors.AlreadyExists as exc:
            raise self.http(409, exc.message)

        role_name = data['name']
        objects.Release.update_role(release, data)
        raise self.http(
            201, RoleSerializer.serialize_from_release(release, role_name))
Beispiel #10
0
    def POST(self, release_id):
        """:http:
            * 201 (object successfully created)
            * 400 (invalid object data specified)
            * 409 (object with such parameters already exists)
        """
        data = self.checked_data()

        role_name = data['name']
        release = self.get_object_or_404(objects.Release, release_id)

        if role_name in release.roles_metadata:
            raise self.http(
                409, 'Role with name {name} already '
                'exists for release {release}'.format(name=role_name,
                                                      release=release_id))

        objects.Release.update_role(release, data)
        raise self.http(
            201, RoleSerializer.serialize_from_release(release, role_name))
Beispiel #11
0
    def POST(self, release_id):
        """:http:
            * 201 (object successfully created)
            * 400 (invalid object data specified)
            * 409 (object with such parameters already exists)
        """
        data = self.checked_data()

        role_name = data['name']
        release = self.get_object_or_404(objects.Release, release_id)

        if role_name in release.roles_metadata:
            raise self.http(
                409,
                'Role with name {name} already '
                'exists for release {release}'.format(
                    name=role_name, release=release_id))

        objects.Release.update_role(release, data)
        raise self.http(
            201, RoleSerializer.serialize_from_release(release, role_name))