Class: SDM::RoleGrants
- Inherits:
-
Object
- Object
- SDM::RoleGrants
- Defined in:
- lib/svc.rb
Overview
RoleGrants represent relationships between composite roles and the roles that make up those composite roles. When a composite role is attached to another role, the permissions granted to members of the composite role are augmented to include the permissions granted to members of the attached role.
Instance Method Summary collapse
-
#create(role_grant, deadline: nil) ⇒ Object
Create registers a new RoleGrant.
-
#delete(id, deadline: nil) ⇒ Object
Delete removes a RoleGrant by ID.
-
#get(id, deadline: nil) ⇒ Object
Get reads one RoleGrant by ID.
-
#initialize(host, insecure, parent) ⇒ RoleGrants
constructor
A new instance of RoleGrants.
-
#list(filter, *args, deadline: nil) ⇒ Object
List gets a list of RoleGrants matching a given set of criteria.
Constructor Details
#initialize(host, insecure, parent) ⇒ RoleGrants
Returns a new instance of RoleGrants.
1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 |
# File 'lib/svc.rb', line 1033 def initialize(host, insecure, parent) begin if insecure @stub = V1::RoleGrants::Stub.new(host, :this_channel_is_insecure) else cred = GRPC::Core::ChannelCredentials.new() @stub = V1::RoleGrants::Stub.new(host, cred) end rescue => exception raise Plumbing::convert_error_to_porcelain(exception) end @parent = parent end |
Instance Method Details
#create(role_grant, deadline: nil) ⇒ Object
Create registers a new RoleGrant.
1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 |
# File 'lib/svc.rb', line 1048 def create( role_grant, deadline: nil ) req = V1::RoleGrantCreateRequest.new() req.role_grant = Plumbing::convert_role_grant_to_plumbing(role_grant) tries = 0 plumbing_response = nil loop do begin plumbing_response = @stub.create(req, metadata: @parent.("RoleGrants.Create", req), deadline: deadline) rescue => exception if (@parent.shouldRetry(tries, exception)) tries + +@parent.jitterSleep(tries) next end raise Plumbing::convert_error_to_porcelain(exception) end break end resp = RoleGrantCreateResponse.new() resp. = Plumbing::(plumbing_response.) resp.role_grant = Plumbing::convert_role_grant_to_porcelain(plumbing_response.role_grant) resp.rate_limit = Plumbing::(plumbing_response.rate_limit) resp end |
#delete(id, deadline: nil) ⇒ Object
Delete removes a RoleGrant by ID.
1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 |
# File 'lib/svc.rb', line 1108 def delete( id, deadline: nil ) req = V1::RoleGrantDeleteRequest.new() req.id = (id) tries = 0 plumbing_response = nil loop do begin plumbing_response = @stub.delete(req, metadata: @parent.("RoleGrants.Delete", req), deadline: deadline) rescue => exception if (@parent.shouldRetry(tries, exception)) tries + +@parent.jitterSleep(tries) next end raise Plumbing::convert_error_to_porcelain(exception) end break end resp = RoleGrantDeleteResponse.new() resp. = Plumbing::(plumbing_response.) resp.rate_limit = Plumbing::(plumbing_response.rate_limit) resp end |
#get(id, deadline: nil) ⇒ Object
Get reads one RoleGrant by ID.
1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 |
# File 'lib/svc.rb', line 1078 def get( id, deadline: nil ) req = V1::RoleGrantGetRequest.new() req.id = (id) tries = 0 plumbing_response = nil loop do begin plumbing_response = @stub.get(req, metadata: @parent.("RoleGrants.Get", req), deadline: deadline) rescue => exception if (@parent.shouldRetry(tries, exception)) tries + +@parent.jitterSleep(tries) next end raise Plumbing::convert_error_to_porcelain(exception) end break end resp = RoleGrantGetResponse.new() resp. = Plumbing::(plumbing_response.) resp.role_grant = Plumbing::convert_role_grant_to_porcelain(plumbing_response.role_grant) resp.rate_limit = Plumbing::(plumbing_response.rate_limit) resp end |
#list(filter, *args, deadline: nil) ⇒ Object
List gets a list of RoleGrants matching a given set of criteria.
1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 |
# File 'lib/svc.rb', line 1137 def list( filter, *args, deadline: nil ) req = V1::RoleGrantListRequest.new() req. = V1::ListRequestMetadata.new() page_size_option = @parent.["PageSize"] if page_size_option.is_a? Integer req..limit = page_size_option end req.filter = Plumbing::quote_filter_args(filter, *args) resp = Enumerator::Generator.new { |g| tries = 0 loop do begin plumbing_response = @stub.list(req, metadata: @parent.("RoleGrants.List", req), deadline: deadline) rescue => exception if (@parent.shouldRetry(tries, exception)) tries + +@parent.jitterSleep(tries) next end raise Plumbing::convert_error_to_porcelain(exception) end tries = 0 plumbing_response.role_grants.each do |plumbing_item| g.yield Plumbing::convert_role_grant_to_porcelain(plumbing_item) end break if plumbing_response..next_cursor == "" req..cursor = plumbing_response..next_cursor end } resp end |