1 // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2 // vim: ts=8 sw=2 smarttab
3 #ifndef CEPH_RGW_REST_ROLE_H
4 #define CEPH_RGW_REST_ROLE_H
6 class RGWRestRole : public RGWOp {
16 void send_response() override;
19 class RGWRoleRead : public RGWRestRole {
21 RGWRoleRead() = default;
22 int verify_permission() override;
23 uint32_t op_mask() override { return RGW_OP_TYPE_READ; }
26 class RGWRoleWrite : public RGWRestRole {
28 RGWRoleWrite() = default;
29 int verify_permission() override;
30 uint32_t op_mask() override { return RGW_OP_TYPE_WRITE; }
33 class RGWCreateRole : public RGWRoleWrite {
35 RGWCreateRole() = default;
36 void execute() override;
38 const string name() override { return "create_role"; }
39 RGWOpType get_type() override { return RGW_OP_CREATE_ROLE; }
42 class RGWDeleteRole : public RGWRoleWrite {
44 RGWDeleteRole() = default;
45 void execute() override;
47 const string name() override { return "delete_role"; }
48 RGWOpType get_type() override { return RGW_OP_DELETE_ROLE; }
51 class RGWGetRole : public RGWRoleRead {
53 RGWGetRole() = default;
54 void execute() override;
56 const string name() override { return "get_role"; }
57 RGWOpType get_type() override { return RGW_OP_GET_ROLE; }
60 class RGWModifyRole : public RGWRoleWrite {
62 RGWModifyRole() = default;
63 void execute() override;
65 const string name() override { return "modify_role"; }
66 RGWOpType get_type() override { return RGW_OP_MODIFY_ROLE; }
69 class RGWListRoles : public RGWRoleRead {
71 RGWListRoles() = default;
72 void execute() override;
74 const string name() override { return "list_roles"; }
75 RGWOpType get_type() override { return RGW_OP_LIST_ROLES; }
78 class RGWPutRolePolicy : public RGWRoleWrite {
80 RGWPutRolePolicy() = default;
81 void execute() override;
83 const string name() override { return "put_role_policy"; }
84 RGWOpType get_type() override { return RGW_OP_PUT_ROLE_POLICY; }
87 class RGWGetRolePolicy : public RGWRoleRead {
89 RGWGetRolePolicy() = default;
90 void execute() override;
92 const string name() override { return "get_role_policy"; }
93 RGWOpType get_type() override { return RGW_OP_GET_ROLE_POLICY; }
96 class RGWListRolePolicies : public RGWRoleRead {
98 RGWListRolePolicies() = default;
99 void execute() override;
101 const string name() override { return "list_role_policies"; }
102 RGWOpType get_type() override { return RGW_OP_LIST_ROLE_POLICIES; }
105 class RGWDeleteRolePolicy : public RGWRoleWrite {
107 RGWDeleteRolePolicy() = default;
108 void execute() override;
110 const string name() override { return "delete_role_policy"; }
111 RGWOpType get_type() override { return RGW_OP_DELETE_ROLE_POLICY; }
113 #endif /* CEPH_RGW_REST_ROLE_H */