oci 2.128.1__py3-none-any.whl → 2.128.9__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (561) hide show
  1. oci/access_governance_cp/access_governance_cp_client.py +8 -8
  2. oci/adm/application_dependency_management_client.py +36 -36
  3. oci/ai_anomaly_detection/anomaly_detection_client.py +36 -36
  4. oci/ai_document/ai_service_document_client.py +22 -22
  5. oci/ai_document/models/analyze_document_details.py +7 -3
  6. oci/ai_document/models/general_processor_config.py +7 -3
  7. oci/ai_language/ai_service_language_client.py +44 -44
  8. oci/ai_speech/ai_service_speech_client.py +10 -10
  9. oci/ai_vision/ai_service_vision_client.py +25 -25
  10. oci/analytics/analytics_client.py +23 -23
  11. oci/announcements_service/announcement_client.py +4 -4
  12. oci/announcements_service/announcement_subscription_client.py +9 -9
  13. oci/announcements_service/announcements_preferences_client.py +4 -4
  14. oci/apigateway/api_gateway_client.py +21 -21
  15. oci/apigateway/deployment_client.py +6 -6
  16. oci/apigateway/gateway_client.py +6 -6
  17. oci/apigateway/subscribers_client.py +6 -6
  18. oci/apigateway/usage_plans_client.py +6 -6
  19. oci/apigateway/work_requests_client.py +5 -5
  20. oci/apm_config/config_client.py +9 -9
  21. oci/apm_control_plane/apm_domain_client.py +14 -14
  22. oci/apm_synthetics/apm_synthetic_client.py +28 -28
  23. oci/apm_traces/attributes_client.py +8 -8
  24. oci/apm_traces/query_client.py +2 -2
  25. oci/apm_traces/trace_client.py +4 -4
  26. oci/appmgmt_control/appmgmt_control_client.py +8 -8
  27. oci/artifacts/artifacts_client.py +32 -32
  28. oci/audit/audit_client.py +3 -3
  29. oci/autoscaling/auto_scaling_client.py +11 -11
  30. oci/bastion/bastion_client.py +15 -15
  31. oci/bds/bds_client.py +66 -66
  32. oci/blockchain/blockchain_platform_client.py +27 -27
  33. oci/budget/budget_client.py +10 -10
  34. oci/capacity_management/capacity_management_client.py +45 -45
  35. oci/certificates/certificates_client.py +5 -5
  36. oci/certificates_management/certificates_management_client.py +32 -32
  37. oci/cims/incident_client.py +8 -8
  38. oci/cims/user_client.py +1 -1
  39. oci/cloud_bridge/common_client.py +5 -5
  40. oci/cloud_bridge/discovery_client.py +14 -14
  41. oci/cloud_bridge/inventory_client.py +16 -16
  42. oci/cloud_bridge/ocb_agent_svc_client.py +23 -23
  43. oci/cloud_guard/cloud_guard_client.py +155 -155
  44. oci/cloud_migrations/migration_client.py +43 -43
  45. oci/cluster_placement_groups/cluster_placement_groups_cp_client.py +13 -13
  46. oci/compute_cloud_at_customer/compute_cloud_at_customer_client.py +12 -12
  47. oci/compute_instance_agent/compute_instance_agent_client.py +6 -6
  48. oci/compute_instance_agent/plugin_client.py +2 -2
  49. oci/compute_instance_agent/pluginconfig_client.py +1 -1
  50. oci/container_engine/container_engine_client.py +44 -44
  51. oci/container_instances/container_instance_client.py +18 -18
  52. oci/core/blockstorage_client.py +60 -60
  53. oci/core/compute_client.py +99 -99
  54. oci/core/compute_management_client.py +32 -32
  55. oci/core/virtual_network_client.py +247 -247
  56. oci/dashboard_service/dashboard_client.py +6 -6
  57. oci/dashboard_service/dashboard_group_client.py +6 -6
  58. oci/data_catalog/data_catalog_client.py +149 -149
  59. oci/data_flow/data_flow_client.py +42 -42
  60. oci/data_integration/data_integration_client.py +163 -163
  61. oci/data_labeling_service/data_labeling_management_client.py +17 -17
  62. oci/data_labeling_service_dataplane/data_labeling_client.py +15 -15
  63. oci/data_safe/data_safe_client.py +278 -278
  64. oci/data_science/data_science_client.py +91 -91
  65. oci/database/database_client.py +8268 -6013
  66. oci/database/database_client_composite_operations.py +620 -0
  67. oci/database/models/__init__.py +46 -0
  68. oci/database/models/autonomous_container_database.py +2 -2
  69. oci/database/models/autonomous_container_database_summary.py +2 -2
  70. oci/database/models/autonomous_database.py +76 -2
  71. oci/database/models/autonomous_database_summary.py +76 -2
  72. oci/database/models/change_exadb_vm_cluster_compartment_details.py +76 -0
  73. oci/database/models/change_exascale_db_storage_vault_compartment_details.py +76 -0
  74. oci/database/models/cloud_automation_apply_update_time_preference.py +103 -0
  75. oci/database/models/cloud_automation_freeze_period.py +103 -0
  76. oci/database/models/cloud_automation_update_details.py +157 -0
  77. oci/database/models/create_autonomous_database_base.py +4 -4
  78. oci/database/models/create_database_details.py +37 -2
  79. oci/database/models/create_database_software_image_details.py +7 -3
  80. oci/database/models/create_exadb_vm_cluster_details.py +956 -0
  81. oci/database/models/create_exascale_db_storage_vault_details.py +340 -0
  82. oci/database/models/create_pluggable_database_creation_type_details.py +4 -1
  83. oci/database/models/create_pluggable_database_from_local_clone_details.py +33 -2
  84. oci/database/models/create_pluggable_database_from_remote_clone_details.py +33 -2
  85. oci/database/models/database_software_image.py +7 -3
  86. oci/database/models/database_software_image_summary.py +7 -3
  87. oci/database/models/db_node.py +38 -3
  88. oci/database/models/db_node_details.py +76 -0
  89. oci/database/models/db_node_summary.py +38 -3
  90. oci/database/models/db_server.py +3 -3
  91. oci/database/models/db_server_summary.py +3 -3
  92. oci/database/models/exadb_vm_cluster.py +1592 -0
  93. oci/database/models/exadb_vm_cluster_storage_details.py +72 -0
  94. oci/database/models/exadb_vm_cluster_summary.py +1565 -0
  95. oci/database/models/exadb_vm_cluster_update.py +416 -0
  96. oci/database/models/exadb_vm_cluster_update_history_entry.py +392 -0
  97. oci/database/models/exadb_vm_cluster_update_history_entry_summary.py +392 -0
  98. oci/database/models/exadb_vm_cluster_update_summary.py +422 -0
  99. oci/database/models/exascale_db_storage_details.py +103 -0
  100. oci/database/models/exascale_db_storage_input_details.py +72 -0
  101. oci/database/models/exascale_db_storage_vault.py +605 -0
  102. oci/database/models/exascale_db_storage_vault_summary.py +536 -0
  103. oci/database/models/gi_minor_version_summary.py +107 -0
  104. oci/database/models/key_store.py +7 -3
  105. oci/database/models/key_store_summary.py +7 -3
  106. oci/database/models/maintenance_window.py +2 -4
  107. oci/database/models/remove_virtual_machine_from_exadb_vm_cluster_details.py +72 -0
  108. oci/database/models/update_exadb_vm_cluster_details.py +570 -0
  109. oci/database/models/update_exascale_db_storage_vault_details.py +239 -0
  110. oci/database_management/db_management_client.py +210 -210
  111. oci/database_management/diagnosability_client.py +4 -4
  112. oci/database_management/managed_my_sql_databases_client.py +7 -7
  113. oci/database_management/models/child_database.py +7 -3
  114. oci/database_management/models/database_usage_metrics.py +7 -3
  115. oci/database_management/models/fleet_status_by_category.py +7 -3
  116. oci/database_management/models/job_database.py +7 -3
  117. oci/database_management/models/job_execution.py +7 -3
  118. oci/database_management/models/job_execution_summary.py +7 -3
  119. oci/database_management/models/managed_database.py +7 -3
  120. oci/database_management/models/managed_database_summary.py +7 -3
  121. oci/database_management/models/optimizer_database.py +7 -3
  122. oci/database_management/perfhub_client.py +1 -1
  123. oci/database_management/sql_tuning_client.py +17 -17
  124. oci/database_migration/__init__.py +1 -1
  125. oci/database_migration/database_migration_client.py +322 -833
  126. oci/database_migration/database_migration_client_composite_operations.py +3 -95
  127. oci/database_migration/models/__init__.py +145 -115
  128. oci/database_migration/models/adb_dedicated_auto_create_tablespace_details.py +12 -8
  129. oci/database_migration/models/adb_dedicated_remap_target_tablespace_details.py +4 -4
  130. oci/database_migration/models/adb_serverles_tablespace_details.py +4 -4
  131. oci/database_migration/models/admin_credentials.py +1 -1
  132. oci/database_migration/models/advisor_report.py +4 -4
  133. oci/database_migration/models/advisor_report_bucket_details.py +6 -6
  134. oci/database_migration/models/advisor_report_location_details.py +4 -4
  135. oci/database_migration/models/change_connection_compartment_details.py +4 -4
  136. oci/database_migration/models/change_migration_compartment_details.py +4 -4
  137. oci/database_migration/models/clone_migration_details.py +87 -168
  138. oci/database_migration/models/connection.py +453 -420
  139. oci/database_migration/models/connection_collection.py +4 -4
  140. oci/database_migration/models/connection_summary.py +315 -280
  141. oci/database_migration/models/create_adb_dedicated_auto_create_tablespace_details.py +12 -8
  142. oci/database_migration/models/create_adb_dedicated_remap_target_tablespace_details.py +4 -4
  143. oci/database_migration/models/create_adb_serverles_tablespace_details.py +2 -2
  144. oci/database_migration/models/create_admin_credentials.py +1 -1
  145. oci/database_migration/models/create_connection_details.py +276 -342
  146. oci/database_migration/models/create_curl_transfer_details.py +1 -1
  147. oci/database_migration/models/create_data_pump_parameters.py +2 -4
  148. oci/database_migration/models/create_directory_object.py +1 -1
  149. oci/database_migration/models/create_extract.py +1 -1
  150. oci/database_migration/models/create_golden_gate_hub_details.py +277 -0
  151. oci/database_migration/models/create_host_dump_transfer_details.py +4 -4
  152. oci/database_migration/models/create_migration_details.py +143 -409
  153. oci/database_migration/models/create_my_sql_advisor_settings.py +103 -0
  154. oci/database_migration/models/create_my_sql_data_transfer_medium_details.py +101 -0
  155. oci/database_migration/models/create_my_sql_ggs_deployment_details.py +99 -0
  156. oci/database_migration/models/create_my_sql_initial_load_settings.py +316 -0
  157. oci/database_migration/models/create_my_sql_migration_details.py +340 -0
  158. oci/database_migration/models/create_my_sql_object_storage_data_transfer_medium_details.py +78 -0
  159. oci/database_migration/models/create_mysql_connection_details.py +524 -0
  160. oci/database_migration/models/create_non_adb_auto_create_tablespace_details.py +1 -1
  161. oci/database_migration/models/create_non_adb_remap_tablespace_details.py +1 -1
  162. oci/database_migration/models/create_object_store_bucket.py +1 -1
  163. oci/database_migration/models/create_oci_cli_dump_transfer_details.py +1 -1
  164. oci/database_migration/models/create_oracle_advisor_settings.py +103 -0
  165. oci/database_migration/models/create_oracle_aws_s3_data_transfer_medium_details.py +211 -0
  166. oci/database_migration/models/create_oracle_connection_details.py +392 -0
  167. oci/database_migration/models/create_oracle_data_transfer_medium_details.py +125 -0
  168. oci/database_migration/models/create_oracle_db_link_data_transfer_medium_details.py +111 -0
  169. oci/database_migration/models/create_oracle_ggs_deployment_details.py +126 -0
  170. oci/database_migration/models/create_oracle_initial_load_settings.py +239 -0
  171. oci/database_migration/models/create_oracle_migration_details.py +402 -0
  172. oci/database_migration/models/create_oracle_nfs_data_transfer_medium_details.py +163 -0
  173. oci/database_migration/models/create_oracle_object_storage_data_transfer_medium_details.py +132 -0
  174. oci/database_migration/models/create_replicat.py +3 -96
  175. oci/database_migration/models/create_target_type_tablespace_details.py +1 -1
  176. oci/database_migration/models/curl_transfer_details.py +1 -1
  177. oci/database_migration/models/data_pump_parameters.py +4 -6
  178. oci/database_migration/models/diagnostics_result.py +1 -1
  179. oci/database_migration/models/directory_object.py +1 -1
  180. oci/database_migration/models/excluded_object_summary.py +1 -1
  181. oci/database_migration/models/excluded_object_summary_collection.py +1 -1
  182. oci/database_migration/models/extract.py +1 -1
  183. oci/database_migration/models/ggs_deployment.py +5 -5
  184. oci/database_migration/models/golden_gate_hub_details.py +277 -0
  185. oci/database_migration/models/host_dump_transfer_details.py +2 -2
  186. oci/database_migration/models/ingress_ip_details.py +72 -0
  187. oci/database_migration/models/job.py +5 -5
  188. oci/database_migration/models/job_collection.py +1 -1
  189. oci/database_migration/models/job_output_summary.py +1 -1
  190. oci/database_migration/models/job_output_summary_collection.py +1 -1
  191. oci/database_migration/models/job_summary.py +5 -5
  192. oci/database_migration/models/log_location_bucket_details.py +1 -1
  193. oci/database_migration/models/metadata_remap.py +1 -1
  194. oci/database_migration/models/migration.py +154 -412
  195. oci/database_migration/models/migration_collection.py +1 -1
  196. oci/database_migration/models/migration_job_progress_resource.py +18 -10
  197. oci/database_migration/models/migration_job_progress_summary.py +18 -10
  198. oci/database_migration/models/migration_object_collection.py +54 -46
  199. oci/database_migration/models/migration_object_type_summary.py +1 -1
  200. oci/database_migration/models/migration_object_type_summary_collection.py +1 -1
  201. oci/database_migration/models/migration_parameter_base.py +127 -0
  202. oci/database_migration/models/migration_parameter_details.py +164 -0
  203. oci/database_migration/models/migration_parameter_summary.py +502 -0
  204. oci/database_migration/models/migration_parameter_summary_collection.py +72 -0
  205. oci/database_migration/models/migration_phase_collection.py +1 -1
  206. oci/database_migration/models/migration_phase_summary.py +18 -10
  207. oci/database_migration/models/migration_summary.py +102 -117
  208. oci/database_migration/models/my_sql_advisor_settings.py +103 -0
  209. oci/database_migration/models/my_sql_clone_migration_details.py +93 -0
  210. oci/database_migration/models/my_sql_data_transfer_medium_details.py +101 -0
  211. oci/database_migration/models/my_sql_database_object.py +136 -0
  212. oci/database_migration/models/my_sql_database_object_summary.py +183 -0
  213. oci/database_migration/models/my_sql_ggs_deployment_details.py +126 -0
  214. oci/database_migration/models/my_sql_initial_load_settings.py +316 -0
  215. oci/database_migration/models/my_sql_migration.py +309 -0
  216. oci/database_migration/models/my_sql_migration_object_collection.py +117 -0
  217. oci/database_migration/models/my_sql_migration_summary.py +159 -0
  218. oci/database_migration/models/my_sql_object_storage_data_transfer_medium_details.py +78 -0
  219. oci/database_migration/models/mysql_connection.py +538 -0
  220. oci/database_migration/models/mysql_connection_summary.py +413 -0
  221. oci/database_migration/models/name_value_pair.py +103 -0
  222. oci/database_migration/models/non_adb_auto_create_tablespace_details.py +1 -1
  223. oci/database_migration/models/non_adb_remap_tablespace_details.py +1 -1
  224. oci/database_migration/models/object_store_bucket.py +1 -1
  225. oci/database_migration/models/oci_cli_dump_transfer_details.py +1 -1
  226. oci/database_migration/models/oracle_advisor_settings.py +103 -0
  227. oci/database_migration/models/oracle_aws_s3_data_transfer_medium_details.py +211 -0
  228. oci/database_migration/models/oracle_clone_migration_details.py +124 -0
  229. oci/database_migration/models/oracle_connection.py +449 -0
  230. oci/database_migration/models/oracle_connection_summary.py +256 -0
  231. oci/database_migration/models/oracle_data_transfer_medium_details.py +125 -0
  232. oci/database_migration/models/oracle_database_object.py +169 -0
  233. oci/database_migration/models/oracle_database_object_summary.py +216 -0
  234. oci/database_migration/models/oracle_db_link_data_transfer_medium_details.py +111 -0
  235. oci/database_migration/models/oracle_ggs_deployment_details.py +153 -0
  236. oci/database_migration/models/oracle_initial_load_settings.py +239 -0
  237. oci/database_migration/models/oracle_migration.py +371 -0
  238. oci/database_migration/models/oracle_migration_object_collection.py +117 -0
  239. oci/database_migration/models/oracle_migration_summary.py +190 -0
  240. oci/database_migration/models/oracle_nfs_data_transfer_medium_details.py +163 -0
  241. oci/database_migration/models/oracle_object_storage_data_transfer_medium_details.py +132 -0
  242. oci/database_migration/models/phase_extract_entry.py +1 -1
  243. oci/database_migration/models/phase_status.py +18 -10
  244. oci/database_migration/models/replicat.py +3 -96
  245. oci/database_migration/models/result_error.py +1 -1
  246. oci/database_migration/models/resume_job_details.py +18 -10
  247. oci/database_migration/models/start_migration_details.py +18 -10
  248. oci/database_migration/models/target_type_tablespace_details.py +1 -1
  249. oci/database_migration/models/unsupported_database_object.py +1 -1
  250. oci/database_migration/models/update_adb_dedicated_auto_create_tablespace_details.py +12 -8
  251. oci/database_migration/models/update_adb_dedicated_remap_target_tablespace_details.py +4 -4
  252. oci/database_migration/models/update_adb_serverles_tablespace_details.py +2 -2
  253. oci/database_migration/models/update_admin_credentials.py +1 -1
  254. oci/database_migration/models/update_connection_details.py +278 -244
  255. oci/database_migration/models/update_curl_transfer_details.py +1 -1
  256. oci/database_migration/models/update_data_pump_parameters.py +6 -8
  257. oci/database_migration/models/update_directory_object.py +1 -1
  258. oci/database_migration/models/update_extract.py +1 -1
  259. oci/database_migration/models/update_golden_gate_hub_details.py +277 -0
  260. oci/database_migration/models/update_host_dump_transfer_details.py +4 -4
  261. oci/database_migration/models/update_job_details.py +5 -5
  262. oci/database_migration/models/update_migration_details.py +122 -363
  263. oci/database_migration/models/update_my_sql_advisor_settings.py +103 -0
  264. oci/database_migration/models/update_my_sql_data_transfer_medium_details.py +101 -0
  265. oci/database_migration/models/update_my_sql_ggs_deployment_details.py +99 -0
  266. oci/database_migration/models/update_my_sql_initial_load_settings.py +316 -0
  267. oci/database_migration/models/update_my_sql_migration_details.py +236 -0
  268. oci/database_migration/models/update_my_sql_object_storage_data_transfer_medium_details.py +78 -0
  269. oci/database_migration/models/update_mysql_connection_details.py +484 -0
  270. oci/database_migration/models/update_non_adb_auto_create_tablespace_details.py +1 -1
  271. oci/database_migration/models/update_non_adb_remap_tablespace_details.py +1 -1
  272. oci/database_migration/models/update_object_store_bucket.py +1 -1
  273. oci/database_migration/models/update_oci_cli_dump_transfer_details.py +1 -1
  274. oci/database_migration/models/update_oracle_advisor_settings.py +103 -0
  275. oci/database_migration/models/update_oracle_aws_s3_data_transfer_medium_details.py +211 -0
  276. oci/database_migration/models/update_oracle_connection_details.py +354 -0
  277. oci/database_migration/models/update_oracle_data_transfer_medium_details.py +125 -0
  278. oci/database_migration/models/update_oracle_db_link_data_transfer_medium_details.py +111 -0
  279. oci/database_migration/models/update_oracle_ggs_deployment_details.py +126 -0
  280. oci/database_migration/models/update_oracle_initial_load_settings.py +239 -0
  281. oci/database_migration/models/update_oracle_migration_details.py +298 -0
  282. oci/database_migration/models/update_oracle_nfs_data_transfer_medium_details.py +163 -0
  283. oci/database_migration/models/update_oracle_object_storage_data_transfer_medium_details.py +132 -0
  284. oci/database_migration/models/update_replicat.py +3 -96
  285. oci/database_migration/models/update_target_defaults_auto_create_tablespace_details.py +1 -1
  286. oci/database_migration/models/update_target_defaults_remap_tablespace_details.py +1 -1
  287. oci/database_migration/models/update_target_type_tablespace_details.py +1 -1
  288. oci/database_migration/models/work_request.py +4 -12
  289. oci/database_migration/models/work_request_collection.py +1 -1
  290. oci/database_migration/models/work_request_error.py +1 -1
  291. oci/database_migration/models/work_request_error_collection.py +1 -1
  292. oci/database_migration/models/work_request_log_entry.py +1 -1
  293. oci/database_migration/models/work_request_log_entry_collection.py +1 -1
  294. oci/database_migration/models/work_request_resource.py +1 -1
  295. oci/database_migration/models/work_request_summary.py +1 -1
  296. oci/database_tools/database_tools_client.py +23 -23
  297. oci/demand_signal/occ_demand_signal_client.py +7 -7
  298. oci/desktops/desktop_service_client.py +21 -21
  299. oci/devops/devops_client.py +89 -89
  300. oci/disaster_recovery/disaster_recovery_client.py +29 -29
  301. oci/dns/dns_client.py +52 -52
  302. oci/dts/appliance_export_job_client.py +6 -6
  303. oci/dts/shipping_vendors_client.py +1 -1
  304. oci/dts/transfer_appliance_client.py +8 -8
  305. oci/dts/transfer_appliance_entitlement_client.py +3 -3
  306. oci/dts/transfer_device_client.py +5 -5
  307. oci/dts/transfer_job_client.py +6 -6
  308. oci/dts/transfer_package_client.py +7 -7
  309. oci/em_warehouse/em_data_lake_client.py +13 -13
  310. oci/em_warehouse/em_warehouse_client.py +13 -13
  311. oci/email/email_client.py +31 -31
  312. oci/email_data_plane/email_dp_client.py +1 -1
  313. oci/events/events_client.py +6 -6
  314. oci/exceptions.py +46 -7
  315. oci/file_storage/file_storage_client.py +185 -67
  316. oci/file_storage/models/create_export_details.py +14 -4
  317. oci/file_storage/models/create_file_system_details.py +51 -0
  318. oci/file_storage/models/file_system.py +89 -3
  319. oci/file_storage/models/file_system_summary.py +60 -5
  320. oci/file_storage/models/snapshot_schedule.py +8 -2
  321. oci/fleet_software_update/fleet_software_update_client.py +44 -44
  322. oci/functions/functions_invoke_client.py +1 -1
  323. oci/functions/functions_management_client.py +16 -16
  324. oci/fusion_apps/data_masking_activity_client.py +3 -3
  325. oci/fusion_apps/fusion_applications_client.py +41 -41
  326. oci/fusion_apps/fusion_environment_client.py +15 -15
  327. oci/fusion_apps/fusion_environment_family_client.py +8 -8
  328. oci/fusion_apps/refresh_activity_client.py +4 -4
  329. oci/fusion_apps/scheduled_activity_client.py +2 -2
  330. oci/fusion_apps/service_attachment_client.py +2 -2
  331. oci/generative_ai/generative_ai_client.py +22 -22
  332. oci/generative_ai_inference/generative_ai_inference_client.py +4 -4
  333. oci/generic_artifacts_content/generic_artifacts_content_client.py +3 -3
  334. oci/globally_distributed_database/sharded_database_service_client.py +30 -30
  335. oci/golden_gate/golden_gate_client.py +68 -68
  336. oci/governance_rules_control_plane/governance_rule_client.py +15 -15
  337. oci/governance_rules_control_plane/work_request_client.py +5 -5
  338. oci/healthchecks/health_checks_client.py +17 -17
  339. oci/identity/identity_client.py +145 -145
  340. oci/identity_data_plane/dataplane_client.py +2 -2
  341. oci/identity_domains/identity_domains_client.py +300 -300
  342. oci/integration/integration_instance_client.py +15 -15
  343. oci/jms/java_management_service_client.py +66 -66
  344. oci/jms_java_downloads/java_download_client.py +25 -25
  345. oci/key_management/ekm_client.py +5 -5
  346. oci/key_management/kms_crypto_client.py +6 -6
  347. oci/key_management/kms_hsm_cluster_client.py +12 -12
  348. oci/key_management/kms_management_client.py +21 -21
  349. oci/key_management/kms_vault_client.py +14 -14
  350. oci/license_manager/license_manager_client.py +18 -18
  351. oci/limits/limits_client.py +4 -4
  352. oci/limits/quotas_client.py +7 -7
  353. oci/load_balancer/load_balancer_client.py +61 -61
  354. oci/lockbox/lockbox_client.py +24 -24
  355. oci/log_analytics/log_analytics_client.py +193 -193
  356. oci/logging/logging_management_client.py +30 -30
  357. oci/loggingingestion/logging_client.py +1 -1
  358. oci/loggingsearch/log_search_client.py +1 -1
  359. oci/management_agent/management_agent_client.py +28 -28
  360. oci/management_dashboard/dashx_apis_client.py +14 -14
  361. oci/marketplace/account_client.py +2 -2
  362. oci/marketplace/marketplace_client.py +30 -30
  363. oci/marketplace_private_offer/attachment_client.py +5 -5
  364. oci/marketplace_private_offer/offer_client.py +6 -6
  365. oci/marketplace_publisher/attachment_client.py +5 -5
  366. oci/marketplace_publisher/marketplace_publisher_client.py +71 -71
  367. oci/marketplace_publisher/offer_client.py +6 -6
  368. oci/media_services/media_services_client.py +60 -60
  369. oci/media_services/media_stream_client.py +2 -2
  370. oci/monitoring/monitoring_client.py +18 -18
  371. oci/mysql/channels_client.py +7 -7
  372. oci/mysql/db_backups_client.py +116 -6
  373. oci/mysql/db_backups_client_composite_operations.py +39 -0
  374. oci/mysql/db_system_client.py +17 -17
  375. oci/mysql/models/__init__.py +4 -0
  376. oci/mysql/models/backup.py +99 -2
  377. oci/mysql/models/backup_summary.py +126 -2
  378. oci/mysql/models/copy_backup_details.py +210 -0
  379. oci/mysql/models/db_system_snapshot.py +39 -2
  380. oci/mysql/models/db_system_snapshot_summary.py +140 -0
  381. oci/mysql/models/work_request.py +7 -3
  382. oci/mysql/models/work_request_summary.py +7 -3
  383. oci/mysql/mysqlaas_client.py +7 -7
  384. oci/mysql/replicas_client.py +5 -5
  385. oci/mysql/work_requests_client.py +4 -4
  386. oci/network_firewall/network_firewall_client.py +80 -80
  387. oci/network_load_balancer/network_load_balancer_client.py +34 -34
  388. oci/nosql/nosql_client.py +24 -24
  389. oci/object_storage/__init__.py +2 -1
  390. oci/object_storage/object_storage_client.py +50 -50
  391. oci/object_storage/transfer/internal/download/DownloadConfiguration.py +232 -0
  392. oci/object_storage/transfer/internal/download/DownloadManager.py +902 -0
  393. oci/object_storage/transfer/internal/download/DownloadThread.py +375 -0
  394. oci/object_storage/transfer/internal/download/__init__.py +5 -0
  395. oci/oce/oce_instance_client.py +10 -10
  396. oci/oci_control_center/occ_metrics_client.py +3 -3
  397. oci/ocvp/cluster_client.py +5 -5
  398. oci/ocvp/esxi_host_client.py +8 -8
  399. oci/ocvp/sddc_client.py +14 -14
  400. oci/ocvp/work_request_client.py +4 -4
  401. oci/oda/management_client.py +59 -59
  402. oci/oda/oda_client.py +17 -17
  403. oci/oda/odapackage_client.py +7 -7
  404. oci/onesubscription/billing_schedule_client.py +1 -1
  405. oci/onesubscription/commitment_client.py +2 -2
  406. oci/onesubscription/computed_usage_client.py +3 -3
  407. oci/onesubscription/invoice_summary_client.py +2 -2
  408. oci/onesubscription/organization_subscription_client.py +1 -1
  409. oci/onesubscription/ratecard_client.py +1 -1
  410. oci/onesubscription/subscribed_service_client.py +2 -2
  411. oci/onesubscription/subscription_client.py +1 -1
  412. oci/ons/notification_control_plane_client.py +6 -6
  413. oci/ons/notification_data_plane_client.py +10 -10
  414. oci/opa/opa_instance_client.py +13 -13
  415. oci/opensearch/opensearch_cluster_backup_client.py +4 -4
  416. oci/opensearch/opensearch_cluster_client.py +14 -14
  417. oci/operator_access_control/access_requests_client.py +10 -10
  418. oci/operator_access_control/operator_actions_client.py +2 -2
  419. oci/operator_access_control/operator_control_assignment_client.py +8 -8
  420. oci/operator_access_control/operator_control_client.py +6 -6
  421. oci/opsi/models/__init__.py +12 -0
  422. oci/opsi/models/basic_configuration_item_summary.py +3 -3
  423. oci/opsi/models/create_operations_insights_private_endpoint_details.py +4 -2
  424. oci/opsi/models/create_operations_insights_warehouse_details.py +2 -2
  425. oci/opsi/models/create_operations_insights_warehouse_user_details.py +4 -4
  426. oci/opsi/models/credential_details.py +1 -1
  427. oci/opsi/models/database_configuration_summary.py +2 -2
  428. oci/opsi/models/database_details.py +2 -2
  429. oci/opsi/models/database_insight.py +2 -2
  430. oci/opsi/models/database_insight_summary.py +2 -2
  431. oci/opsi/models/download_operations_insights_warehouse_wallet_details.py +2 -2
  432. oci/opsi/models/enterprise_manager_bridges.py +1 -1
  433. oci/opsi/models/host_configuration_metric_group.py +11 -3
  434. oci/opsi/models/host_cpu_hardware_configuration.py +1 -1
  435. oci/opsi/models/host_cpu_recommendations.py +118 -5
  436. oci/opsi/models/host_cpu_usage.py +1 -1
  437. oci/opsi/models/host_entities.py +1 -1
  438. oci/opsi/models/host_filesystem_configuration.py +1 -1
  439. oci/opsi/models/host_filesystem_usage.py +1 -1
  440. oci/opsi/models/host_gpu_configuration.py +492 -0
  441. oci/opsi/models/host_gpu_processes.py +213 -0
  442. oci/opsi/models/host_gpu_usage.py +678 -0
  443. oci/opsi/models/host_hardware_configuration.py +1 -1
  444. oci/opsi/models/host_insight.py +2 -2
  445. oci/opsi/models/host_insight_host_recommendations.py +27 -3
  446. oci/opsi/models/host_insight_summary.py +4 -4
  447. oci/opsi/models/host_memory_configuration.py +1 -1
  448. oci/opsi/models/host_memory_recommendations.py +165 -0
  449. oci/opsi/models/host_memory_usage.py +1 -1
  450. oci/opsi/models/host_network_activity_summary.py +1 -1
  451. oci/opsi/models/host_network_configuration.py +1 -1
  452. oci/opsi/models/host_network_recommendations.py +134 -0
  453. oci/opsi/models/host_performance_metric_group.py +19 -3
  454. oci/opsi/models/host_product.py +1 -1
  455. oci/opsi/models/host_resource_allocation.py +1 -1
  456. oci/opsi/models/host_storage_recommendations.py +134 -0
  457. oci/opsi/models/host_top_processes.py +34 -3
  458. oci/opsi/models/importable_enterprise_manager_entity.py +2 -2
  459. oci/opsi/models/news_report.py +2 -2
  460. oci/opsi/models/news_report_summary.py +2 -2
  461. oci/opsi/models/operations_insights_private_endpoint.py +2 -2
  462. oci/opsi/models/operations_insights_private_endpoint_summary.py +2 -2
  463. oci/opsi/models/operations_insights_warehouse.py +6 -6
  464. oci/opsi/models/operations_insights_warehouse_summary.py +6 -6
  465. oci/opsi/models/operations_insights_warehouse_user.py +4 -4
  466. oci/opsi/models/operations_insights_warehouse_user_summary.py +4 -4
  467. oci/opsi/models/operations_insights_warehouses.py +3 -3
  468. oci/opsi/models/opsi_configuration_basic_configuration_item_summary.py +1 -1
  469. oci/opsi/models/resource_filters.py +56 -2
  470. oci/opsi/models/sql_bucket.py +2 -2
  471. oci/opsi/models/sql_search_summary.py +2 -2
  472. oci/opsi/models/top_processes_usage.py +31 -0
  473. oci/opsi/models/top_processes_usage_trend.py +31 -0
  474. oci/opsi/models/update_operations_insights_warehouse_details.py +2 -2
  475. oci/opsi/models/update_operations_insights_warehouse_user_details.py +2 -2
  476. oci/opsi/models/work_requests.py +1 -1
  477. oci/opsi/operations_insights_client.py +604 -409
  478. oci/opsi/operations_insights_client_composite_operations.py +8 -8
  479. oci/optimizer/optimizer_client.py +26 -26
  480. oci/os_management/event_client.py +8 -8
  481. oci/os_management/os_management_client.py +69 -69
  482. oci/os_management_hub/event_client.py +8 -8
  483. oci/os_management_hub/lifecycle_environment_client.py +12 -12
  484. oci/os_management_hub/managed_instance_client.py +31 -31
  485. oci/os_management_hub/managed_instance_group_client.py +25 -25
  486. oci/os_management_hub/management_station_client.py +10 -10
  487. oci/os_management_hub/onboarding_client.py +6 -6
  488. oci/os_management_hub/reporting_managed_instance_client.py +3 -3
  489. oci/os_management_hub/scheduled_job_client.py +7 -7
  490. oci/os_management_hub/software_source_client.py +27 -27
  491. oci/os_management_hub/work_request_client.py +4 -4
  492. oci/osp_gateway/address_rule_service_client.py +1 -1
  493. oci/osp_gateway/address_service_client.py +2 -2
  494. oci/osp_gateway/invoice_service_client.py +5 -5
  495. oci/osp_gateway/subscription_service_client.py +5 -5
  496. oci/osub_billing_schedule/billing_schedule_client.py +1 -1
  497. oci/osub_organization_subscription/organization_subscription_client.py +1 -1
  498. oci/osub_subscription/commitment_client.py +2 -2
  499. oci/osub_subscription/ratecard_client.py +1 -1
  500. oci/osub_subscription/subscription_client.py +1 -1
  501. oci/osub_usage/computed_usage_client.py +3 -3
  502. oci/psql/postgresql_client.py +33 -33
  503. oci/queue/queue_admin_client.py +11 -11
  504. oci/queue/queue_client.py +8 -8
  505. oci/recovery/database_recovery_client.py +25 -25
  506. oci/redis/redis_cluster_client.py +11 -11
  507. oci/regions_definitions.py +3 -0
  508. oci/resource_manager/resource_manager_client.py +52 -52
  509. oci/resource_scheduler/schedule_client.py +13 -13
  510. oci/resource_search/resource_search_client.py +3 -3
  511. oci/rover/rover_bundle_client.py +8 -8
  512. oci/rover/rover_cluster_client.py +8 -8
  513. oci/rover/rover_entitlement_client.py +6 -6
  514. oci/rover/rover_node_client.py +15 -15
  515. oci/rover/shape_client.py +1 -1
  516. oci/rover/work_requests_client.py +5 -5
  517. oci/sch/connector_plugins_client.py +2 -2
  518. oci/sch/service_connector_client.py +12 -12
  519. oci/secrets/secrets_client.py +3 -3
  520. oci/service_catalog/service_catalog_client.py +26 -26
  521. oci/service_manager_proxy/service_manager_proxy_client.py +2 -2
  522. oci/service_mesh/service_mesh_client.py +48 -48
  523. oci/stack_monitoring/models/discovery_details.py +7 -3
  524. oci/stack_monitoring/models/discovery_job_summary.py +7 -3
  525. oci/stack_monitoring/stack_monitoring_client.py +64 -64
  526. oci/streaming/stream_admin_client.py +18 -18
  527. oci/streaming/stream_client.py +8 -8
  528. oci/tenant_manager_control_plane/domain_client.py +5 -5
  529. oci/tenant_manager_control_plane/domain_governance_client.py +5 -5
  530. oci/tenant_manager_control_plane/governance_client.py +2 -2
  531. oci/tenant_manager_control_plane/link_client.py +3 -3
  532. oci/tenant_manager_control_plane/orders_client.py +2 -2
  533. oci/tenant_manager_control_plane/organization_client.py +10 -10
  534. oci/tenant_manager_control_plane/recipient_invitation_client.py +5 -5
  535. oci/tenant_manager_control_plane/sender_invitation_client.py +5 -5
  536. oci/tenant_manager_control_plane/subscription_client.py +11 -11
  537. oci/tenant_manager_control_plane/work_request_client.py +4 -4
  538. oci/threat_intelligence/threatintel_client.py +5 -5
  539. oci/usage/resources_client.py +2 -2
  540. oci/usage/rewards_client.py +6 -6
  541. oci/usage/usagelimits_client.py +1 -1
  542. oci/usage_api/models/usage_summary.py +62 -0
  543. oci/usage_api/usageapi_client.py +33 -33
  544. oci/vault/vaults_client.py +13 -13
  545. oci/vbs_inst/vbs_instance_client.py +10 -10
  546. oci/version.py +1 -1
  547. oci/visual_builder/vb_instance_client.py +13 -13
  548. oci/vn_monitoring/vn_monitoring_client.py +12 -12
  549. oci/vulnerability_scanning/vulnerability_scanning_client.py +58 -58
  550. oci/waa/waa_client.py +13 -13
  551. oci/waa/work_request_client.py +4 -4
  552. oci/waas/redirect_client.py +6 -6
  553. oci/waas/waas_client.py +66 -66
  554. oci/waf/waf_client.py +24 -24
  555. oci/work_requests/work_request_client.py +4 -4
  556. {oci-2.128.1.dist-info → oci-2.128.9.dist-info}/METADATA +1 -1
  557. {oci-2.128.1.dist-info → oci-2.128.9.dist-info}/RECORD +561 -454
  558. {oci-2.128.1.dist-info → oci-2.128.9.dist-info}/LICENSE.txt +0 -0
  559. {oci-2.128.1.dist-info → oci-2.128.9.dist-info}/THIRD_PARTY_LICENSES.txt +0 -0
  560. {oci-2.128.1.dist-info → oci-2.128.9.dist-info}/WHEEL +0 -0
  561. {oci-2.128.1.dist-info → oci-2.128.9.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,232 @@
1
+ # coding: utf-8
2
+ # Copyright (c) 2016, 2024, 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
+ from oci.object_storage.transfer.constants import MEBIBYTE
6
+ from oci.retry.retry import (RetryStrategyBuilder, VALID_BACKOFF_TYPES, BACKOFF_DECORRELATED_JITTER_VALUE)
7
+
8
+
9
+ DOWNLOAD_MANAGER_RETRYABLE_STATUSES_AND_CODES = {
10
+ -1: [],
11
+ 409: ["ConcurrentObjectUpdate"],
12
+ 429: [],
13
+ 404: [],
14
+ 416: []
15
+ }
16
+
17
+
18
+ class DownloadConfiguration(object):
19
+ """
20
+ An object of this class is used to specify the download parameters to the Download Manager
21
+
22
+ :param bool allow_multipart: If True, then multipart download if feasible, will be done. If False, then
23
+ multipart download will not be done in any case. Default is True.
24
+
25
+ :param int part_size_in_bytes: The size of a part that will be downloaded. This is also the smallest amount of
26
+ bytes that will be downloaded. That is if the file size exceeds this threshold, then multipart download will
27
+ be done, respecting the do_multipart variable. Default is 5 MB
28
+
29
+ :param int num_download_threads: The number of threads that will be used to download the file. This value will
30
+ be overwritten in accordance with the do_multipart variable and the file size and part_size_in_bytes. Small
31
+ files will be downloaded in a single thread. Note that the parent thread won't be counted in this. Default
32
+ is 3
33
+
34
+ :param int pause_wait_in_seconds: The number of seconds to make a download thread sleep while being paused state
35
+ before polling for the state again. Default is 2
36
+
37
+ :param int max_retries: The maximum number of retries that will be performed on the download thread. Each thread
38
+ will attempt to download the file until it reaches the maximum number of retries in case of failures. The
39
+ first download attempt is also counted as a retry. So max_retries equals the maximum number of times
40
+ download will be tried. Default is 3
41
+
42
+ :param int initial_backoff_seconds: The initial backoff time in seconds before the first retry. Defaults to 1 second.
43
+
44
+ :param int max_backoff_seconds: The maximum backoff time in seconds between retries. Defaults to 30 seconds
45
+
46
+ :param int retry_exponential_growth_factor: For exponential backoff with jitter, the exponent which we will raise to
47
+ the power of the number of attempts. If not provided, this value defaults to 2
48
+
49
+ :param int decorrelated_jitter:
50
+ The random De-correlated jitter value in seconds (default 1) to be used when using the backoff_type
51
+ BACKOFF_DECORRELATED_JITTER_VALUE
52
+
53
+ :param str backoff_type:
54
+ The type of backoff we want to do (e.g. full jitter). The convenience constants in this retry module: ``BACKOFF_DECORRELATED_JITTER_VALUE``,
55
+ ``BACKOFF_FULL_JITTER_VALUE``,`BACKOFF_EQUAL_JITTER_VALUE``, and ``BACKOFF_FULL_JITTER_EQUAL_ON_THROTTLE_VALUE`` can be used as values here.
56
+ If no value is specified then the value ``BACKOFF_DECORRELATED_JITTER_VALUE`` will be used. This will use exponential backoff and a
57
+ random de-correlated jitter.
58
+
59
+ """
60
+
61
+ def __init__(self,
62
+ allow_multipart=True,
63
+ part_size_in_bytes=5 * MEBIBYTE,
64
+ num_download_threads=3,
65
+ pause_wait_in_seconds=2,
66
+ max_retries=3,
67
+ initial_backoff_seconds=1,
68
+ max_backoff_seconds=30,
69
+ retry_exponential_growth_factor=2,
70
+ decorrelated_jitter=1,
71
+ backoff_type=BACKOFF_DECORRELATED_JITTER_VALUE,
72
+ ):
73
+
74
+ self.allow_multipart = allow_multipart
75
+ self.set_allow_multipart(allow_multipart)
76
+ self.num_download_threads = num_download_threads
77
+ self.set_num_download_threads(num_download_threads)
78
+ self.part_size_in_bytes = part_size_in_bytes
79
+ self.set_part_size_in_bytes(part_size_in_bytes)
80
+ self.pause_wait_in_seconds = pause_wait_in_seconds
81
+ self.set_pause_wait_in_seconds(pause_wait_in_seconds)
82
+ self.max_retries = max_retries
83
+ self.set_max_retries(max_retries)
84
+ self.initial_backoff_seconds = initial_backoff_seconds
85
+ self.set_initial_backoff(initial_backoff_seconds)
86
+ self.max_backoff_seconds = max_backoff_seconds
87
+ self.set_max_backoff(initial_backoff_seconds, max_backoff_seconds)
88
+ self.retry_exponential_growth_factor = retry_exponential_growth_factor
89
+ self.set_retry_exponential_growth_factor(retry_exponential_growth_factor)
90
+ self.decorrelated_jitter = decorrelated_jitter
91
+ self.set_decorrelated_jitter(decorrelated_jitter)
92
+ self.backoff_type = backoff_type
93
+ self.set_backoff_type(backoff_type)
94
+
95
+ def set_allow_multipart(self, allow_multipart):
96
+ if not isinstance(allow_multipart, bool):
97
+ raise TypeError(f"Invalid type for allow_multipart: expected bool, got {type(allow_multipart).__name__}")
98
+
99
+ self.allow_multipart = allow_multipart
100
+
101
+ def set_part_size_in_bytes(self, part_size_in_bytes):
102
+ if not isinstance(part_size_in_bytes, int):
103
+ raise TypeError(f"Invalid type for part_size_in_bytes: expected int, got {type(part_size_in_bytes).__name__}")
104
+ if part_size_in_bytes <= 0:
105
+ raise ValueError(f"Invalid value for part_size_in_bytes: expected > 0, got {part_size_in_bytes}")
106
+ self.part_size_in_bytes = part_size_in_bytes
107
+
108
+ def set_num_download_threads(self, num_download_threads):
109
+ if not isinstance(num_download_threads, int):
110
+ raise TypeError(
111
+ f"Invalid type for num_download_threads: expected int, got {type(num_download_threads).__name__}")
112
+ if num_download_threads <= 1:
113
+ raise ValueError(f"Invalid value for num_download_threads: expected > 1, got {num_download_threads}")
114
+
115
+ self.num_download_threads = num_download_threads
116
+
117
+ def set_pause_wait_in_seconds(self, pause_wait_in_seconds):
118
+ if not isinstance(pause_wait_in_seconds, int):
119
+ raise TypeError(
120
+ f"Invalid type for pause_wait_in_seconds: expected int, got {type(pause_wait_in_seconds).__name__}")
121
+ if pause_wait_in_seconds <= 0:
122
+ raise ValueError(f"Invalid value for pause_wait_in_seconds: expected > 0, got {pause_wait_in_seconds}")
123
+
124
+ self.pause_wait_in_seconds = pause_wait_in_seconds
125
+
126
+ def set_max_retries(self, max_retries):
127
+ if not isinstance(max_retries, int):
128
+ raise TypeError(
129
+ f"Invalid type for max_retries: expected int, got {type(max_retries).__name__}")
130
+ if max_retries < 1:
131
+ raise ValueError(f"Invalid value for max_retries: expected >= 1, got {max_retries}")
132
+
133
+ self.max_retries = max_retries
134
+
135
+ def set_initial_backoff(self, initial_backoff_seconds):
136
+ if not isinstance(initial_backoff_seconds, int):
137
+ raise TypeError(
138
+ f"Invalid type for initial_backoff_seconds: expected int, got {type(initial_backoff_seconds).__name__}")
139
+ if initial_backoff_seconds < 1:
140
+ raise ValueError(f"Invalid value for initial_backoff_seconds: expected >= 1, got {initial_backoff_seconds}")
141
+
142
+ self.initial_backoff_seconds = initial_backoff_seconds
143
+
144
+ def set_max_backoff(self, initial_backoff_seconds, max_backoff_seconds):
145
+ if not isinstance(max_backoff_seconds, int):
146
+ raise TypeError(
147
+ f"Invalid type for max_backoff_seconds: expected int, got {type(max_backoff_seconds).__name__}")
148
+ if max_backoff_seconds < initial_backoff_seconds:
149
+ raise ValueError(
150
+ f"Invalid value for max_backoff_seconds: expected >= initial backoff ({initial_backoff_seconds}), "
151
+ f"got {max_backoff_seconds}")
152
+
153
+ self.max_backoff_seconds = max_backoff_seconds
154
+
155
+ def set_retry_exponential_growth_factor(self, retry_exponential_growth_factor):
156
+ if not isinstance(retry_exponential_growth_factor, int):
157
+ raise TypeError(
158
+ f"Invalid type for retry_exponential_growth_factor: expected int, got {type(retry_exponential_growth_factor).__name__}")
159
+
160
+ self.retry_exponential_growth_factor = retry_exponential_growth_factor
161
+
162
+ def set_decorrelated_jitter(self, decorrelated_jitter):
163
+ if not isinstance(decorrelated_jitter, int):
164
+ raise TypeError(
165
+ f"Invalid type for decorrelated_jitter: expected int, got {type(decorrelated_jitter).__name__}"
166
+ )
167
+
168
+ self.decorrelated_jitter = decorrelated_jitter
169
+
170
+ def set_backoff_type(self, backoff_type):
171
+ if not isinstance(backoff_type, str):
172
+ raise TypeError(
173
+ f"Invalid type for backoff_type: expected str, got {type(backoff_type).__name__}"
174
+ )
175
+ if backoff_type not in VALID_BACKOFF_TYPES:
176
+ raise ValueError(
177
+ f"Invalid backoff_type: expected one of {VALID_BACKOFF_TYPES}, got {backoff_type}"
178
+ )
179
+
180
+ self.backoff_type = backoff_type
181
+
182
+ def get_allow_multipart(self):
183
+ return self.allow_multipart
184
+
185
+ def get_max_retries(self):
186
+ return self.max_retries
187
+
188
+ def get_pause_wait_in_seconds(self):
189
+ return self.pause_wait_in_seconds
190
+
191
+ def get_num_download_threads(self):
192
+ return self.num_download_threads
193
+
194
+ def get_max_backoff(self):
195
+ return self.max_backoff_seconds
196
+
197
+ def get_initial_backoff(self):
198
+ return self.initial_backoff_seconds
199
+
200
+ def get_part_size_in_bytes(self):
201
+ return self.part_size_in_bytes
202
+
203
+ def get_retry_exponential_growth_factor(self):
204
+ return self.retry_exponential_growth_factor
205
+
206
+ def get_decorrelated_jitter(self):
207
+ return self.decorrelated_jitter
208
+
209
+ def get_backoff_type(self):
210
+ return self.backoff_type
211
+
212
+ def make_retry_strategy(self):
213
+ """
214
+ If the user doesn't provide a retry strategy (from oci.retry.retry), then a custom retry strategy is built out
215
+ of the parameters provided in the DownloadConfiguration. This function is used to make that custom retry
216
+ strategy. The retries occur if one or more of the following occur:
217
+ 1) Timeout
218
+ 2) Connection error
219
+ 3) Unknown client exception: status == -1
220
+ 4) Server exception: status >= 500
221
+ 5) Potential edge case: status == 409
222
+ 6) Object is changed in the object storage during a retry == 416 or 404
223
+ """
224
+ return RetryStrategyBuilder(
225
+ max_attempts=self.get_max_retries(),
226
+ service_error_retry_config=DOWNLOAD_MANAGER_RETRYABLE_STATUSES_AND_CODES,
227
+ retry_base_sleep_time_seconds=self.get_initial_backoff(),
228
+ retry_exponential_growth_factor=self.get_retry_exponential_growth_factor(),
229
+ retry_max_wait_between_calls_seconds=self.get_max_backoff(),
230
+ decorrelated_jitter=self.get_decorrelated_jitter(),
231
+ backoff_type=self.get_backoff_type(),
232
+ ).get_retry_strategy()