azure_graph_rbac2 0.18.0

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 (60) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/lib/1.6/generated/azure_graph_rbac2/applications.rb +1131 -0
  4. data/lib/1.6/generated/azure_graph_rbac2/domains.rb +200 -0
  5. data/lib/1.6/generated/azure_graph_rbac2/graph_rbac_client.rb +151 -0
  6. data/lib/1.6/generated/azure_graph_rbac2/groups.rb +1079 -0
  7. data/lib/1.6/generated/azure_graph_rbac2/models/aadobject.rb +297 -0
  8. data/lib/1.6/generated/azure_graph_rbac2/models/adgroup.rb +116 -0
  9. data/lib/1.6/generated/azure_graph_rbac2/models/application.rb +196 -0
  10. data/lib/1.6/generated/azure_graph_rbac2/models/application_add_owner_parameters.rb +69 -0
  11. data/lib/1.6/generated/azure_graph_rbac2/models/application_create_parameters.rb +202 -0
  12. data/lib/1.6/generated/azure_graph_rbac2/models/application_list_result.rb +98 -0
  13. data/lib/1.6/generated/azure_graph_rbac2/models/application_update_parameters.rb +201 -0
  14. data/lib/1.6/generated/azure_graph_rbac2/models/check_group_membership_parameters.rb +77 -0
  15. data/lib/1.6/generated/azure_graph_rbac2/models/check_group_membership_result.rb +67 -0
  16. data/lib/1.6/generated/azure_graph_rbac2/models/directory_object.rb +92 -0
  17. data/lib/1.6/generated/azure_graph_rbac2/models/directory_object_list_result.rb +57 -0
  18. data/lib/1.6/generated/azure_graph_rbac2/models/domain.rb +101 -0
  19. data/lib/1.6/generated/azure_graph_rbac2/models/domain_list_result.rb +55 -0
  20. data/lib/1.6/generated/azure_graph_rbac2/models/get_objects_parameters.rb +104 -0
  21. data/lib/1.6/generated/azure_graph_rbac2/models/get_objects_result.rb +98 -0
  22. data/lib/1.6/generated/azure_graph_rbac2/models/graph_error.rb +57 -0
  23. data/lib/1.6/generated/azure_graph_rbac2/models/group_add_member_parameters.rb +69 -0
  24. data/lib/1.6/generated/azure_graph_rbac2/models/group_create_parameters.rb +106 -0
  25. data/lib/1.6/generated/azure_graph_rbac2/models/group_get_member_groups_parameters.rb +67 -0
  26. data/lib/1.6/generated/azure_graph_rbac2/models/group_get_member_groups_result.rb +55 -0
  27. data/lib/1.6/generated/azure_graph_rbac2/models/group_list_result.rb +98 -0
  28. data/lib/1.6/generated/azure_graph_rbac2/models/key_credential.rb +132 -0
  29. data/lib/1.6/generated/azure_graph_rbac2/models/key_credential_list_result.rb +55 -0
  30. data/lib/1.6/generated/azure_graph_rbac2/models/key_credentials_update_parameters.rb +55 -0
  31. data/lib/1.6/generated/azure_graph_rbac2/models/password_credential.rb +98 -0
  32. data/lib/1.6/generated/azure_graph_rbac2/models/password_credential_list_result.rb +56 -0
  33. data/lib/1.6/generated/azure_graph_rbac2/models/password_credentials_update_parameters.rb +56 -0
  34. data/lib/1.6/generated/azure_graph_rbac2/models/password_profile.rb +76 -0
  35. data/lib/1.6/generated/azure_graph_rbac2/models/required_resource_access.rb +94 -0
  36. data/lib/1.6/generated/azure_graph_rbac2/models/resource_access.rb +80 -0
  37. data/lib/1.6/generated/azure_graph_rbac2/models/service_principal.rb +124 -0
  38. data/lib/1.6/generated/azure_graph_rbac2/models/service_principal_create_parameters.rb +117 -0
  39. data/lib/1.6/generated/azure_graph_rbac2/models/service_principal_list_result.rb +98 -0
  40. data/lib/1.6/generated/azure_graph_rbac2/models/sign_in_name.rb +79 -0
  41. data/lib/1.6/generated/azure_graph_rbac2/models/user.rb +221 -0
  42. data/lib/1.6/generated/azure_graph_rbac2/models/user_base.rb +118 -0
  43. data/lib/1.6/generated/azure_graph_rbac2/models/user_create_parameters.rb +158 -0
  44. data/lib/1.6/generated/azure_graph_rbac2/models/user_get_member_groups_parameters.rb +67 -0
  45. data/lib/1.6/generated/azure_graph_rbac2/models/user_get_member_groups_result.rb +55 -0
  46. data/lib/1.6/generated/azure_graph_rbac2/models/user_list_result.rb +98 -0
  47. data/lib/1.6/generated/azure_graph_rbac2/models/user_type.rb +16 -0
  48. data/lib/1.6/generated/azure_graph_rbac2/models/user_update_parameters.rb +147 -0
  49. data/lib/1.6/generated/azure_graph_rbac2/module_definition.rb +8 -0
  50. data/lib/1.6/generated/azure_graph_rbac2/objects.rb +314 -0
  51. data/lib/1.6/generated/azure_graph_rbac2/service_principals.rb +949 -0
  52. data/lib/1.6/generated/azure_graph_rbac2/users.rb +686 -0
  53. data/lib/1.6/generated/azure_graph_rbac2.rb +75 -0
  54. data/lib/azure_graph_rbac2.rb +6 -0
  55. data/lib/module_definition.rb +6 -0
  56. data/lib/profiles/latest/graphrbac_latest_profile_client.rb +38 -0
  57. data/lib/profiles/latest/graphrbac_module_definition.rb +8 -0
  58. data/lib/profiles/latest/modules/graphrbac_profile_module.rb +237 -0
  59. data/lib/version.rb +7 -0
  60. metadata +190 -0
