azure_mgmt_databoxedge 0.17.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (143) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/lib/2019-08-01/generated/azure_mgmt_databoxedge.rb +158 -0
  4. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/alerts.rb +328 -0
  5. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/bandwidth_schedules.rb +621 -0
  6. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/containers.rb +771 -0
  7. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/data_box_edge_management_client.rb +191 -0
  8. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/devices.rb +1811 -0
  9. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/jobs.rb +126 -0
  10. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/account_type.rb +16 -0
  11. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/address.rb +112 -0
  12. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/alert.rb +156 -0
  13. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/alert_error_details.rb +71 -0
  14. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/alert_list.rb +100 -0
  15. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/alert_severity.rb +17 -0
  16. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/armbase_model.rb +71 -0
  17. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/asymmetric_encrypted_secret.rb +70 -0
  18. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/authentication.rb +47 -0
  19. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/authentication_type.rb +16 -0
  20. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/azure_container_data_format.rb +17 -0
  21. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/azure_container_info.rb +72 -0
  22. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/bandwidth_schedule.rb +115 -0
  23. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/bandwidth_schedules_list.rb +100 -0
  24. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/client_access_right.rb +59 -0
  25. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/client_permission_type.rb +17 -0
  26. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/contact_details.rb +87 -0
  27. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/container.rb +113 -0
  28. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/container_list.rb +100 -0
  29. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/container_status.rb +19 -0
  30. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/data_box_edge_device.rb +300 -0
  31. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/data_box_edge_device_extended_info.rb +97 -0
  32. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/data_box_edge_device_list.rb +101 -0
  33. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/data_box_edge_device_patch.rb +55 -0
  34. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/data_box_edge_device_status.rb +21 -0
  35. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/data_policy.rb +16 -0
  36. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/day_of_week.rb +21 -0
  37. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/device_type.rb +15 -0
  38. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/download_phase.rb +18 -0
  39. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/encryption_algorithm.rb +17 -0
  40. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/file_event_trigger.rb +115 -0
  41. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/file_source_info.rb +46 -0
  42. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/install_reboot_behavior.rb +17 -0
  43. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/io_tdevice_info.rb +80 -0
  44. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/io_trole.rb +147 -0
  45. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/ipv4config.rb +71 -0
  46. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/ipv6config.rb +71 -0
  47. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/job.rb +242 -0
  48. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/job_error_details.rb +80 -0
  49. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/job_error_item.rb +79 -0
  50. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/job_status.rb +21 -0
  51. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/job_type.rb +20 -0
  52. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/metric_aggregation_type.rb +21 -0
  53. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/metric_category.rb +16 -0
  54. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/metric_dimension_v1.rb +68 -0
  55. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/metric_specification_v1.rb +187 -0
  56. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/metric_unit.rb +22 -0
  57. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/monitoring_status.rb +16 -0
  58. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/mount_point_map.rb +83 -0
  59. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/network_adapter.rb +229 -0
  60. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/network_adapter_dhcpstatus.rb +16 -0
  61. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/network_adapter_position.rb +60 -0
  62. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/network_adapter_rdmastatus.rb +16 -0
  63. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/network_adapter_status.rb +16 -0
  64. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/network_group.rb +17 -0
  65. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/network_settings.rb +83 -0
  66. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/node.rb +152 -0
  67. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/node_list.rb +56 -0
  68. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/node_status.rb +19 -0
  69. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/operation.rb +81 -0
  70. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/operation_display.rb +80 -0
  71. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/operations_list.rb +99 -0
  72. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/order.rb +177 -0
  73. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/order_list.rb +100 -0
  74. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/order_state.rb +28 -0
  75. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/order_status.rb +96 -0
  76. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/periodic_timer_event_trigger.rb +115 -0
  77. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/periodic_timer_source_info.rb +73 -0
  78. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/platform_type.rb +16 -0
  79. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/refresh_details.rb +87 -0
  80. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/resource_type_sku.rb +202 -0
  81. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/role.rb +71 -0
  82. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/role_list.rb +102 -0
  83. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/role_sink_info.rb +46 -0
  84. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/role_status.rb +16 -0
  85. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/role_types.rb +18 -0
  86. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/security_settings.rb +78 -0
  87. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/service_specification.rb +56 -0
  88. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/share.rb +208 -0
  89. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/share_access_protocol.rb +16 -0
  90. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/share_access_right.rb +59 -0
  91. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/share_access_type.rb +17 -0
  92. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/share_list.rb +100 -0
  93. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/share_status.rb +19 -0
  94. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/sku.rb +61 -0
  95. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/sku_cost.rb +71 -0
  96. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/sku_information_list.rb +68 -0
  97. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/sku_location_info.rb +87 -0
  98. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/sku_name.rb +23 -0
  99. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/sku_restriction.rb +94 -0
  100. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/sku_restriction_info.rb +75 -0
  101. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/sku_restriction_reason_code.rb +16 -0
  102. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/sku_tier.rb +15 -0
  103. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/sslstatus.rb +16 -0
  104. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/storage_account.rb +134 -0
  105. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/storage_account_credential.rb +154 -0
  106. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/storage_account_credential_list.rb +100 -0
  107. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/storage_account_list.rb +101 -0
  108. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/storage_account_status.rb +19 -0
  109. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/symmetric_key.rb +48 -0
  110. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/time_grain.rb +22 -0
  111. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/tracking_info.rb +79 -0
  112. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/trigger.rb +71 -0
  113. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/trigger_list.rb +102 -0
  114. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/update_download_progress.rb +108 -0
  115. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/update_install_progress.rb +71 -0
  116. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/update_operation.rb +18 -0
  117. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/update_operation_stage.rb +31 -0
  118. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/update_summary.rb +281 -0
  119. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/upload_certificate_request.rb +58 -0
  120. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/upload_certificate_response.rb +132 -0
  121. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/user.rb +108 -0
  122. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/user_access_right.rb +59 -0
  123. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/user_list.rb +100 -0
  124. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/models/user_type.rb +17 -0
  125. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/module_definition.rb +9 -0
  126. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/nodes.rb +119 -0
  127. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/operations.rb +218 -0
  128. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/operations_status.rb +126 -0
  129. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/orders.rb +594 -0
  130. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/roles.rb +610 -0
  131. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/shares.rb +737 -0
  132. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/skus.rb +117 -0
  133. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/storage_account_credentials.rb +623 -0
  134. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/storage_accounts.rb +615 -0
  135. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/triggers.rb +618 -0
  136. data/lib/2019-08-01/generated/azure_mgmt_databoxedge/users.rb +622 -0
  137. data/lib/azure_mgmt_databoxedge.rb +6 -0
  138. data/lib/module_definition.rb +7 -0
  139. data/lib/profiles/latest/databoxedge_latest_profile_client.rb +40 -0
  140. data/lib/profiles/latest/databoxedge_module_definition.rb +8 -0
  141. data/lib/profiles/latest/modules/databoxedge_profile_module.rb +551 -0
  142. data/lib/version.rb +7 -0
  143. metadata +258 -0
