oci 2.152.0__py3-none-any.whl → 2.153.0__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 (548) hide show
  1. oci/__init__.py +2 -2
  2. oci/access_governance_cp/access_governance_cp_client.py +8 -8
  3. oci/addons/adk/auth/__init__.py +2 -0
  4. oci/addons/adk/auth/oci/__init__.py +2 -0
  5. oci/addons/adk/run/__init__.py +2 -0
  6. oci/addons/adk/tool/function_tool.py +2 -1
  7. oci/adm/application_dependency_management_client.py +38 -38
  8. oci/adm/models/application_dependency.py +4 -3
  9. oci/adm/models/application_dependency_recommendation_summary.py +4 -4
  10. oci/adm/models/application_dependency_vulnerability_summary.py +57 -6
  11. oci/adm/models/detect_configuration.py +7 -7
  12. oci/adm/models/network_configuration.py +1 -2
  13. oci/adm/models/vulnerability.py +8 -4
  14. oci/ai_anomaly_detection/anomaly_detection_client.py +36 -36
  15. oci/ai_document/ai_service_document_client.py +26 -26
  16. oci/ai_language/ai_service_language_client.py +44 -44
  17. oci/ai_speech/ai_service_speech_client.py +19 -19
  18. oci/ai_vision/ai_service_vision_client.py +28 -28
  19. oci/analytics/analytics_client.py +24 -24
  20. oci/announcements_service/announcement_client.py +5 -5
  21. oci/announcements_service/announcement_subscription_client.py +9 -9
  22. oci/announcements_service/announcements_preferences_client.py +4 -4
  23. oci/announcements_service/service_client.py +1 -1
  24. oci/apigateway/api_gateway_client.py +21 -21
  25. oci/apigateway/deployment_client.py +6 -6
  26. oci/apigateway/gateway_client.py +6 -6
  27. oci/apigateway/subscribers_client.py +6 -6
  28. oci/apigateway/usage_plans_client.py +6 -6
  29. oci/apigateway/work_requests_client.py +5 -5
  30. oci/apm_config/config_client.py +12 -12
  31. oci/apm_control_plane/apm_domain_client.py +14 -14
  32. oci/apm_synthetics/apm_synthetic_client.py +30 -30
  33. oci/apm_synthetics/models/create_script_details.py +10 -6
  34. oci/apm_synthetics/models/monitor.py +51 -0
  35. oci/apm_synthetics/models/monitor_result.py +2 -2
  36. oci/apm_synthetics/models/script.py +9 -5
  37. oci/apm_synthetics/models/script_summary.py +7 -3
  38. oci/apm_synthetics/models/update_script_details.py +10 -6
  39. oci/apm_traces/attributes_client.py +8 -8
  40. oci/apm_traces/query_client.py +2 -2
  41. oci/apm_traces/trace_client.py +4 -4
  42. oci/appmgmt_control/appmgmt_control_client.py +8 -8
  43. oci/artifacts/artifacts_client.py +32 -32
  44. oci/audit/audit_client.py +3 -3
  45. oci/autoscaling/auto_scaling_client.py +11 -11
  46. oci/bastion/bastion_client.py +15 -15
  47. oci/bds/bds_client.py +578 -86
  48. oci/bds/bds_client_composite_operations.py +42 -0
  49. oci/bds/models/__init__.py +26 -0
  50. oci/bds/models/bds_capacity_report.py +132 -0
  51. oci/bds/models/bds_software_update.py +109 -0
  52. oci/bds/models/capacity_availability.py +121 -0
  53. oci/bds/models/capacity_report_shape_availability.py +128 -0
  54. oci/bds/models/create_bds_capacity_report_details.py +101 -0
  55. oci/bds/models/create_capacity_report_shape_availability_details.py +97 -0
  56. oci/bds/models/domain_type_capacity_report.py +107 -0
  57. oci/bds/models/install_os_patch_details.py +33 -2
  58. oci/bds/models/install_software_updates_details.py +70 -0
  59. oci/bds/models/multi_ad_capacity_report.py +107 -0
  60. oci/bds/models/os_patch_package_summary.py +57 -2
  61. oci/bds/models/patch_history_summary.py +13 -7
  62. oci/bds/models/single_ad_capacity_report.py +107 -0
  63. oci/bds/models/software_update.py +253 -0
  64. oci/bds/models/software_update_collection.py +70 -0
  65. oci/bds/models/software_update_summary.py +194 -0
  66. oci/bds/models/work_request.py +7 -3
  67. oci/blockchain/blockchain_platform_client.py +27 -27
  68. oci/budget/budget_client.py +10 -10
  69. oci/capacity_management/__init__.py +5 -1
  70. oci/capacity_management/capacity_management_client.py +32 -32
  71. oci/capacity_management/demand_signal_client.py +1645 -0
  72. oci/capacity_management/demand_signal_client_composite_operations.py +318 -0
  73. oci/capacity_management/internal_demand_signal_client.py +1605 -0
  74. oci/capacity_management/internal_demand_signal_client_composite_operations.py +172 -0
  75. oci/capacity_management/models/__init__.py +79 -1
  76. oci/capacity_management/models/bulk_create_occm_demand_signal_item.py +400 -0
  77. oci/capacity_management/models/bulk_create_occm_demand_signal_item_details.py +101 -0
  78. oci/capacity_management/models/create_internal_occm_demand_signal_delivery_details.py +322 -0
  79. oci/capacity_management/models/create_occm_demand_signal_details.py +198 -0
  80. oci/capacity_management/models/create_occm_demand_signal_item_details.py +462 -0
  81. oci/capacity_management/models/internal_occm_demand_signal.py +431 -0
  82. oci/capacity_management/models/internal_occm_demand_signal_catalog_resource.py +620 -0
  83. oci/capacity_management/models/internal_occm_demand_signal_catalog_resource_collection.py +70 -0
  84. oci/capacity_management/models/internal_occm_demand_signal_catalog_resource_summary.py +588 -0
  85. oci/capacity_management/models/internal_occm_demand_signal_collection.py +70 -0
  86. oci/capacity_management/models/internal_occm_demand_signal_delivery.py +555 -0
  87. oci/capacity_management/models/internal_occm_demand_signal_delivery_collection.py +70 -0
  88. oci/capacity_management/models/internal_occm_demand_signal_delivery_summary.py +495 -0
  89. oci/capacity_management/models/internal_occm_demand_signal_item_collection.py +70 -0
  90. oci/capacity_management/models/internal_occm_demand_signal_item_summary.py +674 -0
  91. oci/capacity_management/models/internal_occm_demand_signal_summary.py +431 -0
  92. oci/capacity_management/models/occm_demand_signal.py +464 -0
  93. oci/capacity_management/models/occm_demand_signal_catalog.py +418 -0
  94. oci/capacity_management/models/occm_demand_signal_catalog_collection.py +70 -0
  95. oci/capacity_management/models/occm_demand_signal_catalog_resource.py +558 -0
  96. oci/capacity_management/models/occm_demand_signal_catalog_resource_collection.py +70 -0
  97. oci/capacity_management/models/occm_demand_signal_catalog_resource_summary.py +526 -0
  98. oci/capacity_management/models/occm_demand_signal_catalog_summary.py +386 -0
  99. oci/capacity_management/models/occm_demand_signal_collection.py +70 -0
  100. oci/capacity_management/models/occm_demand_signal_delivery_collection.py +70 -0
  101. oci/capacity_management/models/occm_demand_signal_delivery_summary.py +481 -0
  102. oci/capacity_management/models/occm_demand_signal_item.py +675 -0
  103. oci/capacity_management/models/occm_demand_signal_item_collection.py +70 -0
  104. oci/capacity_management/models/occm_demand_signal_item_summary.py +643 -0
  105. oci/capacity_management/models/occm_demand_signal_resource_properties_collection.py +70 -0
  106. oci/capacity_management/models/occm_demand_signal_resource_properties_summary.py +256 -0
  107. oci/capacity_management/models/occm_demand_signal_resource_property_constraints_collection.py +70 -0
  108. oci/capacity_management/models/occm_demand_signal_resource_property_constraints_summary.py +101 -0
  109. oci/capacity_management/models/occm_demand_signal_resource_property_option_summary.py +101 -0
  110. oci/capacity_management/models/occm_demand_signal_summary.py +400 -0
  111. oci/capacity_management/models/update_internal_occm_demand_signal_delivery_details.py +260 -0
  112. oci/capacity_management/models/update_internal_occm_demand_signal_details.py +98 -0
  113. oci/capacity_management/models/update_occm_demand_signal_details.py +210 -0
  114. oci/capacity_management/models/update_occm_demand_signal_item_details.py +326 -0
  115. oci/certificates/certificates_client.py +5 -5
  116. oci/certificates_management/certificates_management_client.py +32 -32
  117. oci/cims/incident_client.py +6 -6
  118. oci/cloud_bridge/common_client.py +5 -5
  119. oci/cloud_bridge/discovery_client.py +15 -15
  120. oci/cloud_bridge/inventory_client.py +16 -16
  121. oci/cloud_bridge/ocb_agent_svc_client.py +23 -23
  122. oci/cloud_guard/cloud_guard_client.py +155 -155
  123. oci/cloud_migrations/migration_client.py +43 -43
  124. oci/cluster_placement_groups/cluster_placement_groups_cp_client.py +13 -13
  125. oci/compute_cloud_at_customer/compute_cloud_at_customer_client.py +12 -12
  126. oci/compute_instance_agent/compute_instance_agent_client.py +6 -6
  127. oci/compute_instance_agent/plugin_client.py +2 -2
  128. oci/compute_instance_agent/pluginconfig_client.py +1 -1
  129. oci/container_engine/container_engine_client.py +46 -46
  130. oci/container_engine/models/cluster.py +33 -2
  131. oci/container_instances/container_instance_client.py +18 -18
  132. oci/core/blockstorage_client.py +60 -60
  133. oci/core/compute_client.py +1095 -163
  134. oci/core/compute_client_composite_operations.py +403 -0
  135. oci/core/compute_management_client.py +32 -32
  136. oci/core/models/__init__.py +30 -0
  137. oci/core/models/attach_compute_host_group_host_details.py +74 -0
  138. oci/core/models/change_compute_host_group_compartment_details.py +76 -0
  139. oci/core/models/compute_bare_metal_host_placement_constraint_details.py +79 -0
  140. oci/core/models/compute_host.py +191 -0
  141. oci/core/models/compute_host_configuration_check_details.py +243 -0
  142. oci/core/models/compute_host_configuration_data.py +97 -0
  143. oci/core/models/compute_host_group.py +483 -0
  144. oci/core/models/compute_host_group_collection.py +70 -0
  145. oci/core/models/compute_host_group_summary.py +428 -0
  146. oci/core/models/compute_host_summary.py +62 -0
  147. oci/core/models/create_compute_host_group_details.py +282 -0
  148. oci/core/models/create_dedicated_vm_host_details.py +29 -2
  149. oci/core/models/create_ipv6_details.py +4 -4
  150. oci/core/models/create_local_peering_gateway_details.py +45 -0
  151. oci/core/models/create_private_ip_details.py +4 -4
  152. oci/core/models/create_vcn_details.py +33 -2
  153. oci/core/models/create_volume_details.py +8 -2
  154. oci/core/models/dedicated_vm_host.py +27 -0
  155. oci/core/models/detach_compute_host_group_host_details.py +74 -0
  156. oci/core/models/host_group_configuration.py +152 -0
  157. oci/core/models/host_group_placement_constraint_details.py +79 -0
  158. oci/core/models/instance.py +64 -2
  159. oci/core/models/instance_configuration_create_volume_details.py +8 -2
  160. oci/core/models/ipv6.py +4 -4
  161. oci/core/models/launch_instance_details.py +58 -0
  162. oci/core/models/local_peering_gateway.py +45 -0
  163. oci/core/models/placement_constraint_details.py +91 -0
  164. oci/core/models/private_ip.py +4 -4
  165. oci/core/models/recycle_details.py +125 -0
  166. oci/core/models/update_compute_host_group_details.py +216 -0
  167. oci/core/models/update_ipv6_details.py +4 -4
  168. oci/core/models/update_local_peering_gateway_details.py +45 -0
  169. oci/core/models/update_private_ip_details.py +4 -4
  170. oci/core/models/update_vcn_details.py +33 -2
  171. oci/core/models/update_vnic_details.py +2 -2
  172. oci/core/models/update_volume_details.py +8 -2
  173. oci/core/models/vcn.py +33 -2
  174. oci/core/models/vnic.py +2 -2
  175. oci/core/models/volume.py +8 -2
  176. oci/core/virtual_network_client.py +260 -260
  177. oci/dashboard_service/dashboard_client.py +6 -6
  178. oci/dashboard_service/dashboard_group_client.py +6 -6
  179. oci/data_catalog/data_catalog_client.py +149 -149
  180. oci/data_flow/data_flow_client.py +45 -45
  181. oci/data_integration/data_integration_client.py +163 -163
  182. oci/data_labeling_service/data_labeling_management_client.py +17 -17
  183. oci/data_labeling_service_dataplane/data_labeling_client.py +15 -15
  184. oci/data_safe/data_safe_client.py +317 -317
  185. oci/data_science/data_science_client.py +145 -145
  186. oci/database/database_client.py +795 -508
  187. oci/database/models/__init__.py +2 -0
  188. oci/database/models/autonomous_container_database.py +2 -2
  189. oci/database/models/autonomous_container_database_summary.py +2 -2
  190. oci/database/models/autonomous_db_version_summary.py +31 -0
  191. oci/database/models/backup.py +11 -5
  192. oci/database/models/backup_summary.py +11 -5
  193. oci/database/models/create_database_base.py +1 -1
  194. oci/database/models/create_external_backup_job_details.py +11 -7
  195. oci/database/models/db_system.py +11 -5
  196. oci/database/models/db_system_summary.py +11 -5
  197. oci/database/models/db_system_upgrade_summary.py +152 -0
  198. oci/database/models/external_container_database.py +11 -5
  199. oci/database/models/external_container_database_summary.py +11 -5
  200. oci/database/models/external_database_base.py +11 -5
  201. oci/database/models/external_non_container_database.py +11 -5
  202. oci/database/models/external_non_container_database_summary.py +11 -5
  203. oci/database/models/external_pluggable_database.py +11 -5
  204. oci/database/models/external_pluggable_database_summary.py +11 -5
  205. oci/database/models/launch_db_system_details.py +7 -3
  206. oci/database/models/launch_db_system_from_backup_details.py +7 -3
  207. oci/database/models/launch_db_system_from_database_details.py +7 -3
  208. oci/database_management/db_management_client.py +229 -229
  209. oci/database_management/diagnosability_client.py +4 -4
  210. oci/database_management/managed_my_sql_databases_client.py +7 -7
  211. oci/database_management/perfhub_client.py +1 -1
  212. oci/database_management/sql_tuning_client.py +17 -17
  213. oci/database_migration/database_migration_client.py +42 -42
  214. oci/database_tools/database_tools_client.py +23 -23
  215. oci/dblm/db_life_cycle_management_client.py +14 -14
  216. oci/delegate_access_control/delegate_access_control_client.py +26 -26
  217. oci/delegate_access_control/work_request_client.py +4 -4
  218. oci/demand_signal/occ_demand_signal_client.py +7 -7
  219. oci/desktops/desktop_service_client.py +21 -21
  220. oci/devops/devops_client.py +141 -141
  221. oci/disaster_recovery/disaster_recovery_client.py +31 -31
  222. oci/distributed_database/__init__.py +20 -0
  223. oci/distributed_database/distributed_autonomous_db_service_client.py +2315 -0
  224. oci/distributed_database/distributed_autonomous_db_service_client_composite_operations.py +605 -0
  225. oci/distributed_database/distributed_db_private_endpoint_service_client.py +944 -0
  226. oci/distributed_database/distributed_db_private_endpoint_service_client_composite_operations.py +238 -0
  227. oci/distributed_database/distributed_db_service_client.py +2435 -0
  228. oci/distributed_database/distributed_db_service_client_composite_operations.py +647 -0
  229. oci/distributed_database/distributed_db_work_request_service_client.py +654 -0
  230. oci/distributed_database/distributed_db_work_request_service_client_composite_operations.py +26 -0
  231. oci/distributed_database/models/__init__.py +158 -0
  232. oci/distributed_database/models/add_distributed_autonomous_database_gds_control_node_details.py +105 -0
  233. oci/distributed_database/models/add_distributed_database_gds_control_node_details.py +105 -0
  234. oci/distributed_database/models/catalog_peer_with_dedicated_infra.py +331 -0
  235. oci/distributed_database/models/catalog_peer_with_exadb_xs.py +331 -0
  236. oci/distributed_database/models/change_distributed_autonomous_database_compartment_details.py +74 -0
  237. oci/distributed_database/models/change_distributed_database_compartment_details.py +74 -0
  238. oci/distributed_database/models/change_distributed_database_private_endpoint_compartment_details.py +74 -0
  239. oci/distributed_database/models/change_distributed_db_backup_config_details.py +66 -0
  240. oci/distributed_database/models/configure_distributed_autonomous_database_gsms_details.py +103 -0
  241. oci/distributed_database/models/configure_distributed_database_gsms_details.py +103 -0
  242. oci/distributed_database/models/create_distributed_autonomous_database_catalog_details.py +101 -0
  243. oci/distributed_database/models/create_distributed_autonomous_database_catalog_with_dedicated_infra_details.py +342 -0
  244. oci/distributed_database/models/create_distributed_autonomous_database_details.py +799 -0
  245. oci/distributed_database/models/create_distributed_autonomous_database_shard_details.py +101 -0
  246. oci/distributed_database/models/create_distributed_autonomous_database_shard_with_dedicated_infra_details.py +377 -0
  247. oci/distributed_database/models/create_distributed_database_catalog_details.py +99 -0
  248. oci/distributed_database/models/create_distributed_database_catalog_with_exadb_xs_details.py +282 -0
  249. oci/distributed_database/models/create_distributed_database_details.py +810 -0
  250. oci/distributed_database/models/create_distributed_database_private_endpoint_details.py +260 -0
  251. oci/distributed_database/models/create_distributed_database_shard_details.py +99 -0
  252. oci/distributed_database/models/create_distributed_database_shard_with_exadb_xs_details.py +282 -0
  253. oci/distributed_database/models/distributed_autonomous_database.py +1143 -0
  254. oci/distributed_database/models/distributed_autonomous_database_associated_with_private_endpoint.py +105 -0
  255. oci/distributed_database/models/distributed_autonomous_database_catalog.py +194 -0
  256. oci/distributed_database/models/distributed_autonomous_database_catalog_with_dedicated_infra.py +559 -0
  257. oci/distributed_database/models/distributed_autonomous_database_collection.py +70 -0
  258. oci/distributed_database/models/distributed_autonomous_database_connection_string.py +70 -0
  259. oci/distributed_database/models/distributed_autonomous_database_gsm.py +385 -0
  260. oci/distributed_database/models/distributed_autonomous_database_gsm_image.py +105 -0
  261. oci/distributed_database/models/distributed_autonomous_database_shard.py +194 -0
  262. oci/distributed_database/models/distributed_autonomous_database_shard_with_dedicated_infra.py +592 -0
  263. oci/distributed_database/models/distributed_autonomous_database_summary.py +935 -0
  264. oci/distributed_database/models/distributed_autonomous_db_metadata.py +70 -0
  265. oci/distributed_database/models/distributed_database.py +1154 -0
  266. oci/distributed_database/models/distributed_database_associated_with_private_endpoint.py +105 -0
  267. oci/distributed_database/models/distributed_database_catalog.py +192 -0
  268. oci/distributed_database/models/distributed_database_catalog_with_exadb_xs.py +466 -0
  269. oci/distributed_database/models/distributed_database_collection.py +70 -0
  270. oci/distributed_database/models/distributed_database_gsm.py +385 -0
  271. oci/distributed_database/models/distributed_database_private_endpoint.py +639 -0
  272. oci/distributed_database/models/distributed_database_private_endpoint_collection.py +70 -0
  273. oci/distributed_database/models/distributed_database_private_endpoint_summary.py +479 -0
  274. oci/distributed_database/models/distributed_database_shard.py +192 -0
  275. oci/distributed_database/models/distributed_database_shard_with_exadb_xs.py +499 -0
  276. oci/distributed_database/models/distributed_database_summary.py +904 -0
  277. oci/distributed_database/models/distributed_db_backup_config.py +536 -0
  278. oci/distributed_database/models/distributed_db_backup_destination.py +362 -0
  279. oci/distributed_database/models/distributed_db_connection_string.py +70 -0
  280. oci/distributed_database/models/distributed_db_gsm_image.py +105 -0
  281. oci/distributed_database/models/distributed_db_metadata.py +70 -0
  282. oci/distributed_database/models/generate_distributed_autonomous_database_wallet_details.py +70 -0
  283. oci/distributed_database/models/generate_distributed_database_wallet_details.py +70 -0
  284. oci/distributed_database/models/patch_distributed_autonomous_database_details.py +73 -0
  285. oci/distributed_database/models/patch_distributed_database_details.py +73 -0
  286. oci/distributed_database/models/patch_insert_instruction.py +87 -0
  287. oci/distributed_database/models/patch_instruction.py +154 -0
  288. oci/distributed_database/models/patch_merge_instruction.py +95 -0
  289. oci/distributed_database/models/patch_remove_instruction.py +57 -0
  290. oci/distributed_database/models/shard_peer_with_dedicated_infra.py +331 -0
  291. oci/distributed_database/models/shard_peer_with_exadb_xs.py +331 -0
  292. oci/distributed_database/models/update_distributed_autonomous_database_details.py +136 -0
  293. oci/distributed_database/models/update_distributed_database_details.py +136 -0
  294. oci/distributed_database/models/update_distributed_database_private_endpoint_details.py +198 -0
  295. oci/distributed_database/models/upload_distributed_autonomous_database_signed_certificate_and_generate_wallet_details.py +71 -0
  296. oci/distributed_database/models/upload_distributed_database_signed_certificate_and_generate_wallet_details.py +71 -0
  297. oci/distributed_database/models/work_request.py +516 -0
  298. oci/distributed_database/models/work_request_error.py +134 -0
  299. oci/distributed_database/models/work_request_error_collection.py +70 -0
  300. oci/distributed_database/models/work_request_log_entry.py +101 -0
  301. oci/distributed_database/models/work_request_log_entry_collection.py +70 -0
  302. oci/distributed_database/models/work_request_resource.py +232 -0
  303. oci/distributed_database/models/work_request_summary.py +516 -0
  304. oci/distributed_database/models/work_request_summary_collection.py +70 -0
  305. oci/dns/dns_client.py +54 -54
  306. oci/dts/appliance_export_job_client.py +6 -6
  307. oci/dts/shipping_vendors_client.py +1 -1
  308. oci/dts/transfer_appliance_client.py +8 -8
  309. oci/dts/transfer_appliance_entitlement_client.py +3 -3
  310. oci/dts/transfer_device_client.py +5 -5
  311. oci/dts/transfer_job_client.py +6 -6
  312. oci/dts/transfer_package_client.py +7 -7
  313. oci/em_warehouse/em_warehouse_client.py +13 -13
  314. oci/email/email_client.py +31 -31
  315. oci/email_data_plane/email_dp_client.py +1 -1
  316. oci/events/events_client.py +6 -6
  317. oci/file_storage/file_storage_client.py +74 -74
  318. oci/fleet_apps_management/fleet_apps_management_admin_client.py +27 -27
  319. oci/fleet_apps_management/fleet_apps_management_catalog_client.py +7 -7
  320. oci/fleet_apps_management/fleet_apps_management_client.py +32 -32
  321. oci/fleet_apps_management/fleet_apps_management_maintenance_window_client.py +5 -5
  322. oci/fleet_apps_management/fleet_apps_management_operations_client.py +29 -29
  323. oci/fleet_apps_management/fleet_apps_management_provision_client.py +6 -6
  324. oci/fleet_apps_management/fleet_apps_management_runbooks_client.py +19 -19
  325. oci/fleet_apps_management/fleet_apps_management_work_request_client.py +4 -4
  326. oci/fleet_software_update/fleet_software_update_client.py +46 -46
  327. oci/functions/functions_invoke_client.py +1 -1
  328. oci/functions/functions_management_client.py +16 -16
  329. oci/fusion_apps/fusion_applications_client.py +41 -41
  330. oci/generative_ai/generative_ai_client.py +22 -22
  331. oci/generative_ai_agent/generative_ai_agent_client.py +38 -38
  332. oci/generative_ai_agent_runtime/generative_ai_agent_runtime_client.py +6 -6
  333. oci/generative_ai_inference/generative_ai_inference_client.py +6 -6
  334. oci/generic_artifacts_content/generic_artifacts_content_client.py +3 -3
  335. oci/globally_distributed_database/sharded_database_service_client.py +30 -30
  336. oci/golden_gate/golden_gate_client.py +89 -89
  337. oci/governance_rules_control_plane/governance_rule_client.py +15 -15
  338. oci/governance_rules_control_plane/work_request_client.py +5 -5
  339. oci/healthchecks/health_checks_client.py +17 -17
  340. oci/identity/identity_client.py +145 -145
  341. oci/identity_data_plane/dataplane_client.py +2 -2
  342. oci/identity_domains/identity_domains_client.py +311 -311
  343. oci/integration/integration_instance_client.py +19 -19
  344. oci/jms/java_management_service_client.py +79 -79
  345. oci/jms_java_downloads/java_download_client.py +25 -25
  346. oci/key_management/ekm_client.py +5 -5
  347. oci/key_management/kms_crypto_client.py +6 -6
  348. oci/key_management/kms_hsm_cluster_client.py +12 -12
  349. oci/key_management/kms_management_client.py +21 -21
  350. oci/key_management/kms_vault_client.py +14 -14
  351. oci/license_manager/license_manager_client.py +18 -18
  352. oci/limits/limits_client.py +4 -4
  353. oci/limits/quotas_client.py +7 -7
  354. oci/load_balancer/load_balancer_client.py +61 -61
  355. oci/lockbox/lockbox_client.py +24 -24
  356. oci/log_analytics/log_analytics_client.py +200 -200
  357. oci/logging/logging_management_client.py +30 -30
  358. oci/loggingingestion/logging_client.py +1 -1
  359. oci/loggingsearch/log_search_client.py +1 -1
  360. oci/lustre_file_storage/lustre_file_storage_client.py +11 -11
  361. oci/management_agent/management_agent_client.py +28 -28
  362. oci/management_dashboard/dashx_apis_client.py +474 -14
  363. oci/management_dashboard/models/management_dashboard_tile_details.py +33 -2
  364. oci/marketplace/account_client.py +2 -2
  365. oci/marketplace/marketplace_client.py +30 -30
  366. oci/marketplace_private_offer/attachment_client.py +5 -5
  367. oci/marketplace_private_offer/offer_client.py +6 -6
  368. oci/marketplace_publisher/attachment_client.py +5 -5
  369. oci/marketplace_publisher/marketplace_publisher_client.py +71 -71
  370. oci/marketplace_publisher/offer_client.py +6 -6
  371. oci/media_services/media_services_client.py +60 -60
  372. oci/media_services/media_stream_client.py +2 -2
  373. oci/mngdmac/mac_device_client.py +3 -3
  374. oci/mngdmac/mac_order_client.py +11 -11
  375. oci/model_deployment/model_deployment_client.py +2 -2
  376. oci/monitoring/monitoring_client.py +18 -18
  377. oci/mysql/channels_client.py +7 -7
  378. oci/mysql/db_backups_client.py +7 -7
  379. oci/mysql/db_system_client.py +17 -17
  380. oci/mysql/models/__init__.py +6 -0
  381. oci/mysql/models/create_db_system_details.py +58 -0
  382. oci/mysql/models/create_rest_details.py +117 -0
  383. oci/mysql/models/db_system.py +58 -0
  384. oci/mysql/models/db_system_snapshot.py +58 -0
  385. oci/mysql/models/db_system_summary.py +27 -0
  386. oci/mysql/models/replica.py +31 -0
  387. oci/mysql/models/replica_overrides.py +33 -2
  388. oci/mysql/models/replica_summary.py +31 -0
  389. oci/mysql/models/rest_details.py +117 -0
  390. oci/mysql/models/update_db_system_details.py +58 -0
  391. oci/mysql/models/update_rest_details.py +117 -0
  392. oci/mysql/mysqlaas_client.py +7 -7
  393. oci/mysql/replicas_client.py +5 -5
  394. oci/mysql/work_requests_client.py +4 -4
  395. oci/network_firewall/models/__init__.py +24 -0
  396. oci/network_firewall/models/create_nat_rule_details.py +193 -0
  397. oci/network_firewall/models/create_nat_v4_rule_details.py +144 -0
  398. oci/network_firewall/models/create_network_firewall_details.py +27 -0
  399. oci/network_firewall/models/nat_configuration_request.py +70 -0
  400. oci/network_firewall/models/nat_configuration_response.py +101 -0
  401. oci/network_firewall/models/nat_rule.py +254 -0
  402. oci/network_firewall/models/nat_rule_collection.py +70 -0
  403. oci/network_firewall/models/nat_rule_match_criteria.py +132 -0
  404. oci/network_firewall/models/nat_rule_summary.py +228 -0
  405. oci/network_firewall/models/nat_v4_nat_rule.py +159 -0
  406. oci/network_firewall/models/nat_v4_nat_summary.py +152 -0
  407. oci/network_firewall/models/network_firewall.py +30 -11
  408. oci/network_firewall/models/network_firewall_policy.py +3 -11
  409. oci/network_firewall/models/network_firewall_policy_summary.py +3 -11
  410. oci/network_firewall/models/network_firewall_summary.py +30 -11
  411. oci/network_firewall/models/update_nat_rule_details.py +162 -0
  412. oci/network_firewall/models/update_nat_v4_rule_details.py +137 -0
  413. oci/network_firewall/models/update_network_firewall_details.py +27 -0
  414. oci/network_firewall/network_firewall_client.py +848 -108
  415. oci/network_firewall/network_firewall_client_composite_operations.py +42 -0
  416. oci/network_load_balancer/network_load_balancer_client.py +35 -35
  417. oci/nosql/nosql_client.py +24 -24
  418. oci/object_storage/object_storage_client.py +55 -55
  419. oci/oce/oce_instance_client.py +10 -10
  420. oci/oci_control_center/occ_metrics_client.py +3 -3
  421. oci/ocvp/cluster_client.py +5 -5
  422. oci/ocvp/esxi_host_client.py +8 -8
  423. oci/ocvp/sddc_client.py +14 -14
  424. oci/ocvp/work_request_client.py +4 -4
  425. oci/oda/management_client.py +59 -59
  426. oci/oda/oda_client.py +17 -17
  427. oci/oda/odapackage_client.py +7 -7
  428. oci/onesubscription/billing_schedule_client.py +1 -1
  429. oci/onesubscription/commitment_client.py +2 -2
  430. oci/onesubscription/computed_usage_client.py +3 -3
  431. oci/onesubscription/invoice_summary_client.py +2 -2
  432. oci/onesubscription/organization_subscription_client.py +1 -1
  433. oci/onesubscription/ratecard_client.py +1 -1
  434. oci/onesubscription/subscribed_service_client.py +2 -2
  435. oci/onesubscription/subscription_client.py +1 -1
  436. oci/ons/notification_control_plane_client.py +6 -6
  437. oci/ons/notification_data_plane_client.py +10 -10
  438. oci/opa/opa_instance_client.py +13 -13
  439. oci/opensearch/opensearch_cluster_backup_client.py +4 -4
  440. oci/opensearch/opensearch_cluster_client.py +17 -17
  441. oci/opensearch/opensearch_cluster_pipeline_client.py +5 -5
  442. oci/operator_access_control/access_requests_client.py +10 -10
  443. oci/operator_access_control/operator_actions_client.py +2 -2
  444. oci/operator_access_control/operator_control_assignment_client.py +8 -8
  445. oci/operator_access_control/operator_control_client.py +6 -6
  446. oci/opsi/operations_insights_client.py +181 -181
  447. oci/optimizer/optimizer_client.py +26 -26
  448. oci/os_management/event_client.py +8 -8
  449. oci/os_management/os_management_client.py +69 -69
  450. oci/os_management_hub/event_client.py +8 -8
  451. oci/os_management_hub/lifecycle_environment_client.py +13 -13
  452. oci/os_management_hub/managed_instance_client.py +33 -33
  453. oci/os_management_hub/managed_instance_group_client.py +26 -26
  454. oci/os_management_hub/management_station_client.py +10 -10
  455. oci/os_management_hub/onboarding_client.py +13 -13
  456. oci/os_management_hub/reporting_managed_instance_client.py +3 -3
  457. oci/os_management_hub/scheduled_job_client.py +7 -7
  458. oci/os_management_hub/software_source_client.py +33 -33
  459. oci/os_management_hub/work_request_client.py +5 -5
  460. oci/osp_gateway/address_rule_service_client.py +1 -1
  461. oci/osp_gateway/address_service_client.py +2 -2
  462. oci/osp_gateway/invoice_service_client.py +5 -5
  463. oci/osp_gateway/subscription_service_client.py +5 -5
  464. oci/osub_billing_schedule/billing_schedule_client.py +1 -1
  465. oci/osub_organization_subscription/organization_subscription_client.py +1 -1
  466. oci/osub_subscription/commitment_client.py +2 -2
  467. oci/osub_subscription/ratecard_client.py +1 -1
  468. oci/osub_subscription/subscription_client.py +1 -1
  469. oci/osub_usage/computed_usage_client.py +3 -3
  470. oci/psql/postgresql_client.py +34 -34
  471. oci/queue/queue_admin_client.py +11 -11
  472. oci/queue/queue_client.py +8 -8
  473. oci/recovery/database_recovery_client.py +26 -26
  474. oci/redis/redis_cluster_client.py +12 -12
  475. oci/resource_manager/resource_manager_client.py +52 -52
  476. oci/resource_scheduler/schedule_client.py +14 -14
  477. oci/resource_search/resource_search_client.py +3 -3
  478. oci/rover/rover_bundle_client.py +8 -8
  479. oci/rover/rover_cluster_client.py +8 -8
  480. oci/rover/rover_entitlement_client.py +6 -6
  481. oci/rover/rover_node_client.py +15 -15
  482. oci/rover/shape_client.py +1 -1
  483. oci/rover/work_requests_client.py +5 -5
  484. oci/sch/connector_plugins_client.py +2 -2
  485. oci/sch/service_connector_client.py +12 -12
  486. oci/secrets/secrets_client.py +3 -3
  487. oci/security_attribute/security_attribute_client.py +18 -18
  488. oci/service_catalog/service_catalog_client.py +26 -26
  489. oci/service_manager_proxy/service_manager_proxy_client.py +2 -2
  490. oci/service_mesh/service_mesh_client.py +48 -48
  491. oci/stack_monitoring/stack_monitoring_client.py +87 -87
  492. oci/streaming/stream_admin_client.py +18 -18
  493. oci/streaming/stream_client.py +8 -8
  494. oci/tenant_manager_control_plane/domain_client.py +5 -5
  495. oci/tenant_manager_control_plane/domain_governance_client.py +5 -5
  496. oci/tenant_manager_control_plane/governance_client.py +2 -2
  497. oci/tenant_manager_control_plane/link_client.py +3 -3
  498. oci/tenant_manager_control_plane/orders_client.py +2 -2
  499. oci/tenant_manager_control_plane/organization_client.py +10 -10
  500. oci/tenant_manager_control_plane/recipient_invitation_client.py +5 -5
  501. oci/tenant_manager_control_plane/sender_invitation_client.py +5 -5
  502. oci/tenant_manager_control_plane/subscription_client.py +11 -11
  503. oci/tenant_manager_control_plane/work_request_client.py +4 -4
  504. oci/threat_intelligence/threatintel_client.py +5 -5
  505. oci/usage/resources_client.py +2 -2
  506. oci/usage/rewards_client.py +6 -6
  507. oci/usage/usagelimits_client.py +1 -1
  508. oci/usage_api/models/average_carbon_emission.py +3 -3
  509. oci/usage_api/models/create_email_recipients_group_details.py +3 -3
  510. oci/usage_api/models/email_recipient.py +6 -6
  511. oci/usage_api/models/email_recipients_group.py +5 -5
  512. oci/usage_api/models/email_recipients_group_collection.py +3 -3
  513. oci/usage_api/models/email_recipients_group_summary.py +5 -5
  514. oci/usage_api/models/forecast.py +5 -3
  515. oci/usage_api/models/report_query.py +16 -16
  516. oci/usage_api/models/request_summarized_usages_details.py +4 -4
  517. oci/usage_api/models/request_usage_carbon_emissions_details.py +143 -2
  518. oci/usage_api/models/saved_custom_table.py +4 -4
  519. oci/usage_api/models/scheduled_run.py +12 -12
  520. oci/usage_api/models/scheduled_run_summary.py +12 -12
  521. oci/usage_api/models/update_email_recipients_group_details.py +3 -3
  522. oci/usage_api/models/usage_carbon_emission_aggregation.py +5 -5
  523. oci/usage_api/models/usage_carbon_emission_summary.py +36 -5
  524. oci/usage_api/models/usage_carbon_emissions_query.py +1 -1
  525. oci/usage_api/models/usage_carbon_emissions_query_collection.py +1 -1
  526. oci/usage_api/models/usage_carbon_emissions_query_summary.py +1 -1
  527. oci/usage_api/models/usage_carbon_emissions_report_query.py +98 -5
  528. oci/usage_api/usageapi_client.py +69 -69
  529. oci/usage_api/usageapi_client_composite_operations.py +4 -4
  530. oci/vault/vaults_client.py +13 -13
  531. oci/vbs_inst/vbs_instance_client.py +10 -10
  532. oci/version.py +1 -1
  533. oci/visual_builder/vb_instance_client.py +14 -14
  534. oci/vn_monitoring/vn_monitoring_client.py +12 -12
  535. oci/vulnerability_scanning/vulnerability_scanning_client.py +58 -58
  536. oci/waa/waa_client.py +13 -13
  537. oci/waa/work_request_client.py +4 -4
  538. oci/waas/redirect_client.py +6 -6
  539. oci/waas/waas_client.py +66 -66
  540. oci/waf/waf_client.py +24 -24
  541. oci/work_requests/work_request_client.py +4 -4
  542. oci/zpr/zpr_client.py +15 -15
  543. {oci-2.152.0.dist-info → oci-2.153.0.dist-info}/METADATA +1 -1
  544. {oci-2.152.0.dist-info → oci-2.153.0.dist-info}/RECORD +548 -378
  545. {oci-2.152.0.dist-info → oci-2.153.0.dist-info}/LICENSE.txt +0 -0
  546. {oci-2.152.0.dist-info → oci-2.153.0.dist-info}/THIRD_PARTY_LICENSES.txt +0 -0
  547. {oci-2.152.0.dist-info → oci-2.153.0.dist-info}/WHEEL +0 -0
  548. {oci-2.152.0.dist-info → oci-2.153.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1645 @@
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: 20231107
6
+
7
+ from __future__ import absolute_import
8
+
9
+ from oci._vendor import requests # noqa: F401
10
+ from oci._vendor import six
11
+
12
+ from oci import retry, circuit_breaker # noqa: F401
13
+ from oci.base_client import BaseClient
14
+ from oci.config import get_config_value_or_default, validate_config
15
+ from oci.signer import Signer
16
+ from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME
17
+ from oci.exceptions import InvalidAlloyConfig
18
+ from oci.alloy import OCI_SDK_ENABLED_SERVICES_SET
19
+ from .models import capacity_management_type_mapping
20
+ missing = Sentinel("Missing")
21
+
22
+
23
+ class DemandSignalClient(object):
24
+ """
25
+ OCI Control Center (OCC) Capacity Management enables you to manage capacity requests in realms where OCI Control Center Capacity Management is available. For more information, see [OCI Control Center](/iaas/Content/control-center/home.htm).
26
+ """
27
+
28
+ def __init__(self, config, **kwargs):
29
+ """
30
+ Creates a new service client
31
+
32
+ :param dict config:
33
+ Configuration keys and values as per `SDK and Tool Configuration <https://docs.cloud.oracle.com/Content/API/Concepts/sdkconfig.htm>`__.
34
+ The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config
35
+ the dict using :py:meth:`~oci.config.validate_config`
36
+
37
+ :param str service_endpoint: (optional)
38
+ The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is
39
+ not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit
40
+ need to specify a service endpoint.
41
+
42
+ :param timeout: (optional)
43
+ The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided
44
+ as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If
45
+ a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout.
46
+ :type timeout: float or tuple(float, float)
47
+
48
+ :param signer: (optional)
49
+ The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values
50
+ provided in the config parameter.
51
+
52
+ One use case for this parameter is for `Instance Principals authentication <https://docs.cloud.oracle.com/Content/Identity/Tasks/callingservicesfrominstances.htm>`__
53
+ by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument
54
+ :type signer: :py:class:`~oci.signer.AbstractBaseSigner`
55
+
56
+ :param obj retry_strategy: (optional)
57
+ A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default.
58
+ Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation.
59
+ Any value provided at the operation level will override whatever is specified at the client level.
60
+
61
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
62
+ is also available. The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
63
+
64
+ :param obj circuit_breaker_strategy: (optional)
65
+ A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level).
66
+ This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided.
67
+ The specifics of circuit breaker strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/circuit_breakers.html>`__.
68
+
69
+ :param function circuit_breaker_callback: (optional)
70
+ Callback function to receive any exceptions triggerred by the circuit breaker.
71
+
72
+ :param bool client_level_realm_specific_endpoint_template_enabled: (optional)
73
+ A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None.
74
+
75
+ :param allow_control_chars: (optional)
76
+ allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not
77
+ allow control characters to be in the response object.
78
+ """
79
+ if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("capacity_management"):
80
+ raise InvalidAlloyConfig("The Alloy configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local alloy-config file configured the service you're targeting or contact the cloud provider on the availability of this service")
81
+
82
+ validate_config(config, signer=kwargs.get('signer'))
83
+ if 'signer' in kwargs:
84
+ signer = kwargs['signer']
85
+
86
+ elif AUTHENTICATION_TYPE_FIELD_NAME in config:
87
+ signer = get_signer_from_authentication_type(config)
88
+
89
+ else:
90
+ signer = Signer(
91
+ tenancy=config["tenancy"],
92
+ user=config["user"],
93
+ fingerprint=config["fingerprint"],
94
+ private_key_file_location=config.get("key_file"),
95
+ pass_phrase=get_config_value_or_default(config, "pass_phrase"),
96
+ private_key_content=config.get("key_content")
97
+ )
98
+
99
+ base_client_init_kwargs = {
100
+ 'regional_client': True,
101
+ 'service_endpoint': kwargs.get('service_endpoint'),
102
+ 'base_path': '/20231107',
103
+ 'service_endpoint_template': 'https://control-center-cp.{region}.oci.{secondLevelDomain}',
104
+ 'endpoint_service_name': 'control-center-cp',
105
+ 'service_endpoint_template_per_realm': { }, # noqa: E201 E202
106
+ 'skip_deserialization': kwargs.get('skip_deserialization', False),
107
+ 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY),
108
+ 'client_level_realm_specific_endpoint_template_enabled': kwargs.get('client_level_realm_specific_endpoint_template_enabled')
109
+ }
110
+ if 'timeout' in kwargs:
111
+ base_client_init_kwargs['timeout'] = kwargs.get('timeout')
112
+ if base_client_init_kwargs.get('circuit_breaker_strategy') is None:
113
+ base_client_init_kwargs['circuit_breaker_strategy'] = circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY
114
+ if 'allow_control_chars' in kwargs:
115
+ base_client_init_kwargs['allow_control_chars'] = kwargs.get('allow_control_chars')
116
+ self.base_client = BaseClient("demand_signal", config, signer, capacity_management_type_mapping, **base_client_init_kwargs)
117
+ self.retry_strategy = kwargs.get('retry_strategy')
118
+ self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback')
119
+
120
+ def bulk_create_occm_demand_signal_item(self, bulk_create_occm_demand_signal_item_details, **kwargs):
121
+ """
122
+ This API will help in bulk creation of demand signal items. This API is atomic i.e either all the demand signal item resources will be created or none will be created.
123
+
124
+
125
+ :param oci.capacity_management.models.BulkCreateOccmDemandSignalItemDetails bulk_create_occm_demand_signal_item_details: (required)
126
+ The request details for bulk creating the demand signal items.
127
+
128
+ :param str opc_retry_token: (optional)
129
+ A token that uniquely identifies a request so it can be retried in case of a timeout or
130
+ server error without risk of executing that same action again. Retry tokens expire after 24
131
+ hours, but can be invalidated before then due to conflicting operations. For example, if a resource
132
+ has been deleted and purged from the system, then a retry of the original creation request
133
+ might be rejected.
134
+
135
+ :param str opc_request_id: (optional)
136
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
137
+ underscore, and dash.
138
+
139
+ :param obj retry_strategy: (optional)
140
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
141
+
142
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
143
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
144
+
145
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
146
+
147
+ :param bool allow_control_chars: (optional)
148
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
149
+ By default, the response will not allow control characters in strings
150
+
151
+ :return: A :class:`~oci.response.Response` object with data of type None
152
+ :rtype: :class:`~oci.response.Response`
153
+
154
+ :example:
155
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/bulk_create_occm_demand_signal_item.py.html>`__ to see an example of how to use bulk_create_occm_demand_signal_item API.
156
+ """
157
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
158
+ required_arguments = []
159
+ resource_path = "/occmDemandSignalItems/actions/bulkCreateDemandSignalItems"
160
+ method = "POST"
161
+ operation_name = "bulk_create_occm_demand_signal_item"
162
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignalItem/BulkCreateOccmDemandSignalItem"
163
+
164
+ # Don't accept unknown kwargs
165
+ expected_kwargs = [
166
+ "allow_control_chars",
167
+ "retry_strategy",
168
+ "opc_retry_token",
169
+ "opc_request_id"
170
+ ]
171
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
172
+ if extra_kwargs:
173
+ raise ValueError(
174
+ f"bulk_create_occm_demand_signal_item got unknown kwargs: {extra_kwargs!r}")
175
+
176
+ header_params = {
177
+ "accept": "application/json",
178
+ "content-type": "application/json",
179
+ "opc-retry-token": kwargs.get("opc_retry_token", missing),
180
+ "opc-request-id": kwargs.get("opc_request_id", missing)
181
+ }
182
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
183
+
184
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
185
+ operation_retry_strategy=kwargs.get('retry_strategy'),
186
+ client_retry_strategy=self.retry_strategy
187
+ )
188
+ if retry_strategy is None:
189
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
190
+
191
+ if retry_strategy:
192
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
193
+ self.base_client.add_opc_retry_token_if_needed(header_params)
194
+ self.base_client.add_opc_client_retries_header(header_params)
195
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
196
+ return retry_strategy.make_retrying_call(
197
+ self.base_client.call_api,
198
+ resource_path=resource_path,
199
+ method=method,
200
+ header_params=header_params,
201
+ body=bulk_create_occm_demand_signal_item_details,
202
+ allow_control_chars=kwargs.get('allow_control_chars'),
203
+ operation_name=operation_name,
204
+ api_reference_link=api_reference_link,
205
+ required_arguments=required_arguments)
206
+ else:
207
+ return self.base_client.call_api(
208
+ resource_path=resource_path,
209
+ method=method,
210
+ header_params=header_params,
211
+ body=bulk_create_occm_demand_signal_item_details,
212
+ allow_control_chars=kwargs.get('allow_control_chars'),
213
+ operation_name=operation_name,
214
+ api_reference_link=api_reference_link,
215
+ required_arguments=required_arguments)
216
+
217
+ def create_occm_demand_signal(self, create_occm_demand_signal_details, **kwargs):
218
+ """
219
+ This is a post API to create occm demand signal.
220
+
221
+
222
+ :param oci.capacity_management.models.CreateOccmDemandSignalDetails create_occm_demand_signal_details: (required)
223
+ The request details for creating occm demand signal.
224
+
225
+ :param str opc_retry_token: (optional)
226
+ A token that uniquely identifies a request so it can be retried in case of a timeout or
227
+ server error without risk of executing that same action again. Retry tokens expire after 24
228
+ hours, but can be invalidated before then due to conflicting operations. For example, if a resource
229
+ has been deleted and purged from the system, then a retry of the original creation request
230
+ might be rejected.
231
+
232
+ :param str opc_request_id: (optional)
233
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
234
+ underscore, and dash.
235
+
236
+ :param obj retry_strategy: (optional)
237
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
238
+
239
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
240
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
241
+
242
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
243
+
244
+ :param bool allow_control_chars: (optional)
245
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
246
+ By default, the response will not allow control characters in strings
247
+
248
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.capacity_management.models.OccmDemandSignal`
249
+ :rtype: :class:`~oci.response.Response`
250
+
251
+ :example:
252
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/create_occm_demand_signal.py.html>`__ to see an example of how to use create_occm_demand_signal API.
253
+ """
254
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
255
+ required_arguments = []
256
+ resource_path = "/occmDemandSignals"
257
+ method = "POST"
258
+ operation_name = "create_occm_demand_signal"
259
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignal/CreateOccmDemandSignal"
260
+
261
+ # Don't accept unknown kwargs
262
+ expected_kwargs = [
263
+ "allow_control_chars",
264
+ "retry_strategy",
265
+ "opc_retry_token",
266
+ "opc_request_id"
267
+ ]
268
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
269
+ if extra_kwargs:
270
+ raise ValueError(
271
+ f"create_occm_demand_signal got unknown kwargs: {extra_kwargs!r}")
272
+
273
+ header_params = {
274
+ "accept": "application/json",
275
+ "content-type": "application/json",
276
+ "opc-retry-token": kwargs.get("opc_retry_token", missing),
277
+ "opc-request-id": kwargs.get("opc_request_id", missing)
278
+ }
279
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
280
+
281
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
282
+ operation_retry_strategy=kwargs.get('retry_strategy'),
283
+ client_retry_strategy=self.retry_strategy
284
+ )
285
+ if retry_strategy is None:
286
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
287
+
288
+ if retry_strategy:
289
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
290
+ self.base_client.add_opc_retry_token_if_needed(header_params)
291
+ self.base_client.add_opc_client_retries_header(header_params)
292
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
293
+ return retry_strategy.make_retrying_call(
294
+ self.base_client.call_api,
295
+ resource_path=resource_path,
296
+ method=method,
297
+ header_params=header_params,
298
+ body=create_occm_demand_signal_details,
299
+ response_type="OccmDemandSignal",
300
+ allow_control_chars=kwargs.get('allow_control_chars'),
301
+ operation_name=operation_name,
302
+ api_reference_link=api_reference_link,
303
+ required_arguments=required_arguments)
304
+ else:
305
+ return self.base_client.call_api(
306
+ resource_path=resource_path,
307
+ method=method,
308
+ header_params=header_params,
309
+ body=create_occm_demand_signal_details,
310
+ response_type="OccmDemandSignal",
311
+ allow_control_chars=kwargs.get('allow_control_chars'),
312
+ operation_name=operation_name,
313
+ api_reference_link=api_reference_link,
314
+ required_arguments=required_arguments)
315
+
316
+ def create_occm_demand_signal_item(self, create_occm_demand_signal_item_details, **kwargs):
317
+ """
318
+ This API will create a demand signal item representing a resource request. This needs to be grouped under a demand signal.
319
+
320
+
321
+ :param oci.capacity_management.models.CreateOccmDemandSignalItemDetails create_occm_demand_signal_item_details: (required)
322
+ The request details for creating occm demand signal item.
323
+
324
+ :param str opc_retry_token: (optional)
325
+ A token that uniquely identifies a request so it can be retried in case of a timeout or
326
+ server error without risk of executing that same action again. Retry tokens expire after 24
327
+ hours, but can be invalidated before then due to conflicting operations. For example, if a resource
328
+ has been deleted and purged from the system, then a retry of the original creation request
329
+ might be rejected.
330
+
331
+ :param str opc_request_id: (optional)
332
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
333
+ underscore, and dash.
334
+
335
+ :param obj retry_strategy: (optional)
336
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
337
+
338
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
339
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
340
+
341
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
342
+
343
+ :param bool allow_control_chars: (optional)
344
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
345
+ By default, the response will not allow control characters in strings
346
+
347
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.capacity_management.models.OccmDemandSignalItem`
348
+ :rtype: :class:`~oci.response.Response`
349
+
350
+ :example:
351
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/create_occm_demand_signal_item.py.html>`__ to see an example of how to use create_occm_demand_signal_item API.
352
+ """
353
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
354
+ required_arguments = []
355
+ resource_path = "/occmDemandSignalItems"
356
+ method = "POST"
357
+ operation_name = "create_occm_demand_signal_item"
358
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignalItem/CreateOccmDemandSignalItem"
359
+
360
+ # Don't accept unknown kwargs
361
+ expected_kwargs = [
362
+ "allow_control_chars",
363
+ "retry_strategy",
364
+ "opc_retry_token",
365
+ "opc_request_id"
366
+ ]
367
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
368
+ if extra_kwargs:
369
+ raise ValueError(
370
+ f"create_occm_demand_signal_item got unknown kwargs: {extra_kwargs!r}")
371
+
372
+ header_params = {
373
+ "accept": "application/json",
374
+ "content-type": "application/json",
375
+ "opc-retry-token": kwargs.get("opc_retry_token", missing),
376
+ "opc-request-id": kwargs.get("opc_request_id", missing)
377
+ }
378
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
379
+
380
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
381
+ operation_retry_strategy=kwargs.get('retry_strategy'),
382
+ client_retry_strategy=self.retry_strategy
383
+ )
384
+ if retry_strategy is None:
385
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
386
+
387
+ if retry_strategy:
388
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
389
+ self.base_client.add_opc_retry_token_if_needed(header_params)
390
+ self.base_client.add_opc_client_retries_header(header_params)
391
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
392
+ return retry_strategy.make_retrying_call(
393
+ self.base_client.call_api,
394
+ resource_path=resource_path,
395
+ method=method,
396
+ header_params=header_params,
397
+ body=create_occm_demand_signal_item_details,
398
+ response_type="OccmDemandSignalItem",
399
+ allow_control_chars=kwargs.get('allow_control_chars'),
400
+ operation_name=operation_name,
401
+ api_reference_link=api_reference_link,
402
+ required_arguments=required_arguments)
403
+ else:
404
+ return self.base_client.call_api(
405
+ resource_path=resource_path,
406
+ method=method,
407
+ header_params=header_params,
408
+ body=create_occm_demand_signal_item_details,
409
+ response_type="OccmDemandSignalItem",
410
+ allow_control_chars=kwargs.get('allow_control_chars'),
411
+ operation_name=operation_name,
412
+ api_reference_link=api_reference_link,
413
+ required_arguments=required_arguments)
414
+
415
+ def delete_occm_demand_signal(self, occm_demand_signal_id, **kwargs):
416
+ """
417
+ This is a DELETE API which deletes a demand signal with the provided demand signal ocid.
418
+
419
+
420
+ :param str occm_demand_signal_id: (required)
421
+ The OCID of the demand signal.
422
+
423
+ :param str if_match: (optional)
424
+ For optimistic concurrency control. In the PUT or DELETE call
425
+ for a resource, set the `if-match` parameter to the value of the
426
+ etag from a previous GET or POST response for that resource.
427
+ The resource will be updated or deleted only if the etag you
428
+ provide matches the resource's current etag value.
429
+
430
+ :param str opc_request_id: (optional)
431
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
432
+ underscore, and dash.
433
+
434
+ :param obj retry_strategy: (optional)
435
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
436
+
437
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
438
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
439
+
440
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
441
+
442
+ :param bool allow_control_chars: (optional)
443
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
444
+ By default, the response will not allow control characters in strings
445
+
446
+ :return: A :class:`~oci.response.Response` object with data of type None
447
+ :rtype: :class:`~oci.response.Response`
448
+
449
+ :example:
450
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/delete_occm_demand_signal.py.html>`__ to see an example of how to use delete_occm_demand_signal API.
451
+ """
452
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
453
+ required_arguments = ['occmDemandSignalId']
454
+ resource_path = "/occmDemandSignals/{occmDemandSignalId}"
455
+ method = "DELETE"
456
+ operation_name = "delete_occm_demand_signal"
457
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignal/DeleteOccmDemandSignal"
458
+
459
+ # Don't accept unknown kwargs
460
+ expected_kwargs = [
461
+ "allow_control_chars",
462
+ "retry_strategy",
463
+ "if_match",
464
+ "opc_request_id"
465
+ ]
466
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
467
+ if extra_kwargs:
468
+ raise ValueError(
469
+ f"delete_occm_demand_signal got unknown kwargs: {extra_kwargs!r}")
470
+
471
+ path_params = {
472
+ "occmDemandSignalId": occm_demand_signal_id
473
+ }
474
+
475
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
476
+
477
+ for (k, v) in six.iteritems(path_params):
478
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
479
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
480
+
481
+ header_params = {
482
+ "accept": "application/json",
483
+ "content-type": "application/json",
484
+ "if-match": kwargs.get("if_match", missing),
485
+ "opc-request-id": kwargs.get("opc_request_id", missing)
486
+ }
487
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
488
+
489
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
490
+ operation_retry_strategy=kwargs.get('retry_strategy'),
491
+ client_retry_strategy=self.retry_strategy
492
+ )
493
+ if retry_strategy is None:
494
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
495
+
496
+ if retry_strategy:
497
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
498
+ self.base_client.add_opc_client_retries_header(header_params)
499
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
500
+ return retry_strategy.make_retrying_call(
501
+ self.base_client.call_api,
502
+ resource_path=resource_path,
503
+ method=method,
504
+ path_params=path_params,
505
+ header_params=header_params,
506
+ allow_control_chars=kwargs.get('allow_control_chars'),
507
+ operation_name=operation_name,
508
+ api_reference_link=api_reference_link,
509
+ required_arguments=required_arguments)
510
+ else:
511
+ return self.base_client.call_api(
512
+ resource_path=resource_path,
513
+ method=method,
514
+ path_params=path_params,
515
+ header_params=header_params,
516
+ allow_control_chars=kwargs.get('allow_control_chars'),
517
+ operation_name=operation_name,
518
+ api_reference_link=api_reference_link,
519
+ required_arguments=required_arguments)
520
+
521
+ def delete_occm_demand_signal_item(self, occm_demand_signal_item_id, **kwargs):
522
+ """
523
+ This is a DELETE API which deletes a demand signal item with the provided demand signal item ocid.
524
+
525
+
526
+ :param str occm_demand_signal_item_id: (required)
527
+ The OCID of the demand signal item.
528
+
529
+ :param str if_match: (optional)
530
+ For optimistic concurrency control. In the PUT or DELETE call
531
+ for a resource, set the `if-match` parameter to the value of the
532
+ etag from a previous GET or POST response for that resource.
533
+ The resource will be updated or deleted only if the etag you
534
+ provide matches the resource's current etag value.
535
+
536
+ :param str opc_request_id: (optional)
537
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
538
+ underscore, and dash.
539
+
540
+ :param obj retry_strategy: (optional)
541
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
542
+
543
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
544
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
545
+
546
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
547
+
548
+ :param bool allow_control_chars: (optional)
549
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
550
+ By default, the response will not allow control characters in strings
551
+
552
+ :return: A :class:`~oci.response.Response` object with data of type None
553
+ :rtype: :class:`~oci.response.Response`
554
+
555
+ :example:
556
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/delete_occm_demand_signal_item.py.html>`__ to see an example of how to use delete_occm_demand_signal_item API.
557
+ """
558
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
559
+ required_arguments = ['occmDemandSignalItemId']
560
+ resource_path = "/occmDemandSignalItems/{occmDemandSignalItemId}"
561
+ method = "DELETE"
562
+ operation_name = "delete_occm_demand_signal_item"
563
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignalItem/DeleteOccmDemandSignalItem"
564
+
565
+ # Don't accept unknown kwargs
566
+ expected_kwargs = [
567
+ "allow_control_chars",
568
+ "retry_strategy",
569
+ "if_match",
570
+ "opc_request_id"
571
+ ]
572
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
573
+ if extra_kwargs:
574
+ raise ValueError(
575
+ f"delete_occm_demand_signal_item got unknown kwargs: {extra_kwargs!r}")
576
+
577
+ path_params = {
578
+ "occmDemandSignalItemId": occm_demand_signal_item_id
579
+ }
580
+
581
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
582
+
583
+ for (k, v) in six.iteritems(path_params):
584
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
585
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
586
+
587
+ header_params = {
588
+ "accept": "application/json",
589
+ "content-type": "application/json",
590
+ "if-match": kwargs.get("if_match", missing),
591
+ "opc-request-id": kwargs.get("opc_request_id", missing)
592
+ }
593
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
594
+
595
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
596
+ operation_retry_strategy=kwargs.get('retry_strategy'),
597
+ client_retry_strategy=self.retry_strategy
598
+ )
599
+ if retry_strategy is None:
600
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
601
+
602
+ if retry_strategy:
603
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
604
+ self.base_client.add_opc_client_retries_header(header_params)
605
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
606
+ return retry_strategy.make_retrying_call(
607
+ self.base_client.call_api,
608
+ resource_path=resource_path,
609
+ method=method,
610
+ path_params=path_params,
611
+ header_params=header_params,
612
+ allow_control_chars=kwargs.get('allow_control_chars'),
613
+ operation_name=operation_name,
614
+ api_reference_link=api_reference_link,
615
+ required_arguments=required_arguments)
616
+ else:
617
+ return self.base_client.call_api(
618
+ resource_path=resource_path,
619
+ method=method,
620
+ path_params=path_params,
621
+ header_params=header_params,
622
+ allow_control_chars=kwargs.get('allow_control_chars'),
623
+ operation_name=operation_name,
624
+ api_reference_link=api_reference_link,
625
+ required_arguments=required_arguments)
626
+
627
+ def get_occm_demand_signal(self, occm_demand_signal_id, **kwargs):
628
+ """
629
+ This is a GET API which gets the detailed information about a specific demand signal.
630
+
631
+
632
+ :param str occm_demand_signal_id: (required)
633
+ The OCID of the demand signal.
634
+
635
+ :param str opc_request_id: (optional)
636
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
637
+ underscore, and dash.
638
+
639
+ :param obj retry_strategy: (optional)
640
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
641
+
642
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
643
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
644
+
645
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
646
+
647
+ :param bool allow_control_chars: (optional)
648
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
649
+ By default, the response will not allow control characters in strings
650
+
651
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.capacity_management.models.OccmDemandSignal`
652
+ :rtype: :class:`~oci.response.Response`
653
+
654
+ :example:
655
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/get_occm_demand_signal.py.html>`__ to see an example of how to use get_occm_demand_signal API.
656
+ """
657
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
658
+ required_arguments = ['occmDemandSignalId']
659
+ resource_path = "/occmDemandSignals/{occmDemandSignalId}"
660
+ method = "GET"
661
+ operation_name = "get_occm_demand_signal"
662
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignal/GetOccmDemandSignal"
663
+
664
+ # Don't accept unknown kwargs
665
+ expected_kwargs = [
666
+ "allow_control_chars",
667
+ "retry_strategy",
668
+ "opc_request_id"
669
+ ]
670
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
671
+ if extra_kwargs:
672
+ raise ValueError(
673
+ f"get_occm_demand_signal got unknown kwargs: {extra_kwargs!r}")
674
+
675
+ path_params = {
676
+ "occmDemandSignalId": occm_demand_signal_id
677
+ }
678
+
679
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
680
+
681
+ for (k, v) in six.iteritems(path_params):
682
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
683
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
684
+
685
+ header_params = {
686
+ "accept": "application/json",
687
+ "content-type": "application/json",
688
+ "opc-request-id": kwargs.get("opc_request_id", missing)
689
+ }
690
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
691
+
692
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
693
+ operation_retry_strategy=kwargs.get('retry_strategy'),
694
+ client_retry_strategy=self.retry_strategy
695
+ )
696
+ if retry_strategy is None:
697
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
698
+
699
+ if retry_strategy:
700
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
701
+ self.base_client.add_opc_client_retries_header(header_params)
702
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
703
+ return retry_strategy.make_retrying_call(
704
+ self.base_client.call_api,
705
+ resource_path=resource_path,
706
+ method=method,
707
+ path_params=path_params,
708
+ header_params=header_params,
709
+ response_type="OccmDemandSignal",
710
+ allow_control_chars=kwargs.get('allow_control_chars'),
711
+ operation_name=operation_name,
712
+ api_reference_link=api_reference_link,
713
+ required_arguments=required_arguments)
714
+ else:
715
+ return self.base_client.call_api(
716
+ resource_path=resource_path,
717
+ method=method,
718
+ path_params=path_params,
719
+ header_params=header_params,
720
+ response_type="OccmDemandSignal",
721
+ allow_control_chars=kwargs.get('allow_control_chars'),
722
+ operation_name=operation_name,
723
+ api_reference_link=api_reference_link,
724
+ required_arguments=required_arguments)
725
+
726
+ def get_occm_demand_signal_item(self, occm_demand_signal_item_id, **kwargs):
727
+ """
728
+ This is a GET API to get the details of a demand signal item resource representing the details of the resource demanded by you.
729
+
730
+
731
+ :param str occm_demand_signal_item_id: (required)
732
+ The OCID of the demand signal item.
733
+
734
+ :param str opc_request_id: (optional)
735
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
736
+ underscore, and dash.
737
+
738
+ :param obj retry_strategy: (optional)
739
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
740
+
741
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
742
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
743
+
744
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
745
+
746
+ :param bool allow_control_chars: (optional)
747
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
748
+ By default, the response will not allow control characters in strings
749
+
750
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.capacity_management.models.OccmDemandSignalItem`
751
+ :rtype: :class:`~oci.response.Response`
752
+
753
+ :example:
754
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/get_occm_demand_signal_item.py.html>`__ to see an example of how to use get_occm_demand_signal_item API.
755
+ """
756
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
757
+ required_arguments = ['occmDemandSignalItemId']
758
+ resource_path = "/occmDemandSignalItems/{occmDemandSignalItemId}"
759
+ method = "GET"
760
+ operation_name = "get_occm_demand_signal_item"
761
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignalItem/GetOccmDemandSignalItem"
762
+
763
+ # Don't accept unknown kwargs
764
+ expected_kwargs = [
765
+ "allow_control_chars",
766
+ "retry_strategy",
767
+ "opc_request_id"
768
+ ]
769
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
770
+ if extra_kwargs:
771
+ raise ValueError(
772
+ f"get_occm_demand_signal_item got unknown kwargs: {extra_kwargs!r}")
773
+
774
+ path_params = {
775
+ "occmDemandSignalItemId": occm_demand_signal_item_id
776
+ }
777
+
778
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
779
+
780
+ for (k, v) in six.iteritems(path_params):
781
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
782
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
783
+
784
+ header_params = {
785
+ "accept": "application/json",
786
+ "content-type": "application/json",
787
+ "opc-request-id": kwargs.get("opc_request_id", missing)
788
+ }
789
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
790
+
791
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
792
+ operation_retry_strategy=kwargs.get('retry_strategy'),
793
+ client_retry_strategy=self.retry_strategy
794
+ )
795
+ if retry_strategy is None:
796
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
797
+
798
+ if retry_strategy:
799
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
800
+ self.base_client.add_opc_client_retries_header(header_params)
801
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
802
+ return retry_strategy.make_retrying_call(
803
+ self.base_client.call_api,
804
+ resource_path=resource_path,
805
+ method=method,
806
+ path_params=path_params,
807
+ header_params=header_params,
808
+ response_type="OccmDemandSignalItem",
809
+ allow_control_chars=kwargs.get('allow_control_chars'),
810
+ operation_name=operation_name,
811
+ api_reference_link=api_reference_link,
812
+ required_arguments=required_arguments)
813
+ else:
814
+ return self.base_client.call_api(
815
+ resource_path=resource_path,
816
+ method=method,
817
+ path_params=path_params,
818
+ header_params=header_params,
819
+ response_type="OccmDemandSignalItem",
820
+ allow_control_chars=kwargs.get('allow_control_chars'),
821
+ operation_name=operation_name,
822
+ api_reference_link=api_reference_link,
823
+ required_arguments=required_arguments)
824
+
825
+ def list_occm_demand_signal_catalog_resources(self, compartment_id, **kwargs):
826
+ """
827
+ This API will list all the resources across all demand signal catalogs for a given namespace and customer group containing the caller compartment.
828
+
829
+
830
+ :param str compartment_id: (required)
831
+ The ocid of the compartment or tenancy in which resources are to be listed. This will also be used for authorization purposes.
832
+
833
+ :param str name: (optional)
834
+ A query parameter to filter the list of demand signal catalog resource based on the resource name.
835
+
836
+ :param str demand_signal_namespace: (optional)
837
+ A query parameter to filter the list of demand signal catalog resources based on the namespace.
838
+
839
+ Allowed values are: "COMPUTE", "NETWORK", "GPU", "STORAGE"
840
+
841
+ :param int limit: (optional)
842
+ The maximum number of items to return.
843
+
844
+ :param str page: (optional)
845
+ A token representing the position at which to start retrieving results. This must come from `opc-next-page` header field of a previous response.
846
+
847
+ :param str opc_request_id: (optional)
848
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
849
+ underscore, and dash.
850
+
851
+ :param str sort_order: (optional)
852
+ The sort order to use, either 'ASC' or 'DESC'.
853
+
854
+ Allowed values are: "ASC", "DESC"
855
+
856
+ :param str sort_by: (optional)
857
+ The field to sort the response of List Demand catalog resources API. Only one sort order may be provided. The default order for name is case sensitive alphabetical order.
858
+
859
+ Allowed values are: "name"
860
+
861
+ :param obj retry_strategy: (optional)
862
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
863
+
864
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
865
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
866
+
867
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
868
+
869
+ :param bool allow_control_chars: (optional)
870
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
871
+ By default, the response will not allow control characters in strings
872
+
873
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.capacity_management.models.OccmDemandSignalCatalogResourceCollection`
874
+ :rtype: :class:`~oci.response.Response`
875
+
876
+ :example:
877
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/list_occm_demand_signal_catalog_resources.py.html>`__ to see an example of how to use list_occm_demand_signal_catalog_resources API.
878
+ """
879
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
880
+ required_arguments = ['compartmentId']
881
+ resource_path = "/occmDemandSignalCatalogResources"
882
+ method = "GET"
883
+ operation_name = "list_occm_demand_signal_catalog_resources"
884
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignalCatalogResource/ListOccmDemandSignalCatalogResources"
885
+
886
+ # Don't accept unknown kwargs
887
+ expected_kwargs = [
888
+ "allow_control_chars",
889
+ "retry_strategy",
890
+ "name",
891
+ "demand_signal_namespace",
892
+ "limit",
893
+ "page",
894
+ "opc_request_id",
895
+ "sort_order",
896
+ "sort_by"
897
+ ]
898
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
899
+ if extra_kwargs:
900
+ raise ValueError(
901
+ f"list_occm_demand_signal_catalog_resources got unknown kwargs: {extra_kwargs!r}")
902
+
903
+ if 'demand_signal_namespace' in kwargs:
904
+ demand_signal_namespace_allowed_values = ["COMPUTE", "NETWORK", "GPU", "STORAGE"]
905
+ if kwargs['demand_signal_namespace'] not in demand_signal_namespace_allowed_values:
906
+ raise ValueError(
907
+ f"Invalid value for `demand_signal_namespace`, must be one of { demand_signal_namespace_allowed_values }"
908
+ )
909
+
910
+ if 'sort_order' in kwargs:
911
+ sort_order_allowed_values = ["ASC", "DESC"]
912
+ if kwargs['sort_order'] not in sort_order_allowed_values:
913
+ raise ValueError(
914
+ f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }"
915
+ )
916
+
917
+ if 'sort_by' in kwargs:
918
+ sort_by_allowed_values = ["name"]
919
+ if kwargs['sort_by'] not in sort_by_allowed_values:
920
+ raise ValueError(
921
+ f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }"
922
+ )
923
+
924
+ query_params = {
925
+ "compartmentId": compartment_id,
926
+ "name": kwargs.get("name", missing),
927
+ "demandSignalNamespace": kwargs.get("demand_signal_namespace", missing),
928
+ "limit": kwargs.get("limit", missing),
929
+ "page": kwargs.get("page", missing),
930
+ "sortOrder": kwargs.get("sort_order", missing),
931
+ "sortBy": kwargs.get("sort_by", missing)
932
+ }
933
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
934
+
935
+ header_params = {
936
+ "accept": "application/json",
937
+ "content-type": "application/json",
938
+ "opc-request-id": kwargs.get("opc_request_id", missing)
939
+ }
940
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
941
+
942
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
943
+ operation_retry_strategy=kwargs.get('retry_strategy'),
944
+ client_retry_strategy=self.retry_strategy
945
+ )
946
+ if retry_strategy is None:
947
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
948
+
949
+ if retry_strategy:
950
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
951
+ self.base_client.add_opc_client_retries_header(header_params)
952
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
953
+ return retry_strategy.make_retrying_call(
954
+ self.base_client.call_api,
955
+ resource_path=resource_path,
956
+ method=method,
957
+ query_params=query_params,
958
+ header_params=header_params,
959
+ response_type="OccmDemandSignalCatalogResourceCollection",
960
+ allow_control_chars=kwargs.get('allow_control_chars'),
961
+ operation_name=operation_name,
962
+ api_reference_link=api_reference_link,
963
+ required_arguments=required_arguments)
964
+ else:
965
+ return self.base_client.call_api(
966
+ resource_path=resource_path,
967
+ method=method,
968
+ query_params=query_params,
969
+ header_params=header_params,
970
+ response_type="OccmDemandSignalCatalogResourceCollection",
971
+ allow_control_chars=kwargs.get('allow_control_chars'),
972
+ operation_name=operation_name,
973
+ api_reference_link=api_reference_link,
974
+ required_arguments=required_arguments)
975
+
976
+ def list_occm_demand_signal_deliveries(self, compartment_id, **kwargs):
977
+ """
978
+ This GET call is used to list all demand signals delivery resources within the compartment passed as a query param.
979
+
980
+
981
+ :param str compartment_id: (required)
982
+ The ocid of the compartment or tenancy in which resources are to be listed. This will also be used for authorization purposes.
983
+
984
+ :param str id: (optional)
985
+ A query parameter to filter the list of demand signals based on it's OCID.
986
+
987
+ :param str occm_demand_signal_item_id: (optional)
988
+ A query parameter to filter the list of demand signal items based on it's OCID.
989
+
990
+ :param int limit: (optional)
991
+ The maximum number of items to return.
992
+
993
+ :param str page: (optional)
994
+ A token representing the position at which to start retrieving results. This must come from `opc-next-page` header field of a previous response.
995
+
996
+ :param str opc_request_id: (optional)
997
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
998
+ underscore, and dash.
999
+
1000
+ :param str sort_order: (optional)
1001
+ The sort order to use, either 'ASC' or 'DESC'.
1002
+
1003
+ Allowed values are: "ASC", "DESC"
1004
+
1005
+ :param str sort_by: (optional)
1006
+ The field to sort the response of List Demand Signal Delivery API. Only one sort order may be provided. The default order for resource name is case sensitive alphabetical order.
1007
+
1008
+ Allowed values are: "resourceName"
1009
+
1010
+ :param obj retry_strategy: (optional)
1011
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
1012
+
1013
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
1014
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
1015
+
1016
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
1017
+
1018
+ :param bool allow_control_chars: (optional)
1019
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
1020
+ By default, the response will not allow control characters in strings
1021
+
1022
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.capacity_management.models.OccmDemandSignalDeliveryCollection`
1023
+ :rtype: :class:`~oci.response.Response`
1024
+
1025
+ :example:
1026
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/list_occm_demand_signal_deliveries.py.html>`__ to see an example of how to use list_occm_demand_signal_deliveries API.
1027
+ """
1028
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1029
+ required_arguments = ['compartmentId']
1030
+ resource_path = "/occmDemandSignalDeliveries"
1031
+ method = "GET"
1032
+ operation_name = "list_occm_demand_signal_deliveries"
1033
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignalDeliveryCollection/ListOccmDemandSignalDeliveries"
1034
+
1035
+ # Don't accept unknown kwargs
1036
+ expected_kwargs = [
1037
+ "allow_control_chars",
1038
+ "retry_strategy",
1039
+ "id",
1040
+ "occm_demand_signal_item_id",
1041
+ "limit",
1042
+ "page",
1043
+ "opc_request_id",
1044
+ "sort_order",
1045
+ "sort_by"
1046
+ ]
1047
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
1048
+ if extra_kwargs:
1049
+ raise ValueError(
1050
+ f"list_occm_demand_signal_deliveries got unknown kwargs: {extra_kwargs!r}")
1051
+
1052
+ if 'sort_order' in kwargs:
1053
+ sort_order_allowed_values = ["ASC", "DESC"]
1054
+ if kwargs['sort_order'] not in sort_order_allowed_values:
1055
+ raise ValueError(
1056
+ f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }"
1057
+ )
1058
+
1059
+ if 'sort_by' in kwargs:
1060
+ sort_by_allowed_values = ["resourceName"]
1061
+ if kwargs['sort_by'] not in sort_by_allowed_values:
1062
+ raise ValueError(
1063
+ f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }"
1064
+ )
1065
+
1066
+ query_params = {
1067
+ "compartmentId": compartment_id,
1068
+ "id": kwargs.get("id", missing),
1069
+ "occmDemandSignalItemId": kwargs.get("occm_demand_signal_item_id", missing),
1070
+ "limit": kwargs.get("limit", missing),
1071
+ "page": kwargs.get("page", missing),
1072
+ "sortOrder": kwargs.get("sort_order", missing),
1073
+ "sortBy": kwargs.get("sort_by", missing)
1074
+ }
1075
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
1076
+
1077
+ header_params = {
1078
+ "accept": "application/json",
1079
+ "content-type": "application/json",
1080
+ "opc-request-id": kwargs.get("opc_request_id", missing)
1081
+ }
1082
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
1083
+
1084
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
1085
+ operation_retry_strategy=kwargs.get('retry_strategy'),
1086
+ client_retry_strategy=self.retry_strategy
1087
+ )
1088
+ if retry_strategy is None:
1089
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
1090
+
1091
+ if retry_strategy:
1092
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
1093
+ self.base_client.add_opc_client_retries_header(header_params)
1094
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
1095
+ return retry_strategy.make_retrying_call(
1096
+ self.base_client.call_api,
1097
+ resource_path=resource_path,
1098
+ method=method,
1099
+ query_params=query_params,
1100
+ header_params=header_params,
1101
+ response_type="OccmDemandSignalDeliveryCollection",
1102
+ allow_control_chars=kwargs.get('allow_control_chars'),
1103
+ operation_name=operation_name,
1104
+ api_reference_link=api_reference_link,
1105
+ required_arguments=required_arguments)
1106
+ else:
1107
+ return self.base_client.call_api(
1108
+ resource_path=resource_path,
1109
+ method=method,
1110
+ query_params=query_params,
1111
+ header_params=header_params,
1112
+ response_type="OccmDemandSignalDeliveryCollection",
1113
+ allow_control_chars=kwargs.get('allow_control_chars'),
1114
+ operation_name=operation_name,
1115
+ api_reference_link=api_reference_link,
1116
+ required_arguments=required_arguments)
1117
+
1118
+ def list_occm_demand_signal_items(self, compartment_id, **kwargs):
1119
+ """
1120
+ This API will list the detailed information about the resources demanded as part of the demand signal.
1121
+
1122
+
1123
+ :param str compartment_id: (required)
1124
+ The ocid of the compartment or tenancy in which resources are to be listed. This will also be used for authorization purposes.
1125
+
1126
+ :param str occm_demand_signal_id: (optional)
1127
+ A query parameter to filter the list of demand signal items based on a demand signal id.
1128
+
1129
+ :param str resource_name: (optional)
1130
+ A query parameter to filter the list of demand signal details based on the resource name.
1131
+
1132
+ :param str demand_signal_namespace: (optional)
1133
+ A query parameter to filter the list of demand signal details based on the namespace.
1134
+
1135
+ Allowed values are: "COMPUTE", "NETWORK", "GPU", "STORAGE"
1136
+
1137
+ :param int limit: (optional)
1138
+ The maximum number of items to return.
1139
+
1140
+ :param str page: (optional)
1141
+ A token representing the position at which to start retrieving results. This must come from `opc-next-page` header field of a previous response.
1142
+
1143
+ :param str opc_request_id: (optional)
1144
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
1145
+ underscore, and dash.
1146
+
1147
+ :param str sort_order: (optional)
1148
+ The sort order to use, either 'ASC' or 'DESC'.
1149
+
1150
+ Allowed values are: "ASC", "DESC"
1151
+
1152
+ :param str sort_by: (optional)
1153
+ The field to sort the response of List Demand Signal Details API. Only one sort order may be provided. The default order for resource name is case sensitive alphabetical order.
1154
+
1155
+ Allowed values are: "resourceName"
1156
+
1157
+ :param obj retry_strategy: (optional)
1158
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
1159
+
1160
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
1161
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
1162
+
1163
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
1164
+
1165
+ :param bool allow_control_chars: (optional)
1166
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
1167
+ By default, the response will not allow control characters in strings
1168
+
1169
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.capacity_management.models.OccmDemandSignalItemCollection`
1170
+ :rtype: :class:`~oci.response.Response`
1171
+
1172
+ :example:
1173
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/list_occm_demand_signal_items.py.html>`__ to see an example of how to use list_occm_demand_signal_items API.
1174
+ """
1175
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1176
+ required_arguments = ['compartmentId']
1177
+ resource_path = "/occmDemandSignalItems"
1178
+ method = "GET"
1179
+ operation_name = "list_occm_demand_signal_items"
1180
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignalItem/ListOccmDemandSignalItems"
1181
+
1182
+ # Don't accept unknown kwargs
1183
+ expected_kwargs = [
1184
+ "allow_control_chars",
1185
+ "retry_strategy",
1186
+ "occm_demand_signal_id",
1187
+ "resource_name",
1188
+ "demand_signal_namespace",
1189
+ "limit",
1190
+ "page",
1191
+ "opc_request_id",
1192
+ "sort_order",
1193
+ "sort_by"
1194
+ ]
1195
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
1196
+ if extra_kwargs:
1197
+ raise ValueError(
1198
+ f"list_occm_demand_signal_items got unknown kwargs: {extra_kwargs!r}")
1199
+
1200
+ if 'demand_signal_namespace' in kwargs:
1201
+ demand_signal_namespace_allowed_values = ["COMPUTE", "NETWORK", "GPU", "STORAGE"]
1202
+ if kwargs['demand_signal_namespace'] not in demand_signal_namespace_allowed_values:
1203
+ raise ValueError(
1204
+ f"Invalid value for `demand_signal_namespace`, must be one of { demand_signal_namespace_allowed_values }"
1205
+ )
1206
+
1207
+ if 'sort_order' in kwargs:
1208
+ sort_order_allowed_values = ["ASC", "DESC"]
1209
+ if kwargs['sort_order'] not in sort_order_allowed_values:
1210
+ raise ValueError(
1211
+ f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }"
1212
+ )
1213
+
1214
+ if 'sort_by' in kwargs:
1215
+ sort_by_allowed_values = ["resourceName"]
1216
+ if kwargs['sort_by'] not in sort_by_allowed_values:
1217
+ raise ValueError(
1218
+ f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }"
1219
+ )
1220
+
1221
+ query_params = {
1222
+ "compartmentId": compartment_id,
1223
+ "occmDemandSignalId": kwargs.get("occm_demand_signal_id", missing),
1224
+ "resourceName": kwargs.get("resource_name", missing),
1225
+ "demandSignalNamespace": kwargs.get("demand_signal_namespace", missing),
1226
+ "limit": kwargs.get("limit", missing),
1227
+ "page": kwargs.get("page", missing),
1228
+ "sortOrder": kwargs.get("sort_order", missing),
1229
+ "sortBy": kwargs.get("sort_by", missing)
1230
+ }
1231
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
1232
+
1233
+ header_params = {
1234
+ "accept": "application/json",
1235
+ "content-type": "application/json",
1236
+ "opc-request-id": kwargs.get("opc_request_id", missing)
1237
+ }
1238
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
1239
+
1240
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
1241
+ operation_retry_strategy=kwargs.get('retry_strategy'),
1242
+ client_retry_strategy=self.retry_strategy
1243
+ )
1244
+ if retry_strategy is None:
1245
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
1246
+
1247
+ if retry_strategy:
1248
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
1249
+ self.base_client.add_opc_client_retries_header(header_params)
1250
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
1251
+ return retry_strategy.make_retrying_call(
1252
+ self.base_client.call_api,
1253
+ resource_path=resource_path,
1254
+ method=method,
1255
+ query_params=query_params,
1256
+ header_params=header_params,
1257
+ response_type="OccmDemandSignalItemCollection",
1258
+ allow_control_chars=kwargs.get('allow_control_chars'),
1259
+ operation_name=operation_name,
1260
+ api_reference_link=api_reference_link,
1261
+ required_arguments=required_arguments)
1262
+ else:
1263
+ return self.base_client.call_api(
1264
+ resource_path=resource_path,
1265
+ method=method,
1266
+ query_params=query_params,
1267
+ header_params=header_params,
1268
+ response_type="OccmDemandSignalItemCollection",
1269
+ allow_control_chars=kwargs.get('allow_control_chars'),
1270
+ operation_name=operation_name,
1271
+ api_reference_link=api_reference_link,
1272
+ required_arguments=required_arguments)
1273
+
1274
+ def list_occm_demand_signals(self, compartment_id, **kwargs):
1275
+ """
1276
+ This GET call is used to list all demand signals within the compartment passed as a query parameter.
1277
+
1278
+
1279
+ :param str compartment_id: (required)
1280
+ The ocid of the compartment or tenancy in which resources are to be listed. This will also be used for authorization purposes.
1281
+
1282
+ :param str id: (optional)
1283
+ A query parameter to filter the list of demand signals based on it's OCID.
1284
+
1285
+ :param str lifecycle_details: (optional)
1286
+ A query parameter to filter the list of demand signals based on its state.
1287
+
1288
+ :param str display_name: (optional)
1289
+ A filter to return only the resources that match the entire display name. The match is not case sensitive.
1290
+
1291
+ :param int limit: (optional)
1292
+ The maximum number of items to return.
1293
+
1294
+ :param str page: (optional)
1295
+ A token representing the position at which to start retrieving results. This must come from `opc-next-page` header field of a previous response.
1296
+
1297
+ :param str opc_request_id: (optional)
1298
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
1299
+ underscore, and dash.
1300
+
1301
+ :param str sort_order: (optional)
1302
+ The sort order to use, either 'ASC' or 'DESC'.
1303
+
1304
+ Allowed values are: "ASC", "DESC"
1305
+
1306
+ :param str sort_by: (optional)
1307
+ The field to sort the response of List Demand Signal API. Only one sort order may be provided. The default order for timeCreated is reverse chronological order (latest date at the top). The default order for displayName is case sensitive alphabetical order.
1308
+
1309
+ Allowed values are: "timeCreated", "displayName"
1310
+
1311
+ :param obj retry_strategy: (optional)
1312
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
1313
+
1314
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
1315
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
1316
+
1317
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
1318
+
1319
+ :param bool allow_control_chars: (optional)
1320
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
1321
+ By default, the response will not allow control characters in strings
1322
+
1323
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.capacity_management.models.OccmDemandSignalCollection`
1324
+ :rtype: :class:`~oci.response.Response`
1325
+
1326
+ :example:
1327
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/list_occm_demand_signals.py.html>`__ to see an example of how to use list_occm_demand_signals API.
1328
+ """
1329
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1330
+ required_arguments = ['compartmentId']
1331
+ resource_path = "/occmDemandSignals"
1332
+ method = "GET"
1333
+ operation_name = "list_occm_demand_signals"
1334
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignal/ListOccmDemandSignals"
1335
+
1336
+ # Don't accept unknown kwargs
1337
+ expected_kwargs = [
1338
+ "allow_control_chars",
1339
+ "retry_strategy",
1340
+ "id",
1341
+ "lifecycle_details",
1342
+ "display_name",
1343
+ "limit",
1344
+ "page",
1345
+ "opc_request_id",
1346
+ "sort_order",
1347
+ "sort_by"
1348
+ ]
1349
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
1350
+ if extra_kwargs:
1351
+ raise ValueError(
1352
+ f"list_occm_demand_signals got unknown kwargs: {extra_kwargs!r}")
1353
+
1354
+ if 'sort_order' in kwargs:
1355
+ sort_order_allowed_values = ["ASC", "DESC"]
1356
+ if kwargs['sort_order'] not in sort_order_allowed_values:
1357
+ raise ValueError(
1358
+ f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }"
1359
+ )
1360
+
1361
+ if 'sort_by' in kwargs:
1362
+ sort_by_allowed_values = ["timeCreated", "displayName"]
1363
+ if kwargs['sort_by'] not in sort_by_allowed_values:
1364
+ raise ValueError(
1365
+ f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }"
1366
+ )
1367
+
1368
+ query_params = {
1369
+ "compartmentId": compartment_id,
1370
+ "id": kwargs.get("id", missing),
1371
+ "lifecycleDetails": kwargs.get("lifecycle_details", missing),
1372
+ "displayName": kwargs.get("display_name", missing),
1373
+ "limit": kwargs.get("limit", missing),
1374
+ "page": kwargs.get("page", missing),
1375
+ "sortOrder": kwargs.get("sort_order", missing),
1376
+ "sortBy": kwargs.get("sort_by", missing)
1377
+ }
1378
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
1379
+
1380
+ header_params = {
1381
+ "accept": "application/json",
1382
+ "content-type": "application/json",
1383
+ "opc-request-id": kwargs.get("opc_request_id", missing)
1384
+ }
1385
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
1386
+
1387
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
1388
+ operation_retry_strategy=kwargs.get('retry_strategy'),
1389
+ client_retry_strategy=self.retry_strategy
1390
+ )
1391
+ if retry_strategy is None:
1392
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
1393
+
1394
+ if retry_strategy:
1395
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
1396
+ self.base_client.add_opc_client_retries_header(header_params)
1397
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
1398
+ return retry_strategy.make_retrying_call(
1399
+ self.base_client.call_api,
1400
+ resource_path=resource_path,
1401
+ method=method,
1402
+ query_params=query_params,
1403
+ header_params=header_params,
1404
+ response_type="OccmDemandSignalCollection",
1405
+ allow_control_chars=kwargs.get('allow_control_chars'),
1406
+ operation_name=operation_name,
1407
+ api_reference_link=api_reference_link,
1408
+ required_arguments=required_arguments)
1409
+ else:
1410
+ return self.base_client.call_api(
1411
+ resource_path=resource_path,
1412
+ method=method,
1413
+ query_params=query_params,
1414
+ header_params=header_params,
1415
+ response_type="OccmDemandSignalCollection",
1416
+ allow_control_chars=kwargs.get('allow_control_chars'),
1417
+ operation_name=operation_name,
1418
+ api_reference_link=api_reference_link,
1419
+ required_arguments=required_arguments)
1420
+
1421
+ def update_occm_demand_signal(self, update_occm_demand_signal_details, occm_demand_signal_id, **kwargs):
1422
+ """
1423
+ This is a PUT API which shall be used to update the metadata of the demand signal.
1424
+
1425
+
1426
+ :param oci.capacity_management.models.UpdateOccmDemandSignalDetails update_occm_demand_signal_details: (required)
1427
+ The request details for this PUT API to update the metadata for a given demand signal resource.
1428
+
1429
+ :param str occm_demand_signal_id: (required)
1430
+ The OCID of the demand signal.
1431
+
1432
+ :param str if_match: (optional)
1433
+ For optimistic concurrency control. In the PUT or DELETE call
1434
+ for a resource, set the `if-match` parameter to the value of the
1435
+ etag from a previous GET or POST response for that resource.
1436
+ The resource will be updated or deleted only if the etag you
1437
+ provide matches the resource's current etag value.
1438
+
1439
+ :param str opc_request_id: (optional)
1440
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
1441
+ underscore, and dash.
1442
+
1443
+ :param obj retry_strategy: (optional)
1444
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
1445
+
1446
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
1447
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
1448
+
1449
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
1450
+
1451
+ :param bool allow_control_chars: (optional)
1452
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
1453
+ By default, the response will not allow control characters in strings
1454
+
1455
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.capacity_management.models.OccmDemandSignal`
1456
+ :rtype: :class:`~oci.response.Response`
1457
+
1458
+ :example:
1459
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/update_occm_demand_signal.py.html>`__ to see an example of how to use update_occm_demand_signal API.
1460
+ """
1461
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1462
+ required_arguments = ['occmDemandSignalId']
1463
+ resource_path = "/occmDemandSignals/{occmDemandSignalId}"
1464
+ method = "PUT"
1465
+ operation_name = "update_occm_demand_signal"
1466
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignal/UpdateOccmDemandSignal"
1467
+
1468
+ # Don't accept unknown kwargs
1469
+ expected_kwargs = [
1470
+ "allow_control_chars",
1471
+ "retry_strategy",
1472
+ "if_match",
1473
+ "opc_request_id"
1474
+ ]
1475
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
1476
+ if extra_kwargs:
1477
+ raise ValueError(
1478
+ f"update_occm_demand_signal got unknown kwargs: {extra_kwargs!r}")
1479
+
1480
+ path_params = {
1481
+ "occmDemandSignalId": occm_demand_signal_id
1482
+ }
1483
+
1484
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
1485
+
1486
+ for (k, v) in six.iteritems(path_params):
1487
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
1488
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
1489
+
1490
+ header_params = {
1491
+ "accept": "application/json",
1492
+ "content-type": "application/json",
1493
+ "if-match": kwargs.get("if_match", missing),
1494
+ "opc-request-id": kwargs.get("opc_request_id", missing)
1495
+ }
1496
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
1497
+
1498
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
1499
+ operation_retry_strategy=kwargs.get('retry_strategy'),
1500
+ client_retry_strategy=self.retry_strategy
1501
+ )
1502
+ if retry_strategy is None:
1503
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
1504
+
1505
+ if retry_strategy:
1506
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
1507
+ self.base_client.add_opc_client_retries_header(header_params)
1508
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
1509
+ return retry_strategy.make_retrying_call(
1510
+ self.base_client.call_api,
1511
+ resource_path=resource_path,
1512
+ method=method,
1513
+ path_params=path_params,
1514
+ header_params=header_params,
1515
+ body=update_occm_demand_signal_details,
1516
+ response_type="OccmDemandSignal",
1517
+ allow_control_chars=kwargs.get('allow_control_chars'),
1518
+ operation_name=operation_name,
1519
+ api_reference_link=api_reference_link,
1520
+ required_arguments=required_arguments)
1521
+ else:
1522
+ return self.base_client.call_api(
1523
+ resource_path=resource_path,
1524
+ method=method,
1525
+ path_params=path_params,
1526
+ header_params=header_params,
1527
+ body=update_occm_demand_signal_details,
1528
+ response_type="OccmDemandSignal",
1529
+ allow_control_chars=kwargs.get('allow_control_chars'),
1530
+ operation_name=operation_name,
1531
+ api_reference_link=api_reference_link,
1532
+ required_arguments=required_arguments)
1533
+
1534
+ def update_occm_demand_signal_item(self, update_occm_demand_signal_item_details, occm_demand_signal_item_id, **kwargs):
1535
+ """
1536
+ This is a PUT API which can be used to update the demand signal item resource.
1537
+
1538
+
1539
+ :param oci.capacity_management.models.UpdateOccmDemandSignalItemDetails update_occm_demand_signal_item_details: (required)
1540
+ The details about the request to update the specified demand signal item.
1541
+
1542
+ :param str occm_demand_signal_item_id: (required)
1543
+ The OCID of the demand signal item.
1544
+
1545
+ :param str if_match: (optional)
1546
+ For optimistic concurrency control. In the PUT or DELETE call
1547
+ for a resource, set the `if-match` parameter to the value of the
1548
+ etag from a previous GET or POST response for that resource.
1549
+ The resource will be updated or deleted only if the etag you
1550
+ provide matches the resource's current etag value.
1551
+
1552
+ :param str opc_request_id: (optional)
1553
+ The client request ID for tracing. The only valid characters for request IDs are letters, numbers,
1554
+ underscore, and dash.
1555
+
1556
+ :param obj retry_strategy: (optional)
1557
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
1558
+
1559
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
1560
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
1561
+
1562
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
1563
+
1564
+ :param bool allow_control_chars: (optional)
1565
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
1566
+ By default, the response will not allow control characters in strings
1567
+
1568
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.capacity_management.models.OccmDemandSignalItem`
1569
+ :rtype: :class:`~oci.response.Response`
1570
+
1571
+ :example:
1572
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.153.0/capacitymanagement/update_occm_demand_signal_item.py.html>`__ to see an example of how to use update_occm_demand_signal_item API.
1573
+ """
1574
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1575
+ required_arguments = ['occmDemandSignalItemId']
1576
+ resource_path = "/occmDemandSignalItems/{occmDemandSignalItemId}"
1577
+ method = "PUT"
1578
+ operation_name = "update_occm_demand_signal_item"
1579
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/occcm/20231107/OccmDemandSignalItem/UpdateOccmDemandSignalItem"
1580
+
1581
+ # Don't accept unknown kwargs
1582
+ expected_kwargs = [
1583
+ "allow_control_chars",
1584
+ "retry_strategy",
1585
+ "if_match",
1586
+ "opc_request_id"
1587
+ ]
1588
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
1589
+ if extra_kwargs:
1590
+ raise ValueError(
1591
+ f"update_occm_demand_signal_item got unknown kwargs: {extra_kwargs!r}")
1592
+
1593
+ path_params = {
1594
+ "occmDemandSignalItemId": occm_demand_signal_item_id
1595
+ }
1596
+
1597
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
1598
+
1599
+ for (k, v) in six.iteritems(path_params):
1600
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
1601
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
1602
+
1603
+ header_params = {
1604
+ "accept": "application/json",
1605
+ "content-type": "application/json",
1606
+ "if-match": kwargs.get("if_match", missing),
1607
+ "opc-request-id": kwargs.get("opc_request_id", missing)
1608
+ }
1609
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
1610
+
1611
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
1612
+ operation_retry_strategy=kwargs.get('retry_strategy'),
1613
+ client_retry_strategy=self.retry_strategy
1614
+ )
1615
+ if retry_strategy is None:
1616
+ retry_strategy = retry.DEFAULT_RETRY_STRATEGY
1617
+
1618
+ if retry_strategy:
1619
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
1620
+ self.base_client.add_opc_client_retries_header(header_params)
1621
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
1622
+ return retry_strategy.make_retrying_call(
1623
+ self.base_client.call_api,
1624
+ resource_path=resource_path,
1625
+ method=method,
1626
+ path_params=path_params,
1627
+ header_params=header_params,
1628
+ body=update_occm_demand_signal_item_details,
1629
+ response_type="OccmDemandSignalItem",
1630
+ allow_control_chars=kwargs.get('allow_control_chars'),
1631
+ operation_name=operation_name,
1632
+ api_reference_link=api_reference_link,
1633
+ required_arguments=required_arguments)
1634
+ else:
1635
+ return self.base_client.call_api(
1636
+ resource_path=resource_path,
1637
+ method=method,
1638
+ path_params=path_params,
1639
+ header_params=header_params,
1640
+ body=update_occm_demand_signal_item_details,
1641
+ response_type="OccmDemandSignalItem",
1642
+ allow_control_chars=kwargs.get('allow_control_chars'),
1643
+ operation_name=operation_name,
1644
+ api_reference_link=api_reference_link,
1645
+ required_arguments=required_arguments)