@@ -0,0 +1,98 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::GraphRbac2::V1_6
7
+ module Models
8
+ #
9
+ # Server response for Get tenant users API call.
10
+ #
11
+ class UserListResult
12
+
13
+ include MsRestAzure2
14
+
15
+ include MsRest2::JSONable
16
+ # @return [Array<User>] the list of users.
17
+ attr_accessor :value
18
+
19
+ # @return [String] The URL to get the next set of results.
20
+ attr_accessor :odatanext_link
21
+
22
+ # return [Proc] with next page method call.
23
+ attr_accessor :next_method
24
+
25
+ #
26
+ # Gets the rest of the items for the request, enabling auto-pagination.
27
+ #
28
+ # @return [Array<User>] operation results.
29
+ #
30
+ def get_all_items
31
+ items = @value
32
+ page = self
33
+ while page.odatanext_link != nil && !page.odatanext_link.strip.empty? do
34
+ page = page.get_next_page
35
+ items.concat(page.value)
36
+ end
37
+ items
38
+ end
39
+
40
+ #
41
+ # Gets the next page of results.
42
+ #
43
+ # @return [UserListResult] with next page content.
44
+ #
45
+ def get_next_page
46
+ response = @next_method.call(@odatanext_link).value! unless @next_method.nil?
47
+ unless response.nil?
48
+ @odatanext_link = response.body.odatanext_link
49
+ @value = response.body.value
50
+ self
51
+ end
52
+ end
53
+
54
+ #
55
+ # Mapper for UserListResult class as Ruby Hash.
56
+ # This will be used for serialization/deserialization.
57
+ #
58
+ def self.mapper()
59
+ {
60
+ client_side_validation: true,
61
+ required: false,
62
+ serialized_name: 'UserListResult',
63
+ type: {
64
+ name: 'Composite',
65
+ class_name: 'UserListResult',
66
+ model_properties: {
67
+ value: {
68
+ client_side_validation: true,
69
+ required: false,
70
+ serialized_name: 'value',
71
+ type: {
72
+ name: 'Sequence',
73
+ element: {
74
+ client_side_validation: true,
75
+ required: false,
76
+ serialized_name: 'UserElementType',
77
+ type: {
78
+ name: 'Composite',
79
+ class_name: 'User'
80
+ }
81
+ }
82
+ }
83
+ },
84
+ odatanext_link: {
85
+ client_side_validation: true,
86
+ required: false,
87
+ serialized_name: 'odata\\.nextLink',
88
+ type: {
89
+ name: 'String'
90
+ }
91
+ }
92
+ }
93
+ }
94
+ }
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,16 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::GraphRbac2::V1_6
7
+ module Models
8
+ #
9
+ # Defines values for UserType
10
+ #
11
+ module UserType
12
+ Member = "Member"
13
+ Guest = "Guest"
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,147 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::GraphRbac2::V1_6
7
+ module Models
8
+ #
9
+ # Request parameters for updating an existing work or school account user.
10
+ #
11
+ class UserUpdateParameters < UserBase
12
+
13
+ include MsRestAzure2
14
+
15
+ # @return [Boolean] Whether the account is enabled.
16
+ attr_accessor :account_enabled
17
+
18
+ # @return [String] The display name of the user.
19
+ attr_accessor :display_name
20
+
21
+ # @return [PasswordProfile] The password profile of the user.
22
+ attr_accessor :password_profile
23
+
24
+ # @return [String] The user principal name (someuser@contoso.com). It
25
+ # must contain one of the verified domains for the tenant.
26
+ attr_accessor :user_principal_name
27
+
28
+ # @return [String] The mail alias for the user.
29
+ attr_accessor :mail_nickname
30
+
31
+
32
+ #
33
+ # Mapper for UserUpdateParameters class as Ruby Hash.
34
+ # This will be used for serialization/deserialization.
35
+ #
36
+ def self.mapper()
37
+ {
38
+ client_side_validation: true,
39
+ required: false,
40
+ serialized_name: 'UserUpdateParameters',
41
+ type: {
42
+ name: 'Composite',
43
+ class_name: 'UserUpdateParameters',
44
+ model_properties: {
45
+ additional_properties: {
46
+ client_side_validation: true,
47
+ required: false,
48
+ type: {
49
+ name: 'Dictionary',
50
+ value: {
51
+ client_side_validation: true,
52
+ required: false,
53
+ serialized_name: 'ObjectElementType',
54
+ type: {
55
+ name: 'Object'
56
+ }
57
+ }
58
+ }
59
+ },
60
+ immutable_id: {
61
+ client_side_validation: true,
62
+ required: false,
63
+ serialized_name: 'immutableId',
64
+ type: {
65
+ name: 'String'
66
+ }
67
+ },
68
+ usage_location: {
69
+ client_side_validation: true,
70
+ required: false,
71
+ serialized_name: 'usageLocation',
72
+ type: {
73
+ name: 'String'
74
+ }
75
+ },
76
+ given_name: {
77
+ client_side_validation: true,
78
+ required: false,
79
+ serialized_name: 'givenName',
80
+ type: {
81
+ name: 'String'
82
+ }
83
+ },
84
+ surname: {
85
+ client_side_validation: true,
86
+ required: false,
87
+ serialized_name: 'surname',
88
+ type: {
89
+ name: 'String'
90
+ }
91
+ },
92
+ user_type: {
93
+ client_side_validation: true,
94
+ required: false,
95
+ serialized_name: 'userType',
96
+ type: {
97
+ name: 'String'
98
+ }
99
+ },
100
+ account_enabled: {
101
+ client_side_validation: true,
102
+ required: false,
103
+ serialized_name: 'accountEnabled',
104
+ type: {
105
+ name: 'Boolean'
106
+ }
107
+ },
108
+ display_name: {
109
+ client_side_validation: true,
110
+ required: false,
111
+ serialized_name: 'displayName',
112
+ type: {
113
+ name: 'String'
114
+ }
115
+ },
116
+ password_profile: {
117
+ client_side_validation: true,
118
+ required: false,
119
+ serialized_name: 'passwordProfile',
120
+ type: {
121
+ name: 'Composite',
122
+ class_name: 'PasswordProfile'
123
+ }
124
+ },
125
+ user_principal_name: {
126
+ client_side_validation: true,
127
+ required: false,
128
+ serialized_name: 'userPrincipalName',
129
+ type: {
130
+ name: 'String'
131
+ }
132
+ },
133
+ mail_nickname: {
134
+ client_side_validation: true,
135
+ required: false,
136
+ serialized_name: 'mailNickname',
137
+ type: {
138
+ name: 'String'
139
+ }
140
+ }
141
+ }
142
+ }
143
+ }
144
+ end
145
+ end
146
+ end
147
+ end
@@ -0,0 +1,8 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure end
7
+ module Azure::GraphRbac2 end
8
+ module Azure::GraphRbac2::V1_6 end
@@ -0,0 +1,314 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::GraphRbac2::V1_6
7
+ #
8
+ # The Graph RBAC Management Client
9
+ #
10
+ class Objects
11
+ include MsRestAzure2
12
+
13
+ #
14
+ # Creates and initializes a new instance of the Objects class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [GraphRbacClient] reference to the GraphRbacClient
22
+ attr_reader :client
23
+
24
+ #
25
+ # Gets the details for the currently logged-in user.
26
+ #
27
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
28
+ # will be added to the HTTP request.
29
+ #
30
+ # @return [AADObject] operation results.
31
+ #
32
+ def get_current_user(custom_headers:nil)
33
+ response = get_current_user_async(custom_headers:custom_headers).value!
34
+ response.body unless response.nil?
35
+ end
36
+
37
+ #
38
+ # Gets the details for the currently logged-in user.
39
+ #
40
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
41
+ # will be added to the HTTP request.
42
+ #
43
+ # @return [MsRestAzure2::AzureOperationResponse] HTTP response information.
44
+ #
45
+ def get_current_user_with_http_info(custom_headers:nil)
46
+ get_current_user_async(custom_headers:custom_headers).value!
47
+ end
48
+
49
+ #
50
+ # Gets the details for the currently logged-in user.
51
+ #
52
+ # @param [Hash{String => String}] A hash of custom headers that will be added
53
+ # to the HTTP request.
54
+ #
55
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
56
+ #
57
+ def get_current_user_async(custom_headers:nil)
58
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
59
+ fail ArgumentError, '@client.tenant_id is nil' if @client.tenant_id.nil?
60
+
61
+
62
+ request_headers = {}
63
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
64
+
65
+ # Set Headers
66
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
67
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
68
+ path_template = '{tenantID}/me'
69
+
70
+ request_url = @base_url || @client.base_url
71
+
72
+ options = {
73
+ middlewares: [[MsRest2::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
74
+ path_params: {'tenantID' => @client.tenant_id},
75
+ query_params: {'api-version' => @client.api_version},
76
+ headers: request_headers.merge(custom_headers || {}),
77
+ base_url: request_url
78
+ }
79
+ promise = @client.make_request_async(:get, path_template, options)
80
+
81
+ promise = promise.then do |result|
82
+ http_response = result.response
83
+ status_code = http_response.status
84
+ response_content = http_response.body
85
+ unless status_code == 200
86
+ error_model = JSON.load(response_content)
87
+ fail MsRest2::HttpOperationError.new(result.request, http_response, error_model)
88
+ end
89
+
90
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
91
+ # Deserialize Response
92
+ if status_code == 200
93
+ begin
94
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
95
+ result_mapper = Azure::GraphRbac2::V1_6::Models::AADObject.mapper()
96
+ result.body = @client.deserialize(result_mapper, parsed_response)
97
+ rescue Exception => e
98
+ fail MsRest2::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
99
+ end
100
+ end
101
+
102
+ result
103
+ end
104
+
105
+ promise.execute
106
+ end
107
+
108
+ #
109
+ # Gets AD group membership for the specified AD object IDs.
110
+ #
111
+ # @param parameters [GetObjectsParameters] Objects filtering parameters.
112
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
113
+ # will be added to the HTTP request.
114
+ #
115
+ # @return [Array<AADObject>] operation results.
116
+ #
117
+ def get_objects_by_object_ids(parameters, custom_headers:nil)
118
+ first_page = get_objects_by_object_ids_as_lazy(parameters, custom_headers:custom_headers)
119
+ first_page.get_all_items
120
+ end
121
+
122
+ #
123
+ # Gets AD group membership for the specified AD object IDs.
124
+ #
125
+ # @param parameters [GetObjectsParameters] Objects filtering parameters.
126
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
127
+ # will be added to the HTTP request.
128
+ #
129
+ # @return [MsRestAzure2::AzureOperationResponse] HTTP response information.
130
+ #
131
+ def get_objects_by_object_ids_with_http_info(parameters, custom_headers:nil)
132
+ get_objects_by_object_ids_async(parameters, custom_headers:custom_headers).value!
133
+ end
134
+
135
+ #
136
+ # Gets AD group membership for the specified AD object IDs.
137
+ #
138
+ # @param parameters [GetObjectsParameters] Objects filtering parameters.
139
+ # @param [Hash{String => String}] A hash of custom headers that will be added
140
+ # to the HTTP request.
141
+ #
142
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
143
+ #
144
+ def get_objects_by_object_ids_async(parameters, custom_headers:nil)
145
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
146
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
147
+ fail ArgumentError, '@client.tenant_id is nil' if @client.tenant_id.nil?
148
+
149
+
150
+ request_headers = {}
151
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
152
+
153
+ # Set Headers
154
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
155
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
156
+
157
+ # Serialize Request
158
+ request_mapper = Azure::GraphRbac2::V1_6::Models::GetObjectsParameters.mapper()
159
+ request_content = @client.serialize(request_mapper, parameters)
160
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
161
+
162
+ path_template = '{tenantID}/getObjectsByObjectIds'
163
+
164
+ request_url = @base_url || @client.base_url
165
+
166
+ options = {
167
+ middlewares: [[MsRest2::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
168
+ path_params: {'tenantID' => @client.tenant_id},
169
+ query_params: {'api-version' => @client.api_version},
170
+ body: request_content,
171
+ headers: request_headers.merge(custom_headers || {}),
172
+ base_url: request_url
173
+ }
174
+ promise = @client.make_request_async(:post, path_template, options)
175
+
176
+ promise = promise.then do |result|
177
+ http_response = result.response
178
+ status_code = http_response.status
179
+ response_content = http_response.body
180
+ unless status_code == 200
181
+ error_model = JSON.load(response_content)
182
+ fail MsRestAzure2::AzureOperationError.new(result.request, http_response, error_model)
183
+ end
184
+
185
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
186
+ # Deserialize Response
187
+ if status_code == 200
188
+ begin
189
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
190
+ result_mapper = Azure::GraphRbac2::V1_6::Models::GetObjectsResult.mapper()
191
+ result.body = @client.deserialize(result_mapper, parsed_response)
192
+ rescue Exception => e
193
+ fail MsRest2::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
194
+ end
195
+ end
196
+
197
+ result
198
+ end
199
+
200
+ promise.execute
201
+ end
202
+
203
+ #
204
+ # Gets AD group membership for the specified AD object IDs.
205
+ #
206
+ # @param next_link [String] Next link for the list operation.
207
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
208
+ # will be added to the HTTP request.
209
+ #
210
+ # @return [Array<AADObject>] operation results.
211
+ #
212
+ def get_objects_by_object_ids_next(next_link, custom_headers:nil)
213
+ response = get_objects_by_object_ids_next_async(next_link, custom_headers:custom_headers).value!
214
+ response.body unless response.nil?
215
+ end
216
+
217
+ #
218
+ # Gets AD group membership for the specified AD object IDs.
219
+ #
220
+ # @param next_link [String] Next link for the list operation.
221
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
222
+ # will be added to the HTTP request.
223
+ #
224
+ # @return [MsRestAzure2::AzureOperationResponse] HTTP response information.
225
+ #
226
+ def get_objects_by_object_ids_next_with_http_info(next_link, custom_headers:nil)
227
+ get_objects_by_object_ids_next_async(next_link, custom_headers:custom_headers).value!
228
+ end
229
+
230
+ #
231
+ # Gets AD group membership for the specified AD object IDs.
232
+ #
233
+ # @param next_link [String] Next link for the list operation.
234
+ # @param [Hash{String => String}] A hash of custom headers that will be added
235
+ # to the HTTP request.
236
+ #
237
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
238
+ #
239
+ def get_objects_by_object_ids_next_async(next_link, custom_headers:nil)
240
+ fail ArgumentError, 'next_link is nil' if next_link.nil?
241
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
242
+ fail ArgumentError, '@client.tenant_id is nil' if @client.tenant_id.nil?
243
+
244
+
245
+ request_headers = {}
246
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
247
+
248
+ # Set Headers
249
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
250
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
251
+ path_template = '{tenantID}/{nextLink}'
252
+
253
+ request_url = @base_url || @client.base_url
254
+
255
+ options = {
256
+ middlewares: [[MsRest2::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
257
+ path_params: {'tenantID' => @client.tenant_id},
258
+ skip_encoding_path_params: {'nextLink' => next_link},
259
+ query_params: {'api-version' => @client.api_version},
260
+ headers: request_headers.merge(custom_headers || {}),
261
+ base_url: request_url
262
+ }
263
+ promise = @client.make_request_async(:post, path_template, options)
264
+
265
+ promise = promise.then do |result|
266
+ http_response = result.response
267
+ status_code = http_response.status
268
+ response_content = http_response.body
269
+ unless status_code == 200
270
+ error_model = JSON.load(response_content)
271
+ fail MsRestAzure2::AzureOperationError.new(result.request, http_response, error_model)
272
+ end
273
+
274
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
275
+ # Deserialize Response
276
+ if status_code == 200
277
+ begin
278
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
279
+ result_mapper = Azure::GraphRbac2::V1_6::Models::GetObjectsResult.mapper()
280
+ result.body = @client.deserialize(result_mapper, parsed_response)
281
+ rescue Exception => e
282
+ fail MsRest2::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
283
+ end
284
+ end
285
+
286
+ result
287
+ end
288
+
289
+ promise.execute
290
+ end
291
+
292
+ #
293
+ # Gets AD group membership for the specified AD object IDs.
294
+ #
295
+ # @param parameters [GetObjectsParameters] Objects filtering parameters.
296
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
297
+ # will be added to the HTTP request.
298
+ #
299
+ # @return [GetObjectsResult] which provide lazy access to pages of the
300
+ # response.
301
+ #
302
+ def get_objects_by_object_ids_as_lazy(parameters, custom_headers:nil)
303
+ response = get_objects_by_object_ids_async(parameters, custom_headers:custom_headers).value!
304
+ unless response.nil?
305
+ page = response.body
306
+ page.next_method = Proc.new do |next_link|
307
+ get_objects_by_object_ids_next_async(next_link, custom_headers:custom_headers)
308
+ end
309
+ page
310
+ end
311
+ end
312
+
313
+ end
314
+ end