@@ -0,0 +1,622 @@
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::DataBoxEdge::Mgmt::V2019_08_01
7
+ #
8
+ # Users
9
+ #
10
+ class Users
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the Users class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [DataBoxEdgeManagementClient] reference to the DataBoxEdgeManagementClient
22
+ attr_reader :client
23
+
24
+ #
25
+ # Gets all the users registered on a Data Box Edge/Data Box Gateway device.
26
+ #
27
+ # @param device_name [String] The device name.
28
+ # @param resource_group_name [String] The resource group name.
29
+ # @param filter [String] Specify $filter='UserType eq <type>' to filter on user
30
+ # type property
31
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
32
+ # will be added to the HTTP request.
33
+ #
34
+ # @return [Array<User>] operation results.
35
+ #
36
+ def list_by_data_box_edge_device(device_name, resource_group_name, filter:nil, custom_headers:nil)
37
+ first_page = list_by_data_box_edge_device_as_lazy(device_name, resource_group_name, filter:filter, custom_headers:custom_headers)
38
+ first_page.get_all_items
39
+ end
40
+
41
+ #
42
+ # Gets all the users registered on a Data Box Edge/Data Box Gateway device.
43
+ #
44
+ # @param device_name [String] The device name.
45
+ # @param resource_group_name [String] The resource group name.
46
+ # @param filter [String] Specify $filter='UserType eq <type>' to filter on user
47
+ # type property
48
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
49
+ # will be added to the HTTP request.
50
+ #
51
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
52
+ #
53
+ def list_by_data_box_edge_device_with_http_info(device_name, resource_group_name, filter:nil, custom_headers:nil)
54
+ list_by_data_box_edge_device_async(device_name, resource_group_name, filter:filter, custom_headers:custom_headers).value!
55
+ end
56
+
57
+ #
58
+ # Gets all the users registered on a Data Box Edge/Data Box Gateway device.
59
+ #
60
+ # @param device_name [String] The device name.
61
+ # @param resource_group_name [String] The resource group name.
62
+ # @param filter [String] Specify $filter='UserType eq <type>' to filter on user
63
+ # type property
64
+ # @param [Hash{String => String}] A hash of custom headers that will be added
65
+ # to the HTTP request.
66
+ #
67
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
68
+ #
69
+ def list_by_data_box_edge_device_async(device_name, resource_group_name, filter:nil, custom_headers:nil)
70
+ fail ArgumentError, 'device_name is nil' if device_name.nil?
71
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
72
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
73
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
74
+
75
+
76
+ request_headers = {}
77
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
78
+
79
+ # Set Headers
80
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
81
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
82
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users'
83
+
84
+ request_url = @base_url || @client.base_url
85
+
86
+ options = {
87
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
88
+ path_params: {'deviceName' => device_name,'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name},
89
+ query_params: {'api-version' => @client.api_version,'$filter' => filter},
90
+ headers: request_headers.merge(custom_headers || {}),
91
+ base_url: request_url
92
+ }
93
+ promise = @client.make_request_async(:get, path_template, options)
94
+
95
+ promise = promise.then do |result|
96
+ http_response = result.response
97
+ status_code = http_response.status
98
+ response_content = http_response.body
99
+ unless status_code == 200
100
+ error_model = JSON.load(response_content)
101
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
102
+ end
103
+
104
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
105
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
106
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
107
+ # Deserialize Response
108
+ if status_code == 200
109
+ begin
110
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
111
+ result_mapper = Azure::DataBoxEdge::Mgmt::V2019_08_01::Models::UserList.mapper()
112
+ result.body = @client.deserialize(result_mapper, parsed_response)
113
+ rescue Exception => e
114
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
115
+ end
116
+ end
117
+
118
+ result
119
+ end
120
+
121
+ promise.execute
122
+ end
123
+
124
+ #
125
+ # Gets the properties of the specified user.
126
+ #
127
+ # @param device_name [String] The device name.
128
+ # @param name [String] The user name.
129
+ # @param resource_group_name [String] The resource group name.
130
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
131
+ # will be added to the HTTP request.
132
+ #
133
+ # @return [User] operation results.
134
+ #
135
+ def get(device_name, name, resource_group_name, custom_headers:nil)
136
+ response = get_async(device_name, name, resource_group_name, custom_headers:custom_headers).value!
137
+ response.body unless response.nil?
138
+ end
139
+
140
+ #
141
+ # Gets the properties of the specified user.
142
+ #
143
+ # @param device_name [String] The device name.
144
+ # @param name [String] The user name.
145
+ # @param resource_group_name [String] The resource group name.
146
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
147
+ # will be added to the HTTP request.
148
+ #
149
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
150
+ #
151
+ def get_with_http_info(device_name, name, resource_group_name, custom_headers:nil)
152
+ get_async(device_name, name, resource_group_name, custom_headers:custom_headers).value!
153
+ end
154
+
155
+ #
156
+ # Gets the properties of the specified user.
157
+ #
158
+ # @param device_name [String] The device name.
159
+ # @param name [String] The user name.
160
+ # @param resource_group_name [String] The resource group name.
161
+ # @param [Hash{String => String}] A hash of custom headers that will be added
162
+ # to the HTTP request.
163
+ #
164
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
165
+ #
166
+ def get_async(device_name, name, resource_group_name, custom_headers:nil)
167
+ fail ArgumentError, 'device_name is nil' if device_name.nil?
168
+ fail ArgumentError, 'name is nil' if name.nil?
169
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
170
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
171
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
172
+
173
+
174
+ request_headers = {}
175
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
176
+
177
+ # Set Headers
178
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
179
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
180
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users/{name}'
181
+
182
+ request_url = @base_url || @client.base_url
183
+
184
+ options = {
185
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
186
+ path_params: {'deviceName' => device_name,'name' => name,'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name},
187
+ query_params: {'api-version' => @client.api_version},
188
+ headers: request_headers.merge(custom_headers || {}),
189
+ base_url: request_url
190
+ }
191
+ promise = @client.make_request_async(:get, path_template, options)
192
+
193
+ promise = promise.then do |result|
194
+ http_response = result.response
195
+ status_code = http_response.status
196
+ response_content = http_response.body
197
+ unless status_code == 200
198
+ error_model = JSON.load(response_content)
199
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
200
+ end
201
+
202
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
203
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
204
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
205
+ # Deserialize Response
206
+ if status_code == 200
207
+ begin
208
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
209
+ result_mapper = Azure::DataBoxEdge::Mgmt::V2019_08_01::Models::User.mapper()
210
+ result.body = @client.deserialize(result_mapper, parsed_response)
211
+ rescue Exception => e
212
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
213
+ end
214
+ end
215
+
216
+ result
217
+ end
218
+
219
+ promise.execute
220
+ end
221
+
222
+ #
223
+ # Creates a new user or updates an existing user's information on a Data Box
224
+ # Edge/Data Box Gateway device.
225
+ #
226
+ # @param device_name [String] The device name.
227
+ # @param name [String] The user name.
228
+ # @param user [User] The user details.
229
+ # @param resource_group_name [String] The resource group name.
230
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
231
+ # will be added to the HTTP request.
232
+ #
233
+ # @return [User] operation results.
234
+ #
235
+ def create_or_update(device_name, name, user, resource_group_name, custom_headers:nil)
236
+ response = create_or_update_async(device_name, name, user, resource_group_name, custom_headers:custom_headers).value!
237
+ response.body unless response.nil?
238
+ end
239
+
240
+ #
241
+ # @param device_name [String] The device name.
242
+ # @param name [String] The user name.
243
+ # @param user [User] The user details.
244
+ # @param resource_group_name [String] The resource group name.
245
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
246
+ # will be added to the HTTP request.
247
+ #
248
+ # @return [Concurrent::Promise] promise which provides async access to http
249
+ # response.
250
+ #
251
+ def create_or_update_async(device_name, name, user, resource_group_name, custom_headers:nil)
252
+ # Send request
253
+ promise = begin_create_or_update_async(device_name, name, user, resource_group_name, custom_headers:custom_headers)
254
+
255
+ promise = promise.then do |response|
256
+ # Defining deserialization method.
257
+ deserialize_method = lambda do |parsed_response|
258
+ result_mapper = Azure::DataBoxEdge::Mgmt::V2019_08_01::Models::User.mapper()
259
+ parsed_response = @client.deserialize(result_mapper, parsed_response)
260
+ end
261
+
262
+ # Waiting for response.
263
+ @client.get_long_running_operation_result(response, deserialize_method)
264
+ end
265
+
266
+ promise
267
+ end
268
+
269
+ #
270
+ # Deletes the user on a databox edge/gateway device.
271
+ #
272
+ # @param device_name [String] The device name.
273
+ # @param name [String] The user name.
274
+ # @param resource_group_name [String] The resource group name.
275
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
276
+ # will be added to the HTTP request.
277
+ #
278
+ def delete(device_name, name, resource_group_name, custom_headers:nil)
279
+ response = delete_async(device_name, name, resource_group_name, custom_headers:custom_headers).value!
280
+ nil
281
+ end
282
+
283
+ #
284
+ # @param device_name [String] The device name.
285
+ # @param name [String] The user name.
286
+ # @param resource_group_name [String] The resource group name.
287
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
288
+ # will be added to the HTTP request.
289
+ #
290
+ # @return [Concurrent::Promise] promise which provides async access to http
291
+ # response.
292
+ #
293
+ def delete_async(device_name, name, resource_group_name, custom_headers:nil)
294
+ # Send request
295
+ promise = begin_delete_async(device_name, name, resource_group_name, custom_headers:custom_headers)
296
+
297
+ promise = promise.then do |response|
298
+ # Defining deserialization method.
299
+ deserialize_method = lambda do |parsed_response|
300
+ end
301
+
302
+ # Waiting for response.
303
+ @client.get_long_running_operation_result(response, deserialize_method)
304
+ end
305
+
306
+ promise
307
+ end
308
+
309
+ #
310
+ # Creates a new user or updates an existing user's information on a Data Box
311
+ # Edge/Data Box Gateway device.
312
+ #
313
+ # @param device_name [String] The device name.
314
+ # @param name [String] The user name.
315
+ # @param user [User] The user details.
316
+ # @param resource_group_name [String] The resource group name.
317
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
318
+ # will be added to the HTTP request.
319
+ #
320
+ # @return [User] operation results.
321
+ #
322
+ def begin_create_or_update(device_name, name, user, resource_group_name, custom_headers:nil)
323
+ response = begin_create_or_update_async(device_name, name, user, resource_group_name, custom_headers:custom_headers).value!
324
+ response.body unless response.nil?
325
+ end
326
+
327
+ #
328
+ # Creates a new user or updates an existing user's information on a Data Box
329
+ # Edge/Data Box Gateway device.
330
+ #
331
+ # @param device_name [String] The device name.
332
+ # @param name [String] The user name.
333
+ # @param user [User] The user details.
334
+ # @param resource_group_name [String] The resource group name.
335
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
336
+ # will be added to the HTTP request.
337
+ #
338
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
339
+ #
340
+ def begin_create_or_update_with_http_info(device_name, name, user, resource_group_name, custom_headers:nil)
341
+ begin_create_or_update_async(device_name, name, user, resource_group_name, custom_headers:custom_headers).value!
342
+ end
343
+
344
+ #
345
+ # Creates a new user or updates an existing user's information on a Data Box
346
+ # Edge/Data Box Gateway device.
347
+ #
348
+ # @param device_name [String] The device name.
349
+ # @param name [String] The user name.
350
+ # @param user [User] The user details.
351
+ # @param resource_group_name [String] The resource group name.
352
+ # @param [Hash{String => String}] A hash of custom headers that will be added
353
+ # to the HTTP request.
354
+ #
355
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
356
+ #
357
+ def begin_create_or_update_async(device_name, name, user, resource_group_name, custom_headers:nil)
358
+ fail ArgumentError, 'device_name is nil' if device_name.nil?
359
+ fail ArgumentError, 'name is nil' if name.nil?
360
+ fail ArgumentError, 'user is nil' if user.nil?
361
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
362
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
363
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
364
+
365
+
366
+ request_headers = {}
367
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
368
+
369
+ # Set Headers
370
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
371
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
372
+
373
+ # Serialize Request
374
+ request_mapper = Azure::DataBoxEdge::Mgmt::V2019_08_01::Models::User.mapper()
375
+ request_content = @client.serialize(request_mapper, user)
376
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
377
+
378
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users/{name}'
379
+
380
+ request_url = @base_url || @client.base_url
381
+
382
+ options = {
383
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
384
+ path_params: {'deviceName' => device_name,'name' => name,'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name},
385
+ query_params: {'api-version' => @client.api_version},
386
+ body: request_content,
387
+ headers: request_headers.merge(custom_headers || {}),
388
+ base_url: request_url
389
+ }
390
+ promise = @client.make_request_async(:put, path_template, options)
391
+
392
+ promise = promise.then do |result|
393
+ http_response = result.response
394
+ status_code = http_response.status
395
+ response_content = http_response.body
396
+ unless status_code == 200 || status_code == 202
397
+ error_model = JSON.load(response_content)
398
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
399
+ end
400
+
401
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
402
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
403
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
404
+ # Deserialize Response
405
+ if status_code == 200
406
+ begin
407
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
408
+ result_mapper = Azure::DataBoxEdge::Mgmt::V2019_08_01::Models::User.mapper()
409
+ result.body = @client.deserialize(result_mapper, parsed_response)
410
+ rescue Exception => e
411
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
412
+ end
413
+ end
414
+
415
+ result
416
+ end
417
+
418
+ promise.execute
419
+ end
420
+
421
+ #
422
+ # Deletes the user on a databox edge/gateway device.
423
+ #
424
+ # @param device_name [String] The device name.
425
+ # @param name [String] The user name.
426
+ # @param resource_group_name [String] The resource group name.
427
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
428
+ # will be added to the HTTP request.
429
+ #
430
+ #
431
+ def begin_delete(device_name, name, resource_group_name, custom_headers:nil)
432
+ response = begin_delete_async(device_name, name, resource_group_name, custom_headers:custom_headers).value!
433
+ nil
434
+ end
435
+
436
+ #
437
+ # Deletes the user on a databox edge/gateway device.
438
+ #
439
+ # @param device_name [String] The device name.
440
+ # @param name [String] The user name.
441
+ # @param resource_group_name [String] The resource group name.
442
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
443
+ # will be added to the HTTP request.
444
+ #
445
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
446
+ #
447
+ def begin_delete_with_http_info(device_name, name, resource_group_name, custom_headers:nil)
448
+ begin_delete_async(device_name, name, resource_group_name, custom_headers:custom_headers).value!
449
+ end
450
+
451
+ #
452
+ # Deletes the user on a databox edge/gateway device.
453
+ #
454
+ # @param device_name [String] The device name.
455
+ # @param name [String] The user name.
456
+ # @param resource_group_name [String] The resource group name.
457
+ # @param [Hash{String => String}] A hash of custom headers that will be added
458
+ # to the HTTP request.
459
+ #
460
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
461
+ #
462
+ def begin_delete_async(device_name, name, resource_group_name, custom_headers:nil)
463
+ fail ArgumentError, 'device_name is nil' if device_name.nil?
464
+ fail ArgumentError, 'name is nil' if name.nil?
465
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
466
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
467
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
468
+
469
+
470
+ request_headers = {}
471
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
472
+
473
+ # Set Headers
474
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
475
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
476
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users/{name}'
477
+
478
+ request_url = @base_url || @client.base_url
479
+
480
+ options = {
481
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
482
+ path_params: {'deviceName' => device_name,'name' => name,'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name},
483
+ query_params: {'api-version' => @client.api_version},
484
+ headers: request_headers.merge(custom_headers || {}),
485
+ base_url: request_url
486
+ }
487
+ promise = @client.make_request_async(:delete, path_template, options)
488
+
489
+ promise = promise.then do |result|
490
+ http_response = result.response
491
+ status_code = http_response.status
492
+ response_content = http_response.body
493
+ unless status_code == 200 || status_code == 202 || status_code == 204
494
+ error_model = JSON.load(response_content)
495
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
496
+ end
497
+
498
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
499
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
500
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
501
+
502
+ result
503
+ end
504
+
505
+ promise.execute
506
+ end
507
+
508
+ #
509
+ # Gets all the users registered on a Data Box Edge/Data Box Gateway device.
510
+ #
511
+ # @param next_page_link [String] The NextLink from the previous successful call
512
+ # to List operation.
513
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
514
+ # will be added to the HTTP request.
515
+ #
516
+ # @return [UserList] operation results.
517
+ #
518
+ def list_by_data_box_edge_device_next(next_page_link, custom_headers:nil)
519
+ response = list_by_data_box_edge_device_next_async(next_page_link, custom_headers:custom_headers).value!
520
+ response.body unless response.nil?
521
+ end
522
+
523
+ #
524
+ # Gets all the users registered on a Data Box Edge/Data Box Gateway device.
525
+ #
526
+ # @param next_page_link [String] The NextLink from the previous successful call
527
+ # to List operation.
528
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
529
+ # will be added to the HTTP request.
530
+ #
531
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
532
+ #
533
+ def list_by_data_box_edge_device_next_with_http_info(next_page_link, custom_headers:nil)
534
+ list_by_data_box_edge_device_next_async(next_page_link, custom_headers:custom_headers).value!
535
+ end
536
+
537
+ #
538
+ # Gets all the users registered on a Data Box Edge/Data Box Gateway device.
539
+ #
540
+ # @param next_page_link [String] The NextLink from the previous successful call
541
+ # to List operation.
542
+ # @param [Hash{String => String}] A hash of custom headers that will be added
543
+ # to the HTTP request.
544
+ #
545
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
546
+ #
547
+ def list_by_data_box_edge_device_next_async(next_page_link, custom_headers:nil)
548
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
549
+
550
+
551
+ request_headers = {}
552
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
553
+
554
+ # Set Headers
555
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
556
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
557
+ path_template = '{nextLink}'
558
+
559
+ request_url = @base_url || @client.base_url
560
+
561
+ options = {
562
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
563
+ skip_encoding_path_params: {'nextLink' => next_page_link},
564
+ headers: request_headers.merge(custom_headers || {}),
565
+ base_url: request_url
566
+ }
567
+ promise = @client.make_request_async(:get, path_template, options)
568
+
569
+ promise = promise.then do |result|
570
+ http_response = result.response
571
+ status_code = http_response.status
572
+ response_content = http_response.body
573
+ unless status_code == 200
574
+ error_model = JSON.load(response_content)
575
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
576
+ end
577
+
578
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
579
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
580
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
581
+ # Deserialize Response
582
+ if status_code == 200
583
+ begin
584
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
585
+ result_mapper = Azure::DataBoxEdge::Mgmt::V2019_08_01::Models::UserList.mapper()
586
+ result.body = @client.deserialize(result_mapper, parsed_response)
587
+ rescue Exception => e
588
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
589
+ end
590
+ end
591
+
592
+ result
593
+ end
594
+
595
+ promise.execute
596
+ end
597
+
598
+ #
599
+ # Gets all the users registered on a Data Box Edge/Data Box Gateway device.
600
+ #
601
+ # @param device_name [String] The device name.
602
+ # @param resource_group_name [String] The resource group name.
603
+ # @param filter [String] Specify $filter='UserType eq <type>' to filter on user
604
+ # type property
605
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
606
+ # will be added to the HTTP request.
607
+ #
608
+ # @return [UserList] which provide lazy access to pages of the response.
609
+ #
610
+ def list_by_data_box_edge_device_as_lazy(device_name, resource_group_name, filter:nil, custom_headers:nil)
611
+ response = list_by_data_box_edge_device_async(device_name, resource_group_name, filter:filter, custom_headers:custom_headers).value!
612
+ unless response.nil?
613
+ page = response.body
614
+ page.next_method = Proc.new do |next_page_link|
615
+ list_by_data_box_edge_device_next_async(next_page_link, custom_headers:custom_headers)
616
+ end
617
+ page
618
+ end
619
+ end
620
+
621
+ end
622
+ end