strongdm 15.14.0__zip → 15.16.0__zip

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. {strongdm-15.14.0 → strongdm-15.16.0}/PKG-INFO +4 -4
  2. {strongdm-15.14.0 → strongdm-15.16.0}/README.md +2 -2
  3. {strongdm-15.14.0 → strongdm-15.16.0}/setup.py +2 -2
  4. strongdm-15.16.0/strongdm/accounts_groups_history_pb2.py +100 -0
  5. strongdm-15.16.0/strongdm/accounts_groups_history_pb2_grpc.py +84 -0
  6. strongdm-15.16.0/strongdm/accounts_groups_pb2.py +194 -0
  7. strongdm-15.16.0/strongdm/accounts_groups_pb2_grpc.py +186 -0
  8. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflows_pb2.py +5 -5
  9. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/client.py +59 -1
  10. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/constants.py +7 -0
  11. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/drivers_pb2.py +262 -220
  12. strongdm-15.16.0/strongdm/groups_history_pb2.py +100 -0
  13. strongdm-15.16.0/strongdm/groups_history_pb2_grpc.py +84 -0
  14. strongdm-15.16.0/strongdm/groups_pb2.py +290 -0
  15. strongdm-15.16.0/strongdm/groups_pb2_grpc.py +253 -0
  16. strongdm-15.16.0/strongdm/groups_roles_history_pb2.py +100 -0
  17. strongdm-15.16.0/strongdm/groups_roles_history_pb2_grpc.py +84 -0
  18. strongdm-15.16.0/strongdm/groups_roles_pb2.py +200 -0
  19. strongdm-15.16.0/strongdm/groups_roles_pb2_grpc.py +186 -0
  20. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/models.py +6643 -4987
  21. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/plumbing.py +1256 -11
  22. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/svc.py +759 -0
  23. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm.egg-info/PKG-INFO +4 -4
  24. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm.egg-info/SOURCES.txt +12 -0
  25. {strongdm-15.14.0 → strongdm-15.16.0}/LICENSE +0 -0
  26. {strongdm-15.14.0 → strongdm-15.16.0}/setup.cfg +0 -0
  27. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/__init__.py +0 -0
  28. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/access_request_events_history_pb2.py +0 -0
  29. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/access_request_events_history_pb2_grpc.py +0 -0
  30. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/access_requests_history_pb2.py +0 -0
  31. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/access_requests_history_pb2_grpc.py +0 -0
  32. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/access_requests_pb2.py +0 -0
  33. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/access_requests_pb2_grpc.py +0 -0
  34. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_attachments_history_pb2.py +0 -0
  35. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_attachments_history_pb2_grpc.py +0 -0
  36. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_attachments_pb2.py +0 -0
  37. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_attachments_pb2_grpc.py +0 -0
  38. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_grants_history_pb2.py +0 -0
  39. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_grants_history_pb2_grpc.py +0 -0
  40. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_grants_pb2.py +0 -0
  41. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_grants_pb2_grpc.py +0 -0
  42. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_permissions_pb2.py +0 -0
  43. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_permissions_pb2_grpc.py +0 -0
  44. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_resources_history_pb2.py +0 -0
  45. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_resources_history_pb2_grpc.py +0 -0
  46. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_resources_pb2.py +0 -0
  47. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/account_resources_pb2_grpc.py +0 -0
  48. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/accounts_history_pb2.py +0 -0
  49. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/accounts_history_pb2_grpc.py +0 -0
  50. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/accounts_pb2.py +0 -0
  51. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/accounts_pb2_grpc.py +0 -0
  52. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/activities_pb2.py +0 -0
  53. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/activities_pb2_grpc.py +0 -0
  54. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflow_approvers_history_pb2.py +0 -0
  55. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflow_approvers_history_pb2_grpc.py +0 -0
  56. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflow_approvers_pb2.py +0 -0
  57. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflow_approvers_pb2_grpc.py +0 -0
  58. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflow_steps_history_pb2.py +0 -0
  59. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflow_steps_history_pb2_grpc.py +0 -0
  60. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflow_steps_pb2.py +0 -0
  61. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflow_steps_pb2_grpc.py +0 -0
  62. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflows_history_pb2.py +0 -0
  63. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflows_history_pb2_grpc.py +0 -0
  64. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/approval_workflows_pb2_grpc.py +0 -0
  65. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/control_panel_pb2.py +0 -0
  66. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/control_panel_pb2_grpc.py +0 -0
  67. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/drivers_pb2_grpc.py +0 -0
  68. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/errors.py +0 -0
  69. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/health_checks_pb2.py +0 -0
  70. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/health_checks_pb2_grpc.py +0 -0
  71. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/identity_aliases_history_pb2.py +0 -0
  72. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/identity_aliases_history_pb2_grpc.py +0 -0
  73. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/identity_aliases_pb2.py +0 -0
  74. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/identity_aliases_pb2_grpc.py +0 -0
  75. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/identity_sets_history_pb2.py +0 -0
  76. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/identity_sets_history_pb2_grpc.py +0 -0
  77. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/identity_sets_pb2.py +0 -0
  78. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/identity_sets_pb2_grpc.py +0 -0
  79. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/managed_secrets_pb2.py +0 -0
  80. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/managed_secrets_pb2_grpc.py +0 -0
  81. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/nodes_history_pb2.py +0 -0
  82. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/nodes_history_pb2_grpc.py +0 -0
  83. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/nodes_pb2.py +0 -0
  84. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/nodes_pb2_grpc.py +0 -0
  85. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/options_pb2.py +0 -0
  86. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/options_pb2_grpc.py +0 -0
  87. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/organization_history_pb2.py +0 -0
  88. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/organization_history_pb2_grpc.py +0 -0
  89. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/peering_group_nodes_pb2.py +0 -0
  90. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/peering_group_nodes_pb2_grpc.py +0 -0
  91. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/peering_group_peers_pb2.py +0 -0
  92. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/peering_group_peers_pb2_grpc.py +0 -0
  93. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/peering_group_resources_pb2.py +0 -0
  94. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/peering_group_resources_pb2_grpc.py +0 -0
  95. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/peering_groups_pb2.py +0 -0
  96. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/peering_groups_pb2_grpc.py +0 -0
  97. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/policies_history_pb2.py +0 -0
  98. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/policies_history_pb2_grpc.py +0 -0
  99. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/policies_pb2.py +0 -0
  100. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/policies_pb2_grpc.py +0 -0
  101. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/proxy_cluster_keys_pb2.py +0 -0
  102. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/proxy_cluster_keys_pb2_grpc.py +0 -0
  103. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/queries_pb2.py +0 -0
  104. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/queries_pb2_grpc.py +0 -0
  105. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/remote_identities_history_pb2.py +0 -0
  106. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/remote_identities_history_pb2_grpc.py +0 -0
  107. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/remote_identities_pb2.py +0 -0
  108. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/remote_identities_pb2_grpc.py +0 -0
  109. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/remote_identity_groups_history_pb2.py +0 -0
  110. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/remote_identity_groups_history_pb2_grpc.py +0 -0
  111. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/remote_identity_groups_pb2.py +0 -0
  112. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/remote_identity_groups_pb2_grpc.py +0 -0
  113. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/replays_pb2.py +0 -0
  114. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/replays_pb2_grpc.py +0 -0
  115. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/resources_history_pb2.py +0 -0
  116. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/resources_history_pb2_grpc.py +0 -0
  117. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/resources_pb2.py +0 -0
  118. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/resources_pb2_grpc.py +0 -0
  119. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/role_resources_history_pb2.py +0 -0
  120. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/role_resources_history_pb2_grpc.py +0 -0
  121. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/role_resources_pb2.py +0 -0
  122. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/role_resources_pb2_grpc.py +0 -0
  123. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/roles_history_pb2.py +0 -0
  124. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/roles_history_pb2_grpc.py +0 -0
  125. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/roles_pb2.py +0 -0
  126. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/roles_pb2_grpc.py +0 -0
  127. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_engine_policy_pb2.py +0 -0
  128. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_engine_policy_pb2_grpc.py +0 -0
  129. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_engine_types_pb2.py +0 -0
  130. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_engine_types_pb2_grpc.py +0 -0
  131. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_engines_pb2.py +0 -0
  132. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_engines_pb2_grpc.py +0 -0
  133. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_store_healths_pb2.py +0 -0
  134. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_store_healths_pb2_grpc.py +0 -0
  135. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_store_types_pb2.py +0 -0
  136. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_store_types_pb2_grpc.py +0 -0
  137. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_stores_history_pb2.py +0 -0
  138. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_stores_history_pb2_grpc.py +0 -0
  139. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_stores_pb2.py +0 -0
  140. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/secret_stores_pb2_grpc.py +0 -0
  141. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/spec_pb2.py +0 -0
  142. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/spec_pb2_grpc.py +0 -0
  143. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/tags_pb2.py +0 -0
  144. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/tags_pb2_grpc.py +0 -0
  145. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflow_approvers_history_pb2.py +0 -0
  146. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflow_approvers_history_pb2_grpc.py +0 -0
  147. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflow_approvers_pb2.py +0 -0
  148. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflow_approvers_pb2_grpc.py +0 -0
  149. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflow_roles_history_pb2.py +0 -0
  150. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflow_roles_history_pb2_grpc.py +0 -0
  151. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflow_roles_pb2.py +0 -0
  152. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflow_roles_pb2_grpc.py +0 -0
  153. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflows_history_pb2.py +0 -0
  154. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflows_history_pb2_grpc.py +0 -0
  155. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflows_pb2.py +0 -0
  156. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm/workflows_pb2_grpc.py +0 -0
  157. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm.egg-info/dependency_links.txt +0 -0
  158. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm.egg-info/requires.txt +0 -0
  159. {strongdm-15.14.0 → strongdm-15.16.0}/strongdm.egg-info/top_level.txt +0 -0
