mv-oci-sdk 2.142.0__py3-none-any.whl → 2.142.0.2__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (248) hide show
  1. {mv_oci_sdk-2.142.0.dist-info → mv_oci_sdk-2.142.0.2.dist-info}/METADATA +3 -3
  2. {mv_oci_sdk-2.142.0.dist-info → mv_oci_sdk-2.142.0.2.dist-info}/RECORD +248 -6
  3. oci/file_storage/__init__.py +14 -0
  4. oci/file_storage/file_storage_client.py +8601 -0
  5. oci/file_storage/file_storage_client_composite_operations.py +2068 -0
  6. oci/file_storage/models/__init__.py +130 -0
  7. oci/file_storage/models/change_file_system_compartment_details.py +76 -0
  8. oci/file_storage/models/change_filesystem_snapshot_policy_compartment_details.py +76 -0
  9. oci/file_storage/models/change_mount_target_compartment_details.py +76 -0
  10. oci/file_storage/models/change_outbound_connector_compartment_details.py +78 -0
  11. oci/file_storage/models/change_replication_compartment_details.py +76 -0
  12. oci/file_storage/models/client_options.py +389 -0
  13. oci/file_storage/models/create_export_details.py +303 -0
  14. oci/file_storage/models/create_file_system_details.py +425 -0
  15. oci/file_storage/models/create_filesystem_snapshot_policy_details.py +337 -0
  16. oci/file_storage/models/create_kerberos_details.py +200 -0
  17. oci/file_storage/models/create_ldap_bind_account_details.py +220 -0
  18. oci/file_storage/models/create_ldap_idmap_details.py +317 -0
  19. oci/file_storage/models/create_mount_target_details.py +581 -0
  20. oci/file_storage/models/create_outbound_connector_details.py +309 -0
  21. oci/file_storage/models/create_replication_details.py +325 -0
  22. oci/file_storage/models/create_snapshot_details.py +261 -0
  23. oci/file_storage/models/endpoint.py +103 -0
  24. oci/file_storage/models/export.py +456 -0
  25. oci/file_storage/models/export_set.py +411 -0
  26. oci/file_storage/models/export_set_summary.py +316 -0
  27. oci/file_storage/models/export_summary.py +343 -0
  28. oci/file_storage/models/file_system.py +818 -0
  29. oci/file_storage/models/file_system_summary.py +659 -0
  30. oci/file_storage/models/filesystem_snapshot_policy.py +473 -0
  31. oci/file_storage/models/filesystem_snapshot_policy_summary.py +429 -0
  32. oci/file_storage/models/kerberos.py +200 -0
  33. oci/file_storage/models/kerberos_keytab_entry.py +166 -0
  34. oci/file_storage/models/key_tab_secret_details.py +138 -0
  35. oci/file_storage/models/ldap_bind_account.py +243 -0
  36. oci/file_storage/models/ldap_bind_account_summary.py +176 -0
  37. oci/file_storage/models/ldap_idmap.py +317 -0
  38. oci/file_storage/models/mount_target.py +828 -0
  39. oci/file_storage/models/mount_target_summary.py +696 -0
  40. oci/file_storage/models/outbound_connector.py +453 -0
  41. oci/file_storage/models/outbound_connector_summary.py +438 -0
  42. oci/file_storage/models/replication.py +740 -0
  43. oci/file_storage/models/replication_estimate.py +196 -0
  44. oci/file_storage/models/replication_summary.py +491 -0
  45. oci/file_storage/models/replication_target.py +679 -0
  46. oci/file_storage/models/replication_target_summary.py +425 -0
  47. oci/file_storage/models/resource_lock.py +185 -0
  48. oci/file_storage/models/schedule_downgrade_shape_mount_target_details.py +78 -0
  49. oci/file_storage/models/snapshot.py +638 -0
  50. oci/file_storage/models/snapshot_schedule.py +487 -0
  51. oci/file_storage/models/snapshot_summary.py +601 -0
  52. oci/file_storage/models/source_details.py +119 -0
  53. oci/file_storage/models/update_export_details.py +111 -0
  54. oci/file_storage/models/update_export_set_details.py +172 -0
  55. oci/file_storage/models/update_file_system_details.py +246 -0
  56. oci/file_storage/models/update_filesystem_snapshot_policy_details.py +236 -0
  57. oci/file_storage/models/update_kerberos_details.py +200 -0
  58. oci/file_storage/models/update_ldap_idmap_details.py +317 -0
  59. oci/file_storage/models/update_mount_target_details.py +286 -0
  60. oci/file_storage/models/update_outbound_connector_details.py +158 -0
  61. oci/file_storage/models/update_replication_details.py +189 -0
  62. oci/file_storage/models/update_snapshot_details.py +156 -0
  63. oci/file_storage/models/upgrade_shape_mount_target_details.py +78 -0
  64. oci/file_storage/models/validate_key_tabs_details.py +103 -0
  65. oci/file_storage/models/validate_key_tabs_response_details.py +103 -0
  66. oci/functions/__init__.py +16 -0
  67. oci/functions/functions_invoke_client.py +267 -0
  68. oci/functions/functions_invoke_client_composite_operations.py +26 -0
  69. oci/functions/functions_management_client.py +2056 -0
  70. oci/functions/functions_management_client_composite_operations.py +326 -0
  71. oci/functions/models/__init__.py +74 -0
  72. oci/functions/models/application.py +628 -0
  73. oci/functions/models/application_summary.py +512 -0
  74. oci/functions/models/application_trace_config.py +103 -0
  75. oci/functions/models/change_application_compartment_details.py +78 -0
  76. oci/functions/models/config_details.py +134 -0
  77. oci/functions/models/constant_provisioned_concurrency_config.py +82 -0
  78. oci/functions/models/create_application_details.py +446 -0
  79. oci/functions/models/create_function_details.py +437 -0
  80. oci/functions/models/function.py +734 -0
  81. oci/functions/models/function_provisioned_concurrency_config.py +109 -0
  82. oci/functions/models/function_source_details.py +101 -0
  83. oci/functions/models/function_summary.py +657 -0
  84. oci/functions/models/function_trace_config.py +72 -0
  85. oci/functions/models/image_policy_config.py +103 -0
  86. oci/functions/models/key_details.py +76 -0
  87. oci/functions/models/none_provisioned_concurrency_config.py +51 -0
  88. oci/functions/models/pbf_listing.py +408 -0
  89. oci/functions/models/pbf_listing_summary.py +386 -0
  90. oci/functions/models/pbf_listing_version.py +467 -0
  91. oci/functions/models/pbf_listing_version_summary.py +446 -0
  92. oci/functions/models/pbf_listing_versions_collection.py +73 -0
  93. oci/functions/models/pbf_listings_collection.py +72 -0
  94. oci/functions/models/policy_details.py +103 -0
  95. oci/functions/models/pre_built_function_source_details.py +88 -0
  96. oci/functions/models/publisher_details.py +72 -0
  97. oci/functions/models/requirement_details.py +106 -0
  98. oci/functions/models/trigger.py +72 -0
  99. oci/functions/models/trigger_summary.py +72 -0
  100. oci/functions/models/triggers_collection.py +72 -0
  101. oci/functions/models/update_application_details.py +290 -0
  102. oci/functions/models/update_function_details.py +346 -0
  103. oci/load_balancer/__init__.py +14 -0
  104. oci/load_balancer/load_balancer_client.py +7641 -0
  105. oci/load_balancer/load_balancer_client_composite_operations.py +1630 -0
  106. oci/load_balancer/models/__init__.py +186 -0
  107. oci/load_balancer/models/action.py +97 -0
  108. oci/load_balancer/models/add_http_request_header_rule.py +134 -0
  109. oci/load_balancer/models/add_http_response_header_rule.py +137 -0
  110. oci/load_balancer/models/allow_rule.py +123 -0
  111. oci/load_balancer/models/backend.py +350 -0
  112. oci/load_balancer/models/backend_details.py +312 -0
  113. oci/load_balancer/models/backend_health.py +143 -0
  114. oci/load_balancer/models/backend_set.py +305 -0
  115. oci/load_balancer/models/backend_set_details.py +262 -0
  116. oci/load_balancer/models/backend_set_health.py +265 -0
  117. oci/load_balancer/models/certificate.py +188 -0
  118. oci/load_balancer/models/certificate_details.py +270 -0
  119. oci/load_balancer/models/change_load_balancer_compartment_details.py +78 -0
  120. oci/load_balancer/models/connection_configuration.py +168 -0
  121. oci/load_balancer/models/control_access_using_http_methods_rule.py +162 -0
  122. oci/load_balancer/models/create_backend_details.py +316 -0
  123. oci/load_balancer/models/create_backend_set_details.py +305 -0
  124. oci/load_balancer/models/create_certificate_details.py +270 -0
  125. oci/load_balancer/models/create_hostname_details.py +121 -0
  126. oci/load_balancer/models/create_listener_details.py +387 -0
  127. oci/load_balancer/models/create_load_balancer_details.py +895 -0
  128. oci/load_balancer/models/create_path_route_set_details.py +111 -0
  129. oci/load_balancer/models/create_routing_policy_details.py +154 -0
  130. oci/load_balancer/models/create_rule_set_details.py +109 -0
  131. oci/load_balancer/models/create_ssl_cipher_suite_details.py +606 -0
  132. oci/load_balancer/models/extend_http_request_header_value_rule.py +181 -0
  133. oci/load_balancer/models/extend_http_response_header_value_rule.py +181 -0
  134. oci/load_balancer/models/forward_to_backend_set.py +86 -0
  135. oci/load_balancer/models/health_check_result.py +219 -0
  136. oci/load_balancer/models/health_checker.py +381 -0
  137. oci/load_balancer/models/health_checker_details.py +376 -0
  138. oci/load_balancer/models/hostname.py +121 -0
  139. oci/load_balancer/models/hostname_details.py +117 -0
  140. oci/load_balancer/models/http_header_rule.py +127 -0
  141. oci/load_balancer/models/ip_address.py +142 -0
  142. oci/load_balancer/models/ip_based_max_connections_rule.py +118 -0
  143. oci/load_balancer/models/ip_max_connections.py +111 -0
  144. oci/load_balancer/models/lb_cookie_session_persistence_configuration_details.py +423 -0
  145. oci/load_balancer/models/listener.py +383 -0
  146. oci/load_balancer/models/listener_details.py +344 -0
  147. oci/load_balancer/models/listener_rule_summary.py +104 -0
  148. oci/load_balancer/models/load_balancer.py +1023 -0
  149. oci/load_balancer/models/load_balancer_health.py +281 -0
  150. oci/load_balancer/models/load_balancer_health_summary.py +167 -0
  151. oci/load_balancer/models/load_balancer_policy.py +80 -0
  152. oci/load_balancer/models/load_balancer_protocol.py +76 -0
  153. oci/load_balancer/models/load_balancer_shape.py +80 -0
  154. oci/load_balancer/models/path_match_condition.py +166 -0
  155. oci/load_balancer/models/path_match_type.py +126 -0
  156. oci/load_balancer/models/path_route.py +156 -0
  157. oci/load_balancer/models/path_route_set.py +112 -0
  158. oci/load_balancer/models/path_route_set_details.py +72 -0
  159. oci/load_balancer/models/redirect_rule.py +173 -0
  160. oci/load_balancer/models/redirect_uri.py +420 -0
  161. oci/load_balancer/models/remove_http_request_header_rule.py +90 -0
  162. oci/load_balancer/models/remove_http_response_header_rule.py +92 -0
  163. oci/load_balancer/models/reserved_ip.py +90 -0
  164. oci/load_balancer/models/routing_policy.py +152 -0
  165. oci/load_balancer/models/routing_policy_details.py +73 -0
  166. oci/load_balancer/models/routing_rule.py +135 -0
  167. oci/load_balancer/models/rule.py +177 -0
  168. oci/load_balancer/models/rule_condition.py +121 -0
  169. oci/load_balancer/models/rule_set.py +113 -0
  170. oci/load_balancer/models/rule_set_details.py +72 -0
  171. oci/load_balancer/models/session_persistence_configuration_details.py +136 -0
  172. oci/load_balancer/models/shape_details.py +121 -0
  173. oci/load_balancer/models/source_ip_address_condition.py +90 -0
  174. oci/load_balancer/models/source_vcn_id_condition.py +98 -0
  175. oci/load_balancer/models/source_vcn_ip_address_condition.py +97 -0
  176. oci/load_balancer/models/ssl_cipher_suite.py +606 -0
  177. oci/load_balancer/models/ssl_cipher_suite_details.py +606 -0
  178. oci/load_balancer/models/ssl_configuration.py +478 -0
  179. oci/load_balancer/models/ssl_configuration_details.py +476 -0
  180. oci/load_balancer/models/update_backend_details.py +242 -0
  181. oci/load_balancer/models/update_backend_set_details.py +264 -0
  182. oci/load_balancer/models/update_health_checker_details.py +374 -0
  183. oci/load_balancer/models/update_hostname_details.py +86 -0
  184. oci/load_balancer/models/update_listener_details.py +344 -0
  185. oci/load_balancer/models/update_load_balancer_details.py +356 -0
  186. oci/load_balancer/models/update_load_balancer_shape_details.py +127 -0
  187. oci/load_balancer/models/update_network_security_groups_details.py +99 -0
  188. oci/load_balancer/models/update_path_route_set_details.py +72 -0
  189. oci/load_balancer/models/update_routing_policy_details.py +115 -0
  190. oci/load_balancer/models/update_rule_set_details.py +72 -0
  191. oci/load_balancer/models/update_ssl_cipher_suite_details.py +300 -0
  192. oci/load_balancer/models/work_request.py +385 -0
  193. oci/load_balancer/models/work_request_error.py +115 -0
  194. oci/network_load_balancer/__init__.py +14 -0
  195. oci/network_load_balancer/models/__init__.py +106 -0
  196. oci/network_load_balancer/models/backend.py +338 -0
  197. oci/network_load_balancer/models/backend_collection.py +72 -0
  198. oci/network_load_balancer/models/backend_details.py +337 -0
  199. oci/network_load_balancer/models/backend_health.py +145 -0
  200. oci/network_load_balancer/models/backend_set.py +347 -0
  201. oci/network_load_balancer/models/backend_set_collection.py +72 -0
  202. oci/network_load_balancer/models/backend_set_details.py +306 -0
  203. oci/network_load_balancer/models/backend_set_health.py +265 -0
  204. oci/network_load_balancer/models/backend_set_summary.py +347 -0
  205. oci/network_load_balancer/models/backend_summary.py +338 -0
  206. oci/network_load_balancer/models/change_network_load_balancer_compartment_details.py +78 -0
  207. oci/network_load_balancer/models/create_backend_details.py +336 -0
  208. oci/network_load_balancer/models/create_backend_set_details.py +347 -0
  209. oci/network_load_balancer/models/create_listener_details.py +396 -0
  210. oci/network_load_balancer/models/create_network_load_balancer_details.py +694 -0
  211. oci/network_load_balancer/models/dns_health_checker_details.py +264 -0
  212. oci/network_load_balancer/models/health_check_result.py +139 -0
  213. oci/network_load_balancer/models/health_checker.py +449 -0
  214. oci/network_load_balancer/models/health_checker_details.py +449 -0
  215. oci/network_load_balancer/models/ip_address.py +189 -0
  216. oci/network_load_balancer/models/listener.py +396 -0
  217. oci/network_load_balancer/models/listener_collection.py +72 -0
  218. oci/network_load_balancer/models/listener_details.py +396 -0
  219. oci/network_load_balancer/models/listener_summary.py +396 -0
  220. oci/network_load_balancer/models/network_load_balancer.py +847 -0
  221. oci/network_load_balancer/models/network_load_balancer_collection.py +72 -0
  222. oci/network_load_balancer/models/network_load_balancer_health.py +281 -0
  223. oci/network_load_balancer/models/network_load_balancer_health_collection.py +72 -0
  224. oci/network_load_balancer/models/network_load_balancer_health_summary.py +167 -0
  225. oci/network_load_balancer/models/network_load_balancer_summary.py +833 -0
  226. oci/network_load_balancer/models/network_load_balancers_policy_collection.py +72 -0
  227. oci/network_load_balancer/models/network_load_balancers_protocol_collection.py +73 -0
  228. oci/network_load_balancer/models/reserved_ip.py +90 -0
  229. oci/network_load_balancer/models/update_backend_details.py +199 -0
  230. oci/network_load_balancer/models/update_backend_set_details.py +288 -0
  231. oci/network_load_balancer/models/update_health_checker_details.py +444 -0
  232. oci/network_load_balancer/models/update_listener_details.py +361 -0
  233. oci/network_load_balancer/models/update_network_load_balancer_details.py +386 -0
  234. oci/network_load_balancer/models/update_network_security_groups_details.py +99 -0
  235. oci/network_load_balancer/models/work_request.py +454 -0
  236. oci/network_load_balancer/models/work_request_collection.py +72 -0
  237. oci/network_load_balancer/models/work_request_error.py +136 -0
  238. oci/network_load_balancer/models/work_request_error_collection.py +72 -0
  239. oci/network_load_balancer/models/work_request_log_entry.py +103 -0
  240. oci/network_load_balancer/models/work_request_log_entry_collection.py +72 -0
  241. oci/network_load_balancer/models/work_request_resource.py +199 -0
  242. oci/network_load_balancer/models/work_request_summary.py +454 -0
  243. oci/network_load_balancer/network_load_balancer_client.py +4392 -0
  244. oci/network_load_balancer/network_load_balancer_client_composite_operations.py +757 -0
  245. oci/version.py +1 -1
  246. {mv_oci_sdk-2.142.0.dist-info → mv_oci_sdk-2.142.0.2.dist-info}/LICENSE.txt +0 -0
  247. {mv_oci_sdk-2.142.0.dist-info → mv_oci_sdk-2.142.0.2.dist-info}/WHEEL +0 -0
  248. {mv_oci_sdk-2.142.0.dist-info → mv_oci_sdk-2.142.0.2.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,757 @@
1
+ # coding: utf-8
2
+ # Copyright (c) 2016, 2025, Oracle and/or its affiliates. All rights reserved.
3
+ # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
4
+
5
+ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200501
6
+
7
+ import oci # noqa: F401
8
+ from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401
9
+
10
+
11
+ class NetworkLoadBalancerClientCompositeOperations(object):
12
+ """
13
+ This class provides a wrapper around :py:class:`~oci.network_load_balancer.NetworkLoadBalancerClient` and offers convenience methods
14
+ for operations that would otherwise need to be chained together. For example, instead of performing an action
15
+ on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource
16
+ to enter a given state, you can call a single method in this class to accomplish the same functionality
17
+ """
18
+
19
+ def __init__(self, client, **kwargs):
20
+ """
21
+ Creates a new NetworkLoadBalancerClientCompositeOperations object
22
+
23
+ :param NetworkLoadBalancerClient client:
24
+ The service client which will be wrapped by this object
25
+ """
26
+ self.client = client
27
+
28
+ def change_network_load_balancer_compartment_and_wait_for_state(self, network_load_balancer_id, change_network_load_balancer_compartment_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
29
+ """
30
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.change_network_load_balancer_compartment` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
31
+ to enter the given state(s).
32
+
33
+ :param str network_load_balancer_id: (required)
34
+ The `OCID`__ of the network load balancer to update.
35
+
36
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
37
+
38
+ :param oci.network_load_balancer.models.ChangeNetworkLoadBalancerCompartmentDetails change_network_load_balancer_compartment_details: (required)
39
+ The configuration details for moving a network load balancer to a different compartment.
40
+
41
+ :param list[str] wait_for_states:
42
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
43
+
44
+ :param dict operation_kwargs:
45
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.change_network_load_balancer_compartment`
46
+
47
+ :param dict waiter_kwargs:
48
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
49
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
50
+ """
51
+ operation_result = self.client.change_network_load_balancer_compartment(network_load_balancer_id, change_network_load_balancer_compartment_details, **operation_kwargs)
52
+ if not wait_for_states:
53
+ return operation_result
54
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
55
+ if 'opc-work-request-id' not in operation_result.headers:
56
+ return operation_result
57
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
58
+
59
+ try:
60
+ waiter_result = oci.wait_until(
61
+ self.client,
62
+ self.client.get_work_request(wait_for_resource_id),
63
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
64
+ **waiter_kwargs
65
+ )
66
+ result_to_return = waiter_result
67
+
68
+ return result_to_return
69
+ except Exception as e:
70
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
71
+
72
+ def create_backend_and_wait_for_state(self, network_load_balancer_id, create_backend_details, backend_set_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
73
+ """
74
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.create_backend` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
75
+ to enter the given state(s).
76
+
77
+ :param str network_load_balancer_id: (required)
78
+ The `OCID`__ of the network load balancer to update.
79
+
80
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
81
+
82
+ :param oci.network_load_balancer.models.CreateBackendDetails create_backend_details: (required)
83
+ The details to add a backend server to a backend set.
84
+
85
+ :param str backend_set_name: (required)
86
+ The name of the backend set to which to add the backend server.
87
+
88
+ Example: `example_backend_set`
89
+
90
+ :param list[str] wait_for_states:
91
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
92
+
93
+ :param dict operation_kwargs:
94
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.create_backend`
95
+
96
+ :param dict waiter_kwargs:
97
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
98
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
99
+ """
100
+ operation_result = self.client.create_backend(network_load_balancer_id, create_backend_details, backend_set_name, **operation_kwargs)
101
+ if not wait_for_states:
102
+ return operation_result
103
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
104
+ if 'opc-work-request-id' not in operation_result.headers:
105
+ return operation_result
106
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
107
+
108
+ try:
109
+ waiter_result = oci.wait_until(
110
+ self.client,
111
+ self.client.get_work_request(wait_for_resource_id),
112
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
113
+ **waiter_kwargs
114
+ )
115
+ result_to_return = waiter_result
116
+
117
+ return result_to_return
118
+ except Exception as e:
119
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
120
+
121
+ def create_backend_set_and_wait_for_state(self, network_load_balancer_id, create_backend_set_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
122
+ """
123
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.create_backend_set` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
124
+ to enter the given state(s).
125
+
126
+ :param str network_load_balancer_id: (required)
127
+ The `OCID`__ of the network load balancer to update.
128
+
129
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
130
+
131
+ :param oci.network_load_balancer.models.CreateBackendSetDetails create_backend_set_details: (required)
132
+ The details for adding a backend set.
133
+
134
+ :param list[str] wait_for_states:
135
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
136
+
137
+ :param dict operation_kwargs:
138
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.create_backend_set`
139
+
140
+ :param dict waiter_kwargs:
141
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
142
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
143
+ """
144
+ operation_result = self.client.create_backend_set(network_load_balancer_id, create_backend_set_details, **operation_kwargs)
145
+ if not wait_for_states:
146
+ return operation_result
147
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
148
+ if 'opc-work-request-id' not in operation_result.headers:
149
+ return operation_result
150
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
151
+
152
+ try:
153
+ waiter_result = oci.wait_until(
154
+ self.client,
155
+ self.client.get_work_request(wait_for_resource_id),
156
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
157
+ **waiter_kwargs
158
+ )
159
+ result_to_return = waiter_result
160
+
161
+ return result_to_return
162
+ except Exception as e:
163
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
164
+
165
+ def create_listener_and_wait_for_state(self, network_load_balancer_id, create_listener_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
166
+ """
167
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.create_listener` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
168
+ to enter the given state(s).
169
+
170
+ :param str network_load_balancer_id: (required)
171
+ The `OCID`__ of the network load balancer to update.
172
+
173
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
174
+
175
+ :param oci.network_load_balancer.models.CreateListenerDetails create_listener_details: (required)
176
+ Details to add a listener.
177
+
178
+ :param list[str] wait_for_states:
179
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
180
+
181
+ :param dict operation_kwargs:
182
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.create_listener`
183
+
184
+ :param dict waiter_kwargs:
185
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
186
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
187
+ """
188
+ operation_result = self.client.create_listener(network_load_balancer_id, create_listener_details, **operation_kwargs)
189
+ if not wait_for_states:
190
+ return operation_result
191
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
192
+ if 'opc-work-request-id' not in operation_result.headers:
193
+ return operation_result
194
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
195
+
196
+ try:
197
+ waiter_result = oci.wait_until(
198
+ self.client,
199
+ self.client.get_work_request(wait_for_resource_id),
200
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
201
+ **waiter_kwargs
202
+ )
203
+ result_to_return = waiter_result
204
+
205
+ return result_to_return
206
+ except Exception as e:
207
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
208
+
209
+ def create_network_load_balancer_and_wait_for_state(self, create_network_load_balancer_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
210
+ """
211
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.create_network_load_balancer` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
212
+ to enter the given state(s).
213
+
214
+ :param oci.network_load_balancer.models.CreateNetworkLoadBalancerDetails create_network_load_balancer_details: (required)
215
+ Details for the new network load balancer.
216
+
217
+ :param list[str] wait_for_states:
218
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
219
+
220
+ :param dict operation_kwargs:
221
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.create_network_load_balancer`
222
+
223
+ :param dict waiter_kwargs:
224
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
225
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
226
+ """
227
+ operation_result = self.client.create_network_load_balancer(create_network_load_balancer_details, **operation_kwargs)
228
+ if not wait_for_states:
229
+ return operation_result
230
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
231
+ if 'opc-work-request-id' not in operation_result.headers:
232
+ return operation_result
233
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
234
+
235
+ try:
236
+ waiter_result = oci.wait_until(
237
+ self.client,
238
+ self.client.get_work_request(wait_for_resource_id),
239
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
240
+ **waiter_kwargs
241
+ )
242
+ result_to_return = waiter_result
243
+
244
+ return result_to_return
245
+ except Exception as e:
246
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
247
+
248
+ def delete_backend_and_wait_for_state(self, network_load_balancer_id, backend_set_name, backend_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
249
+ """
250
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.delete_backend` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
251
+ to enter the given state(s).
252
+
253
+ :param str network_load_balancer_id: (required)
254
+ The `OCID`__ of the network load balancer to update.
255
+
256
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
257
+
258
+ :param str backend_set_name: (required)
259
+ The name of the backend set associated with the backend server.
260
+
261
+ Example: `example_backend_set`
262
+
263
+ :param str backend_name: (required)
264
+ The name of the backend server to remove.
265
+ If the backend was created with an explicitly specified name, that name should be used here.
266
+ If the backend was created without explicitly specifying the name, but was created using ipAddress, this is specified as <ipAddress>:<port>.
267
+ If the backend was created without explicitly specifying the name, but was created using targetId, this is specified as <targetId>:<port>.
268
+
269
+ Example: `10.0.0.3:8080` or `ocid1.privateip..oc1.<var>&lt;unique_ID&gt;</var>:8080`
270
+
271
+ :param list[str] wait_for_states:
272
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
273
+
274
+ :param dict operation_kwargs:
275
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.delete_backend`
276
+
277
+ :param dict waiter_kwargs:
278
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
279
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
280
+ """
281
+ operation_result = None
282
+ try:
283
+ operation_result = self.client.delete_backend(network_load_balancer_id, backend_set_name, backend_name, **operation_kwargs)
284
+ except oci.exceptions.ServiceError as e:
285
+ if e.status == 404:
286
+ return WAIT_RESOURCE_NOT_FOUND
287
+ else:
288
+ raise e
289
+
290
+ if not wait_for_states:
291
+ return operation_result
292
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
293
+ if 'opc-work-request-id' not in operation_result.headers:
294
+ return operation_result
295
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
296
+
297
+ try:
298
+ waiter_result = oci.wait_until(
299
+ self.client,
300
+ self.client.get_work_request(wait_for_resource_id),
301
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
302
+ **waiter_kwargs
303
+ )
304
+ result_to_return = waiter_result
305
+
306
+ return result_to_return
307
+ except Exception as e:
308
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
309
+
310
+ def delete_backend_set_and_wait_for_state(self, network_load_balancer_id, backend_set_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
311
+ """
312
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.delete_backend_set` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
313
+ to enter the given state(s).
314
+
315
+ :param str network_load_balancer_id: (required)
316
+ The `OCID`__ of the network load balancer to update.
317
+
318
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
319
+
320
+ :param str backend_set_name: (required)
321
+ The name of the backend set to delete.
322
+
323
+ Example: `example_backend_set`
324
+
325
+ :param list[str] wait_for_states:
326
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
327
+
328
+ :param dict operation_kwargs:
329
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.delete_backend_set`
330
+
331
+ :param dict waiter_kwargs:
332
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
333
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
334
+ """
335
+ operation_result = None
336
+ try:
337
+ operation_result = self.client.delete_backend_set(network_load_balancer_id, backend_set_name, **operation_kwargs)
338
+ except oci.exceptions.ServiceError as e:
339
+ if e.status == 404:
340
+ return WAIT_RESOURCE_NOT_FOUND
341
+ else:
342
+ raise e
343
+
344
+ if not wait_for_states:
345
+ return operation_result
346
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
347
+ if 'opc-work-request-id' not in operation_result.headers:
348
+ return operation_result
349
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
350
+
351
+ try:
352
+ waiter_result = oci.wait_until(
353
+ self.client,
354
+ self.client.get_work_request(wait_for_resource_id),
355
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
356
+ **waiter_kwargs
357
+ )
358
+ result_to_return = waiter_result
359
+
360
+ return result_to_return
361
+ except Exception as e:
362
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
363
+
364
+ def delete_listener_and_wait_for_state(self, network_load_balancer_id, listener_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
365
+ """
366
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.delete_listener` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
367
+ to enter the given state(s).
368
+
369
+ :param str network_load_balancer_id: (required)
370
+ The `OCID`__ of the network load balancer to update.
371
+
372
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
373
+
374
+ :param str listener_name: (required)
375
+ The name of the listener to delete.
376
+
377
+ Example: `example_listener`
378
+
379
+ :param list[str] wait_for_states:
380
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
381
+
382
+ :param dict operation_kwargs:
383
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.delete_listener`
384
+
385
+ :param dict waiter_kwargs:
386
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
387
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
388
+ """
389
+ operation_result = None
390
+ try:
391
+ operation_result = self.client.delete_listener(network_load_balancer_id, listener_name, **operation_kwargs)
392
+ except oci.exceptions.ServiceError as e:
393
+ if e.status == 404:
394
+ return WAIT_RESOURCE_NOT_FOUND
395
+ else:
396
+ raise e
397
+
398
+ if not wait_for_states:
399
+ return operation_result
400
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
401
+ if 'opc-work-request-id' not in operation_result.headers:
402
+ return operation_result
403
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
404
+
405
+ try:
406
+ waiter_result = oci.wait_until(
407
+ self.client,
408
+ self.client.get_work_request(wait_for_resource_id),
409
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
410
+ **waiter_kwargs
411
+ )
412
+ result_to_return = waiter_result
413
+
414
+ return result_to_return
415
+ except Exception as e:
416
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
417
+
418
+ def delete_network_load_balancer_and_wait_for_state(self, network_load_balancer_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
419
+ """
420
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.delete_network_load_balancer` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
421
+ to enter the given state(s).
422
+
423
+ :param str network_load_balancer_id: (required)
424
+ The `OCID`__ of the network load balancer to update.
425
+
426
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
427
+
428
+ :param list[str] wait_for_states:
429
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
430
+
431
+ :param dict operation_kwargs:
432
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.delete_network_load_balancer`
433
+
434
+ :param dict waiter_kwargs:
435
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
436
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
437
+ """
438
+ operation_result = None
439
+ try:
440
+ operation_result = self.client.delete_network_load_balancer(network_load_balancer_id, **operation_kwargs)
441
+ except oci.exceptions.ServiceError as e:
442
+ if e.status == 404:
443
+ return WAIT_RESOURCE_NOT_FOUND
444
+ else:
445
+ raise e
446
+
447
+ if not wait_for_states:
448
+ return operation_result
449
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
450
+ if 'opc-work-request-id' not in operation_result.headers:
451
+ return operation_result
452
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
453
+
454
+ try:
455
+ waiter_result = oci.wait_until(
456
+ self.client,
457
+ self.client.get_work_request(wait_for_resource_id),
458
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
459
+ **waiter_kwargs
460
+ )
461
+ result_to_return = waiter_result
462
+
463
+ return result_to_return
464
+ except Exception as e:
465
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
466
+
467
+ def update_backend_and_wait_for_state(self, network_load_balancer_id, update_backend_details, backend_set_name, backend_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
468
+ """
469
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_backend` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
470
+ to enter the given state(s).
471
+
472
+ :param str network_load_balancer_id: (required)
473
+ The `OCID`__ of the network load balancer to update.
474
+
475
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
476
+
477
+ :param oci.network_load_balancer.models.UpdateBackendDetails update_backend_details: (required)
478
+ Details for updating a backend server.
479
+
480
+ :param str backend_set_name: (required)
481
+ The name of the backend set associated with the backend server.
482
+
483
+ Example: `example_backend_set`
484
+
485
+ :param str backend_name: (required)
486
+ The name of the backend server to update.
487
+ If the backend was created with an explicitly specified name, that name should be used here.
488
+ If the backend was created without explicitly specifying the name, but was created using ipAddress, this is specified as <ipAddress>:<port>.
489
+ If the backend was created without explicitly specifying the name, but was created using targetId, this is specified as <targetId>:<port>.
490
+
491
+ Example: `10.0.0.3:8080` or `ocid1.privateip..oc1.<var>&lt;unique_ID&gt;</var>:8080`
492
+
493
+ :param list[str] wait_for_states:
494
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
495
+
496
+ :param dict operation_kwargs:
497
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_backend`
498
+
499
+ :param dict waiter_kwargs:
500
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
501
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
502
+ """
503
+ operation_result = self.client.update_backend(network_load_balancer_id, update_backend_details, backend_set_name, backend_name, **operation_kwargs)
504
+ if not wait_for_states:
505
+ return operation_result
506
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
507
+ if 'opc-work-request-id' not in operation_result.headers:
508
+ return operation_result
509
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
510
+
511
+ try:
512
+ waiter_result = oci.wait_until(
513
+ self.client,
514
+ self.client.get_work_request(wait_for_resource_id),
515
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
516
+ **waiter_kwargs
517
+ )
518
+ result_to_return = waiter_result
519
+
520
+ return result_to_return
521
+ except Exception as e:
522
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
523
+
524
+ def update_backend_set_and_wait_for_state(self, network_load_balancer_id, update_backend_set_details, backend_set_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
525
+ """
526
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_backend_set` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
527
+ to enter the given state(s).
528
+
529
+ :param str network_load_balancer_id: (required)
530
+ The `OCID`__ of the network load balancer to update.
531
+
532
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
533
+
534
+ :param oci.network_load_balancer.models.UpdateBackendSetDetails update_backend_set_details: (required)
535
+ The details to update a backend set.
536
+
537
+ :param str backend_set_name: (required)
538
+ The name of the backend set to update.
539
+
540
+ Example: `example_backend_set`
541
+
542
+ :param list[str] wait_for_states:
543
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
544
+
545
+ :param dict operation_kwargs:
546
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_backend_set`
547
+
548
+ :param dict waiter_kwargs:
549
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
550
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
551
+ """
552
+ operation_result = self.client.update_backend_set(network_load_balancer_id, update_backend_set_details, backend_set_name, **operation_kwargs)
553
+ if not wait_for_states:
554
+ return operation_result
555
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
556
+ if 'opc-work-request-id' not in operation_result.headers:
557
+ return operation_result
558
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
559
+
560
+ try:
561
+ waiter_result = oci.wait_until(
562
+ self.client,
563
+ self.client.get_work_request(wait_for_resource_id),
564
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
565
+ **waiter_kwargs
566
+ )
567
+ result_to_return = waiter_result
568
+
569
+ return result_to_return
570
+ except Exception as e:
571
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
572
+
573
+ def update_health_checker_and_wait_for_state(self, network_load_balancer_id, update_health_checker_details, backend_set_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
574
+ """
575
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_health_checker` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
576
+ to enter the given state(s).
577
+
578
+ :param str network_load_balancer_id: (required)
579
+ The `OCID`__ of the network load balancer to update.
580
+
581
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
582
+
583
+ :param oci.network_load_balancer.models.UpdateHealthCheckerDetails update_health_checker_details: (required)
584
+ The health check policy configuration details.
585
+
586
+ :param str backend_set_name: (required)
587
+ The name of the backend set associated with the health check policy to be retrieved.
588
+
589
+ Example: `example_backend_set`
590
+
591
+ :param list[str] wait_for_states:
592
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
593
+
594
+ :param dict operation_kwargs:
595
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_health_checker`
596
+
597
+ :param dict waiter_kwargs:
598
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
599
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
600
+ """
601
+ operation_result = self.client.update_health_checker(network_load_balancer_id, update_health_checker_details, backend_set_name, **operation_kwargs)
602
+ if not wait_for_states:
603
+ return operation_result
604
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
605
+ if 'opc-work-request-id' not in operation_result.headers:
606
+ return operation_result
607
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
608
+
609
+ try:
610
+ waiter_result = oci.wait_until(
611
+ self.client,
612
+ self.client.get_work_request(wait_for_resource_id),
613
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
614
+ **waiter_kwargs
615
+ )
616
+ result_to_return = waiter_result
617
+
618
+ return result_to_return
619
+ except Exception as e:
620
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
621
+
622
+ def update_listener_and_wait_for_state(self, network_load_balancer_id, update_listener_details, listener_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
623
+ """
624
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_listener` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
625
+ to enter the given state(s).
626
+
627
+ :param str network_load_balancer_id: (required)
628
+ The `OCID`__ of the network load balancer to update.
629
+
630
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
631
+
632
+ :param oci.network_load_balancer.models.UpdateListenerDetails update_listener_details: (required)
633
+ Details to update a listener.
634
+
635
+ :param str listener_name: (required)
636
+ The name of the listener to update.
637
+
638
+ Example: `example_listener`
639
+
640
+ :param list[str] wait_for_states:
641
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
642
+
643
+ :param dict operation_kwargs:
644
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_listener`
645
+
646
+ :param dict waiter_kwargs:
647
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
648
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
649
+ """
650
+ operation_result = self.client.update_listener(network_load_balancer_id, update_listener_details, listener_name, **operation_kwargs)
651
+ if not wait_for_states:
652
+ return operation_result
653
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
654
+ if 'opc-work-request-id' not in operation_result.headers:
655
+ return operation_result
656
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
657
+
658
+ try:
659
+ waiter_result = oci.wait_until(
660
+ self.client,
661
+ self.client.get_work_request(wait_for_resource_id),
662
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
663
+ **waiter_kwargs
664
+ )
665
+ result_to_return = waiter_result
666
+
667
+ return result_to_return
668
+ except Exception as e:
669
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
670
+
671
+ def update_network_load_balancer_and_wait_for_state(self, network_load_balancer_id, update_network_load_balancer_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
672
+ """
673
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_network_load_balancer` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
674
+ to enter the given state(s).
675
+
676
+ :param str network_load_balancer_id: (required)
677
+ The `OCID`__ of the network load balancer to update.
678
+
679
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
680
+
681
+ :param oci.network_load_balancer.models.UpdateNetworkLoadBalancerDetails update_network_load_balancer_details: (required)
682
+ The information to be updated.
683
+
684
+ :param list[str] wait_for_states:
685
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
686
+
687
+ :param dict operation_kwargs:
688
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_network_load_balancer`
689
+
690
+ :param dict waiter_kwargs:
691
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
692
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
693
+ """
694
+ operation_result = self.client.update_network_load_balancer(network_load_balancer_id, update_network_load_balancer_details, **operation_kwargs)
695
+ if not wait_for_states:
696
+ return operation_result
697
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
698
+ if 'opc-work-request-id' not in operation_result.headers:
699
+ return operation_result
700
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
701
+
702
+ try:
703
+ waiter_result = oci.wait_until(
704
+ self.client,
705
+ self.client.get_work_request(wait_for_resource_id),
706
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
707
+ **waiter_kwargs
708
+ )
709
+ result_to_return = waiter_result
710
+
711
+ return result_to_return
712
+ except Exception as e:
713
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
714
+
715
+ def update_network_security_groups_and_wait_for_state(self, network_load_balancer_id, update_network_security_groups_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
716
+ """
717
+ Calls :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_network_security_groups` and waits for the :py:class:`~oci.network_load_balancer.models.WorkRequest`
718
+ to enter the given state(s).
719
+
720
+ :param str network_load_balancer_id: (required)
721
+ The `OCID`__ of the network load balancer to update.
722
+
723
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
724
+
725
+ :param oci.network_load_balancer.models.UpdateNetworkSecurityGroupsDetails update_network_security_groups_details: (required)
726
+ The details for updating the network security groups associated with the specified network load balancer.
727
+
728
+ :param list[str] wait_for_states:
729
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.network_load_balancer.models.WorkRequest.status`
730
+
731
+ :param dict operation_kwargs:
732
+ A dictionary of keyword arguments to pass to :py:func:`~oci.network_load_balancer.NetworkLoadBalancerClient.update_network_security_groups`
733
+
734
+ :param dict waiter_kwargs:
735
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
736
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
737
+ """
738
+ operation_result = self.client.update_network_security_groups(network_load_balancer_id, update_network_security_groups_details, **operation_kwargs)
739
+ if not wait_for_states:
740
+ return operation_result
741
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
742
+ if 'opc-work-request-id' not in operation_result.headers:
743
+ return operation_result
744
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
745
+
746
+ try:
747
+ waiter_result = oci.wait_until(
748
+ self.client,
749
+ self.client.get_work_request(wait_for_resource_id),
750
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
751
+ **waiter_kwargs
752
+ )
753
+ result_to_return = waiter_result
754
+
755
+ return result_to_return
756
+ except Exception as e:
757
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)