~ubuntu-branches/ubuntu/saucy/keystone/saucy-proposed

« back to all changes in this revision

Viewing changes to keystone/controllers/roles.py

  • Committer: Bazaar Package Importer
  • Author(s): Chuck Short
  • Date: 2011-08-23 10:18:22 UTC
  • Revision ID: james.westby@ubuntu.com-20110823101822-enve6zceb3lqhuvj
Tags: upstream-1.0~d4~20110823.1078
ImportĀ upstreamĀ versionĀ 1.0~d4~20110823.1078

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
from keystone import utils
 
2
from keystone.common import wsgi
 
3
from keystone.logic.types.role import Role, RoleRef
 
4
import keystone.config as config
 
5
from . import get_marker_limit_and_url
 
6
 
 
7
 
 
8
class RolesController(wsgi.Controller):
 
9
    """Controller for Role related operations"""
 
10
 
 
11
    def __init__(self, options):
 
12
        self.options = options
 
13
 
 
14
    # Not exposed yet.
 
15
    @utils.wrap_error
 
16
    def create_role(self, req):
 
17
        role = utils.get_normalized_request_content(Role, req)
 
18
        return utils.send_result(201, req,
 
19
            config.SERVICE.create_role(utils.get_auth_token(req), role))
 
20
 
 
21
    @utils.wrap_error
 
22
    def delete_role(self, req, role_id):
 
23
        rval = config.SERVICE.delete_role(utils.get_auth_token(req), role_id)
 
24
        return utils.send_result(204, req, rval)
 
25
 
 
26
    @utils.wrap_error
 
27
    def get_roles(self, req):
 
28
        marker, limit, url = get_marker_limit_and_url(req)
 
29
        roles = config.SERVICE.get_roles(
 
30
            utils.get_auth_token(req), marker, limit, url)
 
31
        return utils.send_result(200, req, roles)
 
32
 
 
33
    @utils.wrap_error
 
34
    def get_role(self, req, role_id):
 
35
        role = config.SERVICE.get_role(utils.get_auth_token(req), role_id)
 
36
        return utils.send_result(200, req, role)
 
37
 
 
38
    @utils.wrap_error
 
39
    def create_role_ref(self, req, user_id):
 
40
        roleRef = utils.get_normalized_request_content(RoleRef, req)
 
41
        return utils.send_result(201, req, config.SERVICE.create_role_ref(
 
42
            utils.get_auth_token(req), user_id, roleRef))
 
43
 
 
44
    @utils.wrap_error
 
45
    def get_role_refs(self, req, user_id):
 
46
        marker, limit, url = get_marker_limit_and_url(req)
 
47
        roleRefs = config.SERVICE.get_user_roles(
 
48
            utils.get_auth_token(req), marker, limit, url, user_id)
 
49
 
 
50
        return utils.send_result(200, req, roleRefs)
 
51
 
 
52
    @utils.wrap_error
 
53
    def delete_role_ref(self, req, user_id, role_ref_id):
 
54
        rval = config.SERVICE.delete_role_ref(utils.get_auth_token(req),
 
55
            role_ref_id)
 
56
        return utils.send_result(204, req, rval)