@@ -0,0 +1,186 @@
1
+ # Copyright 2020 StrongDM Inc
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
16
+ """Client and server classes corresponding to protobuf-defined services."""
17
+ import grpc
18
+
19
+ from . import groups_roles_pb2 as groups__roles__pb2
20
+
21
+
22
+ class GroupsRolesStub(object):
23
+ """A GroupRole is an assignment of a Group to a Role.
24
+ """
25
+
26
+ def __init__(self, channel):
27
+ """Constructor.
28
+
29
+ Args:
30
+ channel: A grpc.Channel.
31
+ """
32
+ self.Create = channel.unary_unary(
33
+ '/v1.GroupsRoles/Create',
34
+ request_serializer=groups__roles__pb2.GroupRoleCreateRequest.SerializeToString,
35
+ response_deserializer=groups__roles__pb2.GroupRoleCreateResponse.FromString,
36
+ )
37
+ self.Get = channel.unary_unary(
38
+ '/v1.GroupsRoles/Get',
39
+ request_serializer=groups__roles__pb2.GroupRoleGetRequest.SerializeToString,
40
+ response_deserializer=groups__roles__pb2.GroupRoleGetResponse.FromString,
41
+ )
42
+ self.Delete = channel.unary_unary(
43
+ '/v1.GroupsRoles/Delete',
44
+ request_serializer=groups__roles__pb2.GroupRoleDeleteRequest.SerializeToString,
45
+ response_deserializer=groups__roles__pb2.GroupRoleDeleteResponse.FromString,
46
+ )
47
+ self.List = channel.unary_unary(
48
+ '/v1.GroupsRoles/List',
49
+ request_serializer=groups__roles__pb2.GroupRoleListRequest.SerializeToString,
50
+ response_deserializer=groups__roles__pb2.GroupRoleListResponse.FromString,
51
+ )
52
+
53
+
54
+ class GroupsRolesServicer(object):
55
+ """A GroupRole is an assignment of a Group to a Role.
56
+ """
57
+
58
+ def Create(self, request, context):
59
+ """Create registers a new GroupRole.
60
+ """
61
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
62
+ context.set_details('Method not implemented!')
63
+ raise NotImplementedError('Method not implemented!')
64
+
65
+ def Get(self, request, context):
66
+ """Get reads one GroupRole by ID.
67
+ """
68
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
69
+ context.set_details('Method not implemented!')
70
+ raise NotImplementedError('Method not implemented!')
71
+
72
+ def Delete(self, request, context):
73
+ """Delete removes a GroupRole by ID.
74
+ """
75
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
76
+ context.set_details('Method not implemented!')
77
+ raise NotImplementedError('Method not implemented!')
78
+
79
+ def List(self, request, context):
80
+ """List gets a list of GroupRoles matching a given set of criteria.
81
+ """
82
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
83
+ context.set_details('Method not implemented!')
84
+ raise NotImplementedError('Method not implemented!')
85
+
86
+
87
+ def add_GroupsRolesServicer_to_server(servicer, server):
88
+ rpc_method_handlers = {
89
+ 'Create': grpc.unary_unary_rpc_method_handler(
90
+ servicer.Create,
91
+ request_deserializer=groups__roles__pb2.GroupRoleCreateRequest.FromString,
92
+ response_serializer=groups__roles__pb2.GroupRoleCreateResponse.SerializeToString,
93
+ ),
94
+ 'Get': grpc.unary_unary_rpc_method_handler(
95
+ servicer.Get,
96
+ request_deserializer=groups__roles__pb2.GroupRoleGetRequest.FromString,
97
+ response_serializer=groups__roles__pb2.GroupRoleGetResponse.SerializeToString,
98
+ ),
99
+ 'Delete': grpc.unary_unary_rpc_method_handler(
100
+ servicer.Delete,
101
+ request_deserializer=groups__roles__pb2.GroupRoleDeleteRequest.FromString,
102
+ response_serializer=groups__roles__pb2.GroupRoleDeleteResponse.SerializeToString,
103
+ ),
104
+ 'List': grpc.unary_unary_rpc_method_handler(
105
+ servicer.List,
106
+ request_deserializer=groups__roles__pb2.GroupRoleListRequest.FromString,
107
+ response_serializer=groups__roles__pb2.GroupRoleListResponse.SerializeToString,
108
+ ),
109
+ }
110
+ generic_handler = grpc.method_handlers_generic_handler(
111
+ 'v1.GroupsRoles', rpc_method_handlers)
112
+ server.add_generic_rpc_handlers((generic_handler,))
113
+
114
+
115
+ # This class is part of an EXPERIMENTAL API.
116
+ class GroupsRoles(object):
117
+ """A GroupRole is an assignment of a Group to a Role.
118
+ """
119
+
120
+ @staticmethod
121
+ def Create(request,
122
+ target,
123
+ options=(),
124
+ channel_credentials=None,
125
+ call_credentials=None,
126
+ insecure=False,
127
+ compression=None,
128
+ wait_for_ready=None,
129
+ timeout=None,
130
+ metadata=None):
131
+ return grpc.experimental.unary_unary(request, target, '/v1.GroupsRoles/Create',
132
+ groups__roles__pb2.GroupRoleCreateRequest.SerializeToString,
133
+ groups__roles__pb2.GroupRoleCreateResponse.FromString,
134
+ options, channel_credentials,
135
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
136
+
137
+ @staticmethod
138
+ def Get(request,
139
+ target,
140
+ options=(),
141
+ channel_credentials=None,
142
+ call_credentials=None,
143
+ insecure=False,
144
+ compression=None,
145
+ wait_for_ready=None,
146
+ timeout=None,
147
+ metadata=None):
148
+ return grpc.experimental.unary_unary(request, target, '/v1.GroupsRoles/Get',
149
+ groups__roles__pb2.GroupRoleGetRequest.SerializeToString,
150
+ groups__roles__pb2.GroupRoleGetResponse.FromString,
151
+ options, channel_credentials,
152
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
153
+
154
+ @staticmethod
155
+ def Delete(request,
156
+ target,
157
+ options=(),
158
+ channel_credentials=None,
159
+ call_credentials=None,
160
+ insecure=False,
161
+ compression=None,
162
+ wait_for_ready=None,
163
+ timeout=None,
164
+ metadata=None):
165
+ return grpc.experimental.unary_unary(request, target, '/v1.GroupsRoles/Delete',
166
+ groups__roles__pb2.GroupRoleDeleteRequest.SerializeToString,
167
+ groups__roles__pb2.GroupRoleDeleteResponse.FromString,
168
+ options, channel_credentials,
169
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
170
+
171
+ @staticmethod
172
+ def List(request,
173
+ target,
174
+ options=(),
175
+ channel_credentials=None,
176
+ call_credentials=None,
177
+ insecure=False,
178
+ compression=None,
179
+ wait_for_ready=None,
180
+ timeout=None,
181
+ metadata=None):
182
+ return grpc.experimental.unary_unary(request, target, '/v1.GroupsRoles/List',
183
+ groups__roles__pb2.GroupRoleListRequest.SerializeToString,
184
+ groups__roles__pb2.GroupRoleListResponse.FromString,
185
+ options, channel_credentials,
186
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)