oci 2.23.0 → 2.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +9 -1
  3. data/lib/oci/analytics/analytics.rb +5 -0
  4. data/lib/oci/analytics/analytics_client.rb +422 -52
  5. data/lib/oci/analytics/analytics_client_composite_operations.rb +188 -27
  6. data/lib/oci/analytics/models/analytics_instance.rb +32 -15
  7. data/lib/oci/analytics/models/analytics_instance_summary.rb +9 -8
  8. data/lib/oci/analytics/models/capacity.rb +2 -2
  9. data/lib/oci/analytics/models/change_analytics_instance_network_endpoint_details.rb +1 -1
  10. data/lib/oci/analytics/models/create_analytics_instance_details.rb +8 -6
  11. data/lib/oci/analytics/models/create_private_access_channel_details.rb +9 -9
  12. data/lib/oci/analytics/models/create_resource_group_details.rb +190 -0
  13. data/lib/oci/analytics/models/create_vanity_url_details.rb +5 -5
  14. data/lib/oci/analytics/models/feature_bundle.rb +1 -0
  15. data/lib/oci/analytics/models/instance_resource_group.rb +200 -0
  16. data/lib/oci/analytics/models/instance_resource_group_summary.rb +200 -0
  17. data/lib/oci/analytics/models/private_access_channel.rb +13 -13
  18. data/lib/oci/analytics/models/private_endpoint_details.rb +1 -1
  19. data/lib/oci/analytics/models/private_source_dns_zone.rb +3 -3
  20. data/lib/oci/analytics/models/private_source_scan_host.rb +4 -4
  21. data/lib/oci/analytics/models/public_endpoint_details.rb +1 -1
  22. data/lib/oci/analytics/models/resource_group_sort_by.rb +17 -0
  23. data/lib/oci/analytics/models/set_feature_bundle_details.rb +1 -0
  24. data/lib/oci/analytics/models/set_kms_key_details.rb +2 -2
  25. data/lib/oci/analytics/models/update_analytics_instance_details.rb +3 -3
  26. data/lib/oci/analytics/models/update_private_access_channel_details.rb +9 -9
  27. data/lib/oci/analytics/models/update_resource_group_details.rb +190 -0
  28. data/lib/oci/analytics/models/update_vanity_url_details.rb +4 -4
  29. data/lib/oci/analytics/models/vanity_url_details.rb +5 -5
  30. data/lib/oci/analytics/models/work_request.rb +4 -0
  31. data/lib/oci/analytics/models/work_request_action_result.rb +4 -1
  32. data/lib/oci/analytics/models/work_request_error.rb +2 -2
  33. data/lib/oci/analytics/models/work_request_log.rb +1 -1
  34. data/lib/oci/analytics/models/work_request_operation_type.rb +5 -1
  35. data/lib/oci/analytics/models/work_request_resource.rb +4 -1
  36. data/lib/oci/analytics/models/work_request_summary.rb +4 -0
  37. data/lib/oci/apiaccesscontrol/api_metadata_client.rb +8 -6
  38. data/lib/oci/apiaccesscontrol/apiaccesscontrol.rb +1 -0
  39. data/lib/oci/apiaccesscontrol/models/api_metadata.rb +12 -2
  40. data/lib/oci/apiaccesscontrol/models/api_metadata_by_entity_type_summary.rb +15 -1
  41. data/lib/oci/apiaccesscontrol/models/approver_detail.rb +15 -1
  42. data/lib/oci/apiaccesscontrol/models/approver_group_level.rb +169 -0
  43. data/lib/oci/apiaccesscontrol/models/create_privileged_api_control_details.rb +17 -3
  44. data/lib/oci/apiaccesscontrol/models/create_privileged_api_request_details.rb +1 -1
  45. data/lib/oci/apiaccesscontrol/models/privileged_api_control.rb +15 -2
  46. data/lib/oci/apiaccesscontrol/models/privileged_api_control_summary.rb +0 -1
  47. data/lib/oci/apiaccesscontrol/models/update_privileged_api_control_details.rb +16 -2
  48. data/lib/oci/apiaccesscontrol/privileged_api_control_client.rb +4 -3
  49. data/lib/oci/apiaccesscontrol/privileged_api_requests_client.rb +4 -3
  50. data/lib/oci/apiaccesscontrol/privileged_api_work_request_client.rb +4 -3
  51. data/lib/oci/core/core.rb +5 -0
  52. data/lib/oci/core/models/boot_volume_backup.rb +87 -4
  53. data/lib/oci/core/models/create_boot_volume_backup_details.rb +59 -4
  54. data/lib/oci/core/models/create_cross_connect_details.rb +50 -1
  55. data/lib/oci/core/models/create_cross_connect_group_details.rb +71 -4
  56. data/lib/oci/core/models/create_dedicated_vm_host_details.rb +21 -4
  57. data/lib/oci/core/models/create_virtual_circuit_details.rb +63 -4
  58. data/lib/oci/core/models/create_volume_backup_details.rb +59 -4
  59. data/lib/oci/core/models/create_volume_group_backup_details.rb +59 -4
  60. data/lib/oci/core/models/cross_connect.rb +43 -1
  61. data/lib/oci/core/models/cross_connect_group.rb +63 -4
  62. data/lib/oci/core/models/dedicated_vm_host.rb +18 -1
  63. data/lib/oci/core/models/dedicated_vm_host_instance_summary.rb +18 -1
  64. data/lib/oci/core/models/dedicated_vm_host_summary.rb +18 -1
  65. data/lib/oci/core/models/instances.rb +140 -0
  66. data/lib/oci/core/models/letter_of_authority.rb +31 -4
  67. data/lib/oci/core/models/loa_extension_data.rb +170 -0
  68. data/lib/oci/core/models/provider_remote_region_name.rb +174 -0
  69. data/lib/oci/core/models/retention_duration.rb +189 -0
  70. data/lib/oci/core/models/supported_capabilities.rb +21 -4
  71. data/lib/oci/core/models/update_boot_volume_backup_details.rb +59 -4
  72. data/lib/oci/core/models/update_cross_connect_details.rb +32 -4
  73. data/lib/oci/core/models/update_cross_connect_group_details.rb +49 -4
  74. data/lib/oci/core/models/update_cross_connect_letter_of_authority_details.rb +195 -0
  75. data/lib/oci/core/models/update_virtual_circuit_details.rb +30 -1
  76. data/lib/oci/core/models/update_volume_backup_details.rb +59 -4
  77. data/lib/oci/core/models/update_volume_group_backup_details.rb +59 -4
  78. data/lib/oci/core/models/virtual_circuit.rb +80 -1
  79. data/lib/oci/core/models/volume_backup.rb +87 -4
  80. data/lib/oci/core/models/volume_backup_schedule.rb +45 -4
  81. data/lib/oci/core/models/volume_group_backup.rb +73 -4
  82. data/lib/oci/core/virtual_network_client.rb +136 -2
  83. data/lib/oci/database/database.rb +13 -0
  84. data/lib/oci/database/database_client.rb +923 -111
  85. data/lib/oci/database/database_client_composite_operations.rb +283 -0
  86. data/lib/oci/database/models/basecc_vm_cluster.rb +713 -0
  87. data/lib/oci/database/models/basecc_vm_cluster_summary.rb +716 -0
  88. data/lib/oci/database/models/basecc_vm_cluster_update.rb +342 -0
  89. data/lib/oci/database/models/basecc_vm_cluster_update_details.rb +198 -0
  90. data/lib/oci/database/models/basecc_vm_cluster_update_history_entry.rb +318 -0
  91. data/lib/oci/database/models/basecc_vm_cluster_update_history_entry_summary.rb +321 -0
  92. data/lib/oci/database/models/basecc_vm_cluster_update_summary.rb +349 -0
  93. data/lib/oci/database/models/change_basecc_vm_cluster_compartment_details.rb +156 -0
  94. data/lib/oci/database/models/cloud_vm_cluster.rb +28 -1
  95. data/lib/oci/database/models/cloud_vm_cluster_summary.rb +28 -1
  96. data/lib/oci/database/models/create_basecc_vm_cluster_details.rb +506 -0
  97. data/lib/oci/database/models/create_database_software_image_details.rb +2 -1
  98. data/lib/oci/database/models/database_software_image.rb +1 -0
  99. data/lib/oci/database/models/database_software_image_summary.rb +1 -0
  100. data/lib/oci/database/models/exadata_live_image_version_details.rb +216 -0
  101. data/lib/oci/database/models/exadb_vm_cluster.rb +53 -4
  102. data/lib/oci/database/models/exadb_vm_cluster_summary.rb +53 -4
  103. data/lib/oci/database/models/register_exadb_vm_cluster_pkcs_details.rb +171 -0
  104. data/lib/oci/database/models/unregister_exadb_vm_cluster_pkcs_details.rb +171 -0
  105. data/lib/oci/database/models/update.rb +94 -1
  106. data/lib/oci/database/models/update_basecc_vm_cluster_details.rb +345 -0
  107. data/lib/oci/database/models/update_details.rb +33 -1
  108. data/lib/oci/database/models/update_history_entry.rb +39 -1
  109. data/lib/oci/database/models/update_history_entry_summary.rb +39 -1
  110. data/lib/oci/database/models/update_summary.rb +94 -1
  111. data/lib/oci/database/models/vm_cluster.rb +28 -1
  112. data/lib/oci/database/models/vm_cluster_summary.rb +28 -1
  113. data/lib/oci/database/models/vm_cluster_update.rb +94 -1
  114. data/lib/oci/database/models/vm_cluster_update_details.rb +33 -1
  115. data/lib/oci/database/models/vm_cluster_update_history_entry.rb +39 -1
  116. data/lib/oci/database/models/vm_cluster_update_history_entry_summary.rb +39 -1
  117. data/lib/oci/database/models/vm_cluster_update_summary.rb +94 -1
  118. data/lib/oci/file_storage/models/file_system.rb +37 -4
  119. data/lib/oci/file_storage/models/file_system_summary.rb +37 -4
  120. data/lib/oci/file_storage/models/snapshot.rb +19 -4
  121. data/lib/oci/file_storage/models/snapshot_summary.rb +19 -4
  122. data/lib/oci/generative_ai/models/create_dedicated_ai_cluster_details.rb +3 -0
  123. data/lib/oci/generative_ai/models/dedicated_ai_cluster.rb +2 -0
  124. data/lib/oci/golden_gate/golden_gate.rb +29 -0
  125. data/lib/oci/golden_gate/golden_gate_client.rb +185 -6
  126. data/lib/oci/golden_gate/models/ai_model_auth_details.rb +194 -0
  127. data/lib/oci/golden_gate/models/ai_model_auth_details_summary.rb +194 -0
  128. data/lib/oci/golden_gate/models/ai_model_auth_type.rb +13 -0
  129. data/lib/oci/golden_gate/models/ai_model_collection.rb +153 -0
  130. data/lib/oci/golden_gate/models/ai_model_connection.rb +350 -0
  131. data/lib/oci/golden_gate/models/ai_model_connection_summary.rb +333 -0
  132. data/lib/oci/golden_gate/models/ai_model_summary.rb +216 -0
  133. data/lib/oci/golden_gate/models/ai_provider_collection.rb +153 -0
  134. data/lib/oci/golden_gate/models/ai_provider_summary.rb +249 -0
  135. data/lib/oci/golden_gate/models/amazon_kinesis_connection.rb +1 -0
  136. data/lib/oci/golden_gate/models/amazon_kinesis_connection_summary.rb +1 -0
  137. data/lib/oci/golden_gate/models/amazon_s3_connection.rb +1 -1
  138. data/lib/oci/golden_gate/models/amazon_s3_connection_summary.rb +1 -1
  139. data/lib/oci/golden_gate/models/amazon_s3_iceberg_storage.rb +1 -0
  140. data/lib/oci/golden_gate/models/amazon_s3_iceberg_storage_summary.rb +1 -0
  141. data/lib/oci/golden_gate/models/api_key_ai_model_auth_details.rb +199 -0
  142. data/lib/oci/golden_gate/models/api_key_ai_model_auth_details_summary.rb +181 -0
  143. data/lib/oci/golden_gate/models/connection.rb +43 -6
  144. data/lib/oci/golden_gate/models/connection_assignment.rb +63 -1
  145. data/lib/oci/golden_gate/models/connection_assignment_summary.rb +64 -1
  146. data/lib/oci/golden_gate/models/connection_summary.rb +42 -6
  147. data/lib/oci/golden_gate/models/connection_type.rb +2 -1
  148. data/lib/oci/golden_gate/models/create_ai_model_auth_details.rb +187 -0
  149. data/lib/oci/golden_gate/models/create_ai_model_connection_details.rb +298 -0
  150. data/lib/oci/golden_gate/models/create_amazon_kinesis_connection_details.rb +4 -1
  151. data/lib/oci/golden_gate/models/create_amazon_redshift_connection_details.rb +3 -1
  152. data/lib/oci/golden_gate/models/create_amazon_s3_connection_details.rb +5 -3
  153. data/lib/oci/golden_gate/models/create_amazon_s3_iceberg_storage_details.rb +5 -2
  154. data/lib/oci/golden_gate/models/create_api_key_ai_model_auth_details.rb +199 -0
  155. data/lib/oci/golden_gate/models/create_azure_data_lake_storage_connection_details.rb +9 -3
  156. data/lib/oci/golden_gate/models/create_azure_data_lake_storage_iceberg_storage_details.rb +3 -1
  157. data/lib/oci/golden_gate/models/create_azure_synapse_connection_details.rb +3 -1
  158. data/lib/oci/golden_gate/models/create_connection_details.rb +43 -7
  159. data/lib/oci/golden_gate/models/create_database_registration_details.rb +6 -2
  160. data/lib/oci/golden_gate/models/create_databricks_connection_details.rb +6 -2
  161. data/lib/oci/golden_gate/models/create_db2_connection_details.rb +9 -3
  162. data/lib/oci/golden_gate/models/create_elasticsearch_connection_details.rb +3 -1
  163. data/lib/oci/golden_gate/models/create_golden_gate_connection_details.rb +3 -1
  164. data/lib/oci/golden_gate/models/create_google_big_query_connection_details.rb +3 -1
  165. data/lib/oci/golden_gate/models/create_google_cloud_storage_connection_details.rb +3 -1
  166. data/lib/oci/golden_gate/models/create_google_cloud_storage_iceberg_storage_details.rb +3 -1
  167. data/lib/oci/golden_gate/models/create_google_pub_sub_connection_details.rb +3 -1
  168. data/lib/oci/golden_gate/models/create_iceberg_connection_details.rb +1 -0
  169. data/lib/oci/golden_gate/models/create_iceberg_storage_details.rb +5 -1
  170. data/lib/oci/golden_gate/models/create_java_message_service_connection_details.rb +21 -7
  171. data/lib/oci/golden_gate/models/create_kafka_connection_details.rb +18 -6
  172. data/lib/oci/golden_gate/models/create_kafka_schema_registry_connection_details.rb +18 -6
  173. data/lib/oci/golden_gate/models/create_microsoft_fabric_connection_details.rb +3 -1
  174. data/lib/oci/golden_gate/models/create_microsoft_sqlserver_connection_details.rb +3 -1
  175. data/lib/oci/golden_gate/models/create_mongo_db_connection_details.rb +9 -3
  176. data/lib/oci/golden_gate/models/create_mysql_connection_details.rb +6 -2
  177. data/lib/oci/golden_gate/models/create_no_iceberg_storage_details.rb +148 -0
  178. data/lib/oci/golden_gate/models/create_oci_gen_ai_model_auth_details.rb +242 -0
  179. data/lib/oci/golden_gate/models/create_oci_object_storage_connection_details.rb +6 -2
  180. data/lib/oci/golden_gate/models/create_oci_object_storage_s3_api_iceberg_storage_details.rb +228 -0
  181. data/lib/oci/golden_gate/models/create_oracle_ai_data_platform_connection_details.rb +6 -2
  182. data/lib/oci/golden_gate/models/create_oracle_connection_details.rb +7 -3
  183. data/lib/oci/golden_gate/models/create_oracle_nosql_connection_details.rb +6 -2
  184. data/lib/oci/golden_gate/models/create_postgresql_connection_details.rb +6 -2
  185. data/lib/oci/golden_gate/models/create_redis_connection_details.rb +15 -5
  186. data/lib/oci/golden_gate/models/create_snowflake_connection_details.rb +9 -3
  187. data/lib/oci/golden_gate/models/deployment_type_summary.rb +1 -0
  188. data/lib/oci/golden_gate/models/iceberg_connection.rb +1 -0
  189. data/lib/oci/golden_gate/models/iceberg_connection_summary.rb +1 -0
  190. data/lib/oci/golden_gate/models/iceberg_storage.rb +4 -0
  191. data/lib/oci/golden_gate/models/iceberg_storage_summary.rb +4 -0
  192. data/lib/oci/golden_gate/models/iceberg_storage_type.rb +3 -1
  193. data/lib/oci/golden_gate/models/kafka_connection.rb +1 -0
  194. data/lib/oci/golden_gate/models/no_iceberg_storage.rb +148 -0
  195. data/lib/oci/golden_gate/models/no_iceberg_storage_summary.rb +148 -0
  196. data/lib/oci/golden_gate/models/oci_gen_ai_model_auth_details.rb +242 -0
  197. data/lib/oci/golden_gate/models/oci_gen_ai_model_auth_details_summary.rb +224 -0
  198. data/lib/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage.rb +209 -0
  199. data/lib/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage_summary.rb +209 -0
  200. data/lib/oci/golden_gate/models/oracle_connection.rb +4 -1
  201. data/lib/oci/golden_gate/models/oracle_connection_summary.rb +1 -1
  202. data/lib/oci/golden_gate/models/technology_type.rb +6 -1
  203. data/lib/oci/golden_gate/models/update_ai_model_auth_details.rb +187 -0
  204. data/lib/oci/golden_gate/models/update_ai_model_connection_details.rb +237 -0
  205. data/lib/oci/golden_gate/models/update_amazon_kinesis_connection_details.rb +4 -1
  206. data/lib/oci/golden_gate/models/update_amazon_redshift_connection_details.rb +3 -1
  207. data/lib/oci/golden_gate/models/update_amazon_s3_connection_details.rb +5 -3
  208. data/lib/oci/golden_gate/models/update_amazon_s3_iceberg_storage_details.rb +5 -2
  209. data/lib/oci/golden_gate/models/update_api_key_ai_model_auth_details.rb +199 -0
  210. data/lib/oci/golden_gate/models/update_azure_data_lake_storage_connection_details.rb +9 -3
  211. data/lib/oci/golden_gate/models/update_azure_data_lake_storage_iceberg_storage_details.rb +3 -1
  212. data/lib/oci/golden_gate/models/update_azure_synapse_connection_details.rb +3 -1
  213. data/lib/oci/golden_gate/models/update_connection_details.rb +43 -7
  214. data/lib/oci/golden_gate/models/update_database_registration_details.rb +6 -2
  215. data/lib/oci/golden_gate/models/update_databricks_connection_details.rb +6 -2
  216. data/lib/oci/golden_gate/models/update_db2_connection_details.rb +9 -3
  217. data/lib/oci/golden_gate/models/update_elasticsearch_connection_details.rb +3 -1
  218. data/lib/oci/golden_gate/models/update_golden_gate_connection_details.rb +3 -1
  219. data/lib/oci/golden_gate/models/update_google_big_query_connection_details.rb +3 -1
  220. data/lib/oci/golden_gate/models/update_google_cloud_storage_connection_details.rb +3 -1
  221. data/lib/oci/golden_gate/models/update_google_cloud_storage_iceberg_storage_details.rb +3 -1
  222. data/lib/oci/golden_gate/models/update_google_pub_sub_connection_details.rb +3 -1
  223. data/lib/oci/golden_gate/models/update_iceberg_storage_details.rb +5 -1
  224. data/lib/oci/golden_gate/models/update_java_message_service_connection_details.rb +21 -7
  225. data/lib/oci/golden_gate/models/update_kafka_connection_details.rb +18 -6
  226. data/lib/oci/golden_gate/models/update_kafka_schema_registry_connection_details.rb +18 -6
  227. data/lib/oci/golden_gate/models/update_microsoft_fabric_connection_details.rb +3 -1
  228. data/lib/oci/golden_gate/models/update_microsoft_sqlserver_connection_details.rb +3 -1
  229. data/lib/oci/golden_gate/models/update_mongo_db_connection_details.rb +9 -3
  230. data/lib/oci/golden_gate/models/update_mysql_connection_details.rb +6 -2
  231. data/lib/oci/golden_gate/models/update_no_iceberg_storage_details.rb +148 -0
  232. data/lib/oci/golden_gate/models/update_oci_gen_ai_model_auth_details.rb +242 -0
  233. data/lib/oci/golden_gate/models/update_oci_object_storage_connection_details.rb +6 -2
  234. data/lib/oci/golden_gate/models/update_oci_object_storage_s3_api_iceberg_storage_details.rb +228 -0
  235. data/lib/oci/golden_gate/models/update_oracle_ai_data_platform_connection_details.rb +6 -2
  236. data/lib/oci/golden_gate/models/update_oracle_connection_details.rb +7 -3
  237. data/lib/oci/golden_gate/models/update_oracle_nosql_connection_details.rb +6 -2
  238. data/lib/oci/golden_gate/models/update_postgresql_connection_details.rb +6 -2
  239. data/lib/oci/golden_gate/models/update_redis_connection_details.rb +15 -5
  240. data/lib/oci/golden_gate/models/update_snowflake_connection_details.rb +9 -3
  241. data/lib/oci/regions.rb +8 -1
  242. data/lib/oci/version.rb +1 -1
  243. metadata +55 -2
@@ -0,0 +1,228 @@
1
+ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved.
2
+ # 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.
3
+
4
+ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407
5
+ require 'date'
6
+ require_relative 'create_iceberg_storage_details'
7
+
8
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
9
+ module OCI
10
+ # The information to create the OCI Object Storage (S3 Compatibility API) configuration used by the
11
+ # Iceberg connection.
12
+ #
13
+ class GoldenGate::Models::CreateOciObjectStorageS3ApiIcebergStorageDetails < GoldenGate::Models::CreateIcebergStorageDetails
14
+ # **[Required]** OCI Object Storage S3 Compatibility API endpoint URL.
15
+ # Format: \"https://<namespace>.compat.objectstorage.<region>.<domain>\"
16
+ # Example: \"https://mynamespace.compat.objectstorage.us-ashburn-1.oraclecloud.com\"
17
+ #
18
+ # @return [String]
19
+ attr_accessor :endpoint
20
+
21
+ # **[Required]** Access Key ID from the OCI IAM user's Customer Secret Key pair used to authenticate to
22
+ # OCI Object Storage via the S3 Compatibility API.
23
+ #
24
+ # Note: Despite the \"Id\" suffix, this value is not an OCI OCID.
25
+ #
26
+ # @return [String]
27
+ attr_accessor :access_key_id
28
+
29
+ # The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the Secret where the Secret Access Key used for OCI Object Storage S3 Compatibility authentication.
30
+ #
31
+ # @return [String]
32
+ attr_accessor :secret_access_key_secret_id
33
+
34
+ # Secret Access Key from the OCI IAM user's Customer Secret Key pair used to authenticate to
35
+ # OCI Object Storage via the S3 Compatibility API.
36
+ # Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\".
37
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
38
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
39
+ #
40
+ # @return [String]
41
+ attr_accessor :secret_access_key
42
+
43
+ # **[Required]** Target OCI Object Storage bucket name where Iceberg stores
44
+ # table metadata and data files.
45
+ #
46
+ # @return [String]
47
+ attr_accessor :bucket
48
+
49
+ # Attribute mapping from ruby-style variable name to JSON key.
50
+ def self.attribute_map
51
+ {
52
+ # rubocop:disable Style/SymbolLiteral
53
+ 'storage_type': :'storageType',
54
+ 'endpoint': :'endpoint',
55
+ 'access_key_id': :'accessKeyId',
56
+ 'secret_access_key_secret_id': :'secretAccessKeySecretId',
57
+ 'secret_access_key': :'secretAccessKey',
58
+ 'bucket': :'bucket'
59
+ # rubocop:enable Style/SymbolLiteral
60
+ }
61
+ end
62
+
63
+ # Attribute type mapping.
64
+ def self.swagger_types
65
+ {
66
+ # rubocop:disable Style/SymbolLiteral
67
+ 'storage_type': :'String',
68
+ 'endpoint': :'String',
69
+ 'access_key_id': :'String',
70
+ 'secret_access_key_secret_id': :'String',
71
+ 'secret_access_key': :'String',
72
+ 'bucket': :'String'
73
+ # rubocop:enable Style/SymbolLiteral
74
+ }
75
+ end
76
+
77
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
78
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
79
+
80
+
81
+ # Initializes the object
82
+ # @param [Hash] attributes Model attributes in the form of hash
83
+ # @option attributes [String] :endpoint The value to assign to the {#endpoint} property
84
+ # @option attributes [String] :access_key_id The value to assign to the {#access_key_id} property
85
+ # @option attributes [String] :secret_access_key_secret_id The value to assign to the {#secret_access_key_secret_id} property
86
+ # @option attributes [String] :secret_access_key The value to assign to the {#secret_access_key} property
87
+ # @option attributes [String] :bucket The value to assign to the {#bucket} property
88
+ def initialize(attributes = {})
89
+ return unless attributes.is_a?(Hash)
90
+
91
+ attributes['storageType'] = 'OCI_OBJECT_STORAGE_S3_API'
92
+
93
+ super(attributes)
94
+
95
+ # convert string to symbol for hash key
96
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
97
+
98
+ self.endpoint = attributes[:'endpoint'] if attributes[:'endpoint']
99
+
100
+ self.access_key_id = attributes[:'accessKeyId'] if attributes[:'accessKeyId']
101
+
102
+ raise 'You cannot provide both :accessKeyId and :access_key_id' if attributes.key?(:'accessKeyId') && attributes.key?(:'access_key_id')
103
+
104
+ self.access_key_id = attributes[:'access_key_id'] if attributes[:'access_key_id']
105
+
106
+ self.secret_access_key_secret_id = attributes[:'secretAccessKeySecretId'] if attributes[:'secretAccessKeySecretId']
107
+
108
+ raise 'You cannot provide both :secretAccessKeySecretId and :secret_access_key_secret_id' if attributes.key?(:'secretAccessKeySecretId') && attributes.key?(:'secret_access_key_secret_id')
109
+
110
+ self.secret_access_key_secret_id = attributes[:'secret_access_key_secret_id'] if attributes[:'secret_access_key_secret_id']
111
+
112
+ self.secret_access_key = attributes[:'secretAccessKey'] if attributes[:'secretAccessKey']
113
+
114
+ raise 'You cannot provide both :secretAccessKey and :secret_access_key' if attributes.key?(:'secretAccessKey') && attributes.key?(:'secret_access_key')
115
+
116
+ self.secret_access_key = attributes[:'secret_access_key'] if attributes[:'secret_access_key']
117
+
118
+ self.bucket = attributes[:'bucket'] if attributes[:'bucket']
119
+ end
120
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
121
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
122
+
123
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
124
+
125
+
126
+ # Checks equality by comparing each attribute.
127
+ # @param [Object] other the other object to be compared
128
+ def ==(other)
129
+ return true if equal?(other)
130
+
131
+ self.class == other.class &&
132
+ storage_type == other.storage_type &&
133
+ endpoint == other.endpoint &&
134
+ access_key_id == other.access_key_id &&
135
+ secret_access_key_secret_id == other.secret_access_key_secret_id &&
136
+ secret_access_key == other.secret_access_key &&
137
+ bucket == other.bucket
138
+ end
139
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
140
+
141
+ # @see the `==` method
142
+ # @param [Object] other the other object to be compared
143
+ def eql?(other)
144
+ self == other
145
+ end
146
+
147
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
148
+
149
+
150
+ # Calculates hash code according to all attributes.
151
+ # @return [Fixnum] Hash code
152
+ def hash
153
+ [storage_type, endpoint, access_key_id, secret_access_key_secret_id, secret_access_key, bucket].hash
154
+ end
155
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
156
+
157
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
158
+
159
+
160
+ # Builds the object from hash
161
+ # @param [Hash] attributes Model attributes in the form of hash
162
+ # @return [Object] Returns the model itself
163
+ def build_from_hash(attributes)
164
+ return nil unless attributes.is_a?(Hash)
165
+
166
+ self.class.swagger_types.each_pair do |key, type|
167
+ if type =~ /^Array<(.*)>/i
168
+ # check to ensure the input is an array given that the the attribute
169
+ # is documented as an array but the input is not
170
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
171
+ public_method("#{key}=").call(
172
+ attributes[self.class.attribute_map[key]]
173
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
174
+ )
175
+ end
176
+ elsif !attributes[self.class.attribute_map[key]].nil?
177
+ public_method("#{key}=").call(
178
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
179
+ )
180
+ end
181
+ # or else data not found in attributes(hash), not an issue as the data can be optional
182
+ end
183
+
184
+ self
185
+ end
186
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
187
+
188
+ # Returns the string representation of the object
189
+ # @return [String] String presentation of the object
190
+ def to_s
191
+ to_hash.to_s
192
+ end
193
+
194
+ # Returns the object in the form of hash
195
+ # @return [Hash] Returns the object in the form of hash
196
+ def to_hash
197
+ hash = {}
198
+ self.class.attribute_map.each_pair do |attr, param|
199
+ value = public_method(attr).call
200
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
201
+
202
+ hash[param] = _to_hash(value)
203
+ end
204
+ hash
205
+ end
206
+
207
+ private
208
+
209
+ # Outputs non-array value in the form of hash
210
+ # For object, use to_hash. Otherwise, just return the value
211
+ # @param [Object] value Any valid value
212
+ # @return [Hash] Returns the value in the form of hash
213
+ def _to_hash(value)
214
+ if value.is_a?(Array)
215
+ value.compact.map { |v| _to_hash(v) }
216
+ elsif value.is_a?(Hash)
217
+ {}.tap do |hash|
218
+ value.each { |k, v| hash[k] = _to_hash(v) }
219
+ end
220
+ elsif value.respond_to? :to_hash
221
+ value.to_hash
222
+ else
223
+ value
224
+ end
225
+ end
226
+ end
227
+ end
228
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -53,13 +53,17 @@ module OCI
53
53
 
54
54
  # The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint.
55
55
  # See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm
56
- # Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026.
56
+ # Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\".
57
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
58
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
57
59
  #
58
60
  # @return [String]
59
61
  attr_accessor :private_key_file
60
62
 
61
63
  # The passphrase of the private key.
62
- # Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026.
64
+ # Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\".
65
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
66
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
63
67
  #
64
68
  # @return [String]
65
69
  attr_accessor :private_key_passphrase
@@ -23,7 +23,9 @@ module OCI
23
23
 
24
24
  # The password Oracle GoldenGate uses to connect the associated system of the given technology.
25
25
  # It must conform to the specific security requirements including length, case sensitivity, and so on.
26
- # Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026.
26
+ # Deprecated: This field is deprecated and replaced by \"passwordSecretId\".
27
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
28
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
27
29
  #
28
30
  # @return [String]
29
31
  attr_accessor :password
@@ -50,7 +52,9 @@ module OCI
50
52
 
51
53
  # The wallet contents Oracle GoldenGate uses to make connections to a database.
52
54
  # This attribute is expected to be base64 encoded.
53
- # Deprecated: This field is deprecated and replaced by \"walletSecretId\". This field will be removed after February 15 2026.
55
+ # Deprecated: This field is deprecated and replaced by \"walletSecretId\".
56
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
57
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
54
58
  #
55
59
  # @return [String]
56
60
  attr_accessor :wallet
@@ -71,7 +75,7 @@ module OCI
71
75
  # The default is DIRECT, except when databaseId is provided and the discovered database relies on the SCAN listener.
72
76
  # In this case, the default is REDIRECT.
73
77
  #
74
- # Deprecated: Defaulting to the REDIRECT session mode will be removed after March 1, 2027.
78
+ # Deprecated: Defaulting to the REDIRECT session mode will be removed after April 21, 2027.
75
79
  #
76
80
  # @return [String]
77
81
  attr_accessor :session_mode
@@ -34,7 +34,9 @@ module OCI
34
34
 
35
35
  # The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint.
36
36
  # See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm
37
- # Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026.
37
+ # Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\".
38
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
39
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
38
40
  #
39
41
  # @return [String]
40
42
  attr_accessor :private_key_file
@@ -47,7 +49,9 @@ module OCI
47
49
  attr_accessor :private_key_file_secret_id
48
50
 
49
51
  # The passphrase of the private key.
50
- # Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026.
52
+ # Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\".
53
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
54
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
51
55
  #
52
56
  # @return [String]
53
57
  attr_accessor :private_key_passphrase
@@ -38,7 +38,9 @@ module OCI
38
38
 
39
39
  # The password Oracle GoldenGate uses to connect the associated system of the given technology.
40
40
  # It must conform to the specific security requirements including length, case sensitivity, and so on.
41
- # Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026.
41
+ # Deprecated: This field is deprecated and replaced by \"passwordSecretId\".
42
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
43
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
42
44
  #
43
45
  # @return [String]
44
46
  attr_accessor :password
@@ -86,7 +88,9 @@ module OCI
86
88
  attr_accessor :ssl_cert
87
89
 
88
90
  # The base64 encoded private key of the PostgreSQL server. The supported file formats are .pem and .crt.
89
- # Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". This field will be removed after February 15 2026.
91
+ # Deprecated: This field is deprecated and replaced by \"sslKeySecretId\".
92
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
93
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
90
94
  #
91
95
  # @return [String]
92
96
  attr_accessor :ssl_key
@@ -39,7 +39,9 @@ module OCI
39
39
 
40
40
  # The password Oracle GoldenGate uses to connect the associated system of the given technology.
41
41
  # It must conform to the specific security requirements including length, case sensitivity, and so on.
42
- # Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026.
42
+ # Deprecated: This field is deprecated and replaced by \"passwordSecretId\".
43
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
44
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
43
45
  #
44
46
  # @return [String]
45
47
  attr_accessor :password
@@ -54,7 +56,9 @@ module OCI
54
56
  attr_accessor :password_secret_id
55
57
 
56
58
  # The base64 encoded content of the TrustStore file.
57
- # Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026.
59
+ # Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\".
60
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
61
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
58
62
  #
59
63
  # @return [String]
60
64
  attr_accessor :trust_store
@@ -66,7 +70,9 @@ module OCI
66
70
  attr_accessor :trust_store_secret_id
67
71
 
68
72
  # The TrustStore password.
69
- # Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026.
73
+ # Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\".
74
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
75
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
70
76
  #
71
77
  # @return [String]
72
78
  attr_accessor :trust_store_password
@@ -78,7 +84,9 @@ module OCI
78
84
  attr_accessor :trust_store_password_secret_id
79
85
 
80
86
  # The base64 encoded content of the KeyStore file.
81
- # Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026.
87
+ # Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\".
88
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
89
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
82
90
  #
83
91
  # @return [String]
84
92
  attr_accessor :key_store
@@ -90,7 +98,9 @@ module OCI
90
98
  attr_accessor :key_store_secret_id
91
99
 
92
100
  # The KeyStore password.
93
- # Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026.
101
+ # Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\".
102
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
103
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
94
104
  #
95
105
  # @return [String]
96
106
  attr_accessor :key_store_password
@@ -32,7 +32,9 @@ module OCI
32
32
  attr_accessor :username
33
33
 
34
34
  # The password Oracle GoldenGate uses to connect to Snowflake platform.
35
- # Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026.
35
+ # Deprecated: This field is deprecated and replaced by \"passwordSecretId\".
36
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
37
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
36
38
  #
37
39
  # @return [String]
38
40
  attr_accessor :password
@@ -47,7 +49,9 @@ module OCI
47
49
  attr_accessor :password_secret_id
48
50
 
49
51
  # The base64 encoded content of private key file in PEM format.
50
- # Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026.
52
+ # Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\".
53
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
54
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
51
55
  #
52
56
  # @return [String]
53
57
  attr_accessor :private_key_file
@@ -60,7 +64,9 @@ module OCI
60
64
  attr_accessor :private_key_file_secret_id
61
65
 
62
66
  # Password if the private key file is encrypted.
63
- # Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026.
67
+ # Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\".
68
+ # This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation:
69
+ # https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate
64
70
  #
65
71
  # @return [String]
66
72
  attr_accessor :private_key_passphrase
@@ -67,6 +67,7 @@ module OCI
67
67
  CONNECTION_TYPES_GOOGLE_PUBSUB = 'GOOGLE_PUBSUB'.freeze,
68
68
  CONNECTION_TYPES_MICROSOFT_FABRIC = 'MICROSOFT_FABRIC'.freeze,
69
69
  CONNECTION_TYPES_ICEBERG = 'ICEBERG'.freeze,
70
+ CONNECTION_TYPES_AI_MODEL = 'AI_MODEL'.freeze,
70
71
  CONNECTION_TYPES_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
71
72
  ].freeze
72
73
 
@@ -17,6 +17,7 @@ module OCI
17
17
  ].freeze
18
18
 
19
19
  # **[Required]** The Iceberg technology type.
20
+ #
20
21
  # @return [String]
21
22
  attr_reader :technology_type
22
23
 
@@ -11,6 +11,7 @@ module OCI
11
11
  #
12
12
  class GoldenGate::Models::IcebergConnectionSummary < GoldenGate::Models::ConnectionSummary
13
13
  # **[Required]** The Iceberg technology type.
14
+ #
14
15
  # @return [String]
15
16
  attr_accessor :technology_type
16
17
 
@@ -15,6 +15,8 @@ module OCI
15
15
  STORAGE_TYPE_AMAZON_S3 = 'AMAZON_S3'.freeze,
16
16
  STORAGE_TYPE_GOOGLE_CLOUD_STORAGE = 'GOOGLE_CLOUD_STORAGE'.freeze,
17
17
  STORAGE_TYPE_AZURE_DATA_LAKE_STORAGE = 'AZURE_DATA_LAKE_STORAGE'.freeze,
18
+ STORAGE_TYPE_NONE = 'NONE'.freeze,
19
+ STORAGE_TYPE_OCI_OBJECT_STORAGE_S3_API = 'OCI_OBJECT_STORAGE_S3_API'.freeze,
18
20
  STORAGE_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
19
21
  ].freeze
20
22
 
@@ -49,8 +51,10 @@ module OCI
49
51
  def self.get_subtype(object_hash)
50
52
  type = object_hash[:'storageType'] # rubocop:disable Style/SymbolLiteral
51
53
 
54
+ return 'OCI::GoldenGate::Models::OciObjectStorageS3ApiIcebergStorage' if type == 'OCI_OBJECT_STORAGE_S3_API'
52
55
  return 'OCI::GoldenGate::Models::AmazonS3IcebergStorage' if type == 'AMAZON_S3'
53
56
  return 'OCI::GoldenGate::Models::AzureDataLakeStorageIcebergStorage' if type == 'AZURE_DATA_LAKE_STORAGE'
57
+ return 'OCI::GoldenGate::Models::NoIcebergStorage' if type == 'NONE'
54
58
  return 'OCI::GoldenGate::Models::GoogleCloudStorageIcebergStorage' if type == 'GOOGLE_CLOUD_STORAGE'
55
59
 
56
60
  # TODO: Log a warning when the subtype is not found.
@@ -15,6 +15,8 @@ module OCI
15
15
  STORAGE_TYPE_AMAZON_S3 = 'AMAZON_S3'.freeze,
16
16
  STORAGE_TYPE_GOOGLE_CLOUD_STORAGE = 'GOOGLE_CLOUD_STORAGE'.freeze,
17
17
  STORAGE_TYPE_AZURE_DATA_LAKE_STORAGE = 'AZURE_DATA_LAKE_STORAGE'.freeze,
18
+ STORAGE_TYPE_NONE = 'NONE'.freeze,
19
+ STORAGE_TYPE_OCI_OBJECT_STORAGE_S3_API = 'OCI_OBJECT_STORAGE_S3_API'.freeze,
18
20
  STORAGE_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
19
21
  ].freeze
20
22
 
@@ -50,7 +52,9 @@ module OCI
50
52
  type = object_hash[:'storageType'] # rubocop:disable Style/SymbolLiteral
51
53
 
52
54
  return 'OCI::GoldenGate::Models::GoogleCloudStorageIcebergStorageSummary' if type == 'GOOGLE_CLOUD_STORAGE'
55
+ return 'OCI::GoldenGate::Models::OciObjectStorageS3ApiIcebergStorageSummary' if type == 'OCI_OBJECT_STORAGE_S3_API'
53
56
  return 'OCI::GoldenGate::Models::AzureDataLakeStorageIcebergStorageSummary' if type == 'AZURE_DATA_LAKE_STORAGE'
57
+ return 'OCI::GoldenGate::Models::NoIcebergStorageSummary' if type == 'NONE'
54
58
  return 'OCI::GoldenGate::Models::AmazonS3IcebergStorageSummary' if type == 'AMAZON_S3'
55
59
 
56
60
  # TODO: Log a warning when the subtype is not found.
@@ -8,7 +8,9 @@ module OCI
8
8
  ICEBERG_STORAGE_TYPE_ENUM = [
9
9
  ICEBERG_STORAGE_TYPE_AMAZON_S3 = 'AMAZON_S3'.freeze,
10
10
  ICEBERG_STORAGE_TYPE_GOOGLE_CLOUD_STORAGE = 'GOOGLE_CLOUD_STORAGE'.freeze,
11
- ICEBERG_STORAGE_TYPE_AZURE_DATA_LAKE_STORAGE = 'AZURE_DATA_LAKE_STORAGE'.freeze
11
+ ICEBERG_STORAGE_TYPE_AZURE_DATA_LAKE_STORAGE = 'AZURE_DATA_LAKE_STORAGE'.freeze,
12
+ ICEBERG_STORAGE_TYPE_NONE = 'NONE'.freeze,
13
+ ICEBERG_STORAGE_TYPE_OCI_OBJECT_STORAGE_S3_API = 'OCI_OBJECT_STORAGE_S3_API'.freeze
12
14
  ].freeze
13
15
  end
14
16
  end
@@ -15,6 +15,7 @@ module OCI
15
15
  TECHNOLOGY_TYPE_APACHE_KAFKA = 'APACHE_KAFKA'.freeze,
16
16
  TECHNOLOGY_TYPE_AZURE_EVENT_HUBS = 'AZURE_EVENT_HUBS'.freeze,
17
17
  TECHNOLOGY_TYPE_CONFLUENT_KAFKA = 'CONFLUENT_KAFKA'.freeze,
18
+ TECHNOLOGY_TYPE_GOOGLE_CLOUD_MANAGED_SERVICE_FOR_APACHE_KAFKA = 'GOOGLE_CLOUD_MANAGED_SERVICE_FOR_APACHE_KAFKA'.freeze,
18
19
  TECHNOLOGY_TYPE_MICROSOFT_FABRIC_EVENTSTREAM = 'MICROSOFT_FABRIC_EVENTSTREAM'.freeze,
19
20
  TECHNOLOGY_TYPE_OCI_STREAMING = 'OCI_STREAMING'.freeze,
20
21
  TECHNOLOGY_TYPE_OCI_STREAMING_WITH_APACHE_KAFKA = 'OCI_STREAMING_WITH_APACHE_KAFKA'.freeze,
@@ -0,0 +1,148 @@
1
+ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved.
2
+ # 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.
3
+
4
+ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407
5
+ require 'date'
6
+ require_relative 'iceberg_storage'
7
+
8
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
9
+ module OCI
10
+ # Represents the absence of a storage configuration in an Iceberg
11
+ # connection.
12
+ #
13
+ class GoldenGate::Models::NoIcebergStorage < GoldenGate::Models::IcebergStorage
14
+ # Attribute mapping from ruby-style variable name to JSON key.
15
+ def self.attribute_map
16
+ {
17
+ # rubocop:disable Style/SymbolLiteral
18
+ 'storage_type': :'storageType'
19
+ # rubocop:enable Style/SymbolLiteral
20
+ }
21
+ end
22
+
23
+ # Attribute type mapping.
24
+ def self.swagger_types
25
+ {
26
+ # rubocop:disable Style/SymbolLiteral
27
+ 'storage_type': :'String'
28
+ # rubocop:enable Style/SymbolLiteral
29
+ }
30
+ end
31
+
32
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
33
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
34
+
35
+
36
+ # Initializes the object
37
+ # @param [Hash] attributes Model attributes in the form of hash
38
+ def initialize(attributes = {})
39
+ return unless attributes.is_a?(Hash)
40
+
41
+ attributes['storageType'] = 'NONE'
42
+
43
+ super(attributes)
44
+ end
45
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
46
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
47
+
48
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
49
+
50
+
51
+ # Checks equality by comparing each attribute.
52
+ # @param [Object] other the other object to be compared
53
+ def ==(other)
54
+ return true if equal?(other)
55
+
56
+ self.class == other.class &&
57
+ storage_type == other.storage_type
58
+ end
59
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
60
+
61
+ # @see the `==` method
62
+ # @param [Object] other the other object to be compared
63
+ def eql?(other)
64
+ self == other
65
+ end
66
+
67
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
68
+
69
+
70
+ # Calculates hash code according to all attributes.
71
+ # @return [Fixnum] Hash code
72
+ def hash
73
+ [storage_type].hash
74
+ end
75
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
76
+
77
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
78
+
79
+
80
+ # Builds the object from hash
81
+ # @param [Hash] attributes Model attributes in the form of hash
82
+ # @return [Object] Returns the model itself
83
+ def build_from_hash(attributes)
84
+ return nil unless attributes.is_a?(Hash)
85
+
86
+ self.class.swagger_types.each_pair do |key, type|
87
+ if type =~ /^Array<(.*)>/i
88
+ # check to ensure the input is an array given that the the attribute
89
+ # is documented as an array but the input is not
90
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
91
+ public_method("#{key}=").call(
92
+ attributes[self.class.attribute_map[key]]
93
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
94
+ )
95
+ end
96
+ elsif !attributes[self.class.attribute_map[key]].nil?
97
+ public_method("#{key}=").call(
98
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
99
+ )
100
+ end
101
+ # or else data not found in attributes(hash), not an issue as the data can be optional
102
+ end
103
+
104
+ self
105
+ end
106
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
107
+
108
+ # Returns the string representation of the object
109
+ # @return [String] String presentation of the object
110
+ def to_s
111
+ to_hash.to_s
112
+ end
113
+
114
+ # Returns the object in the form of hash
115
+ # @return [Hash] Returns the object in the form of hash
116
+ def to_hash
117
+ hash = {}
118
+ self.class.attribute_map.each_pair do |attr, param|
119
+ value = public_method(attr).call
120
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
121
+
122
+ hash[param] = _to_hash(value)
123
+ end
124
+ hash
125
+ end
126
+
127
+ private
128
+
129
+ # Outputs non-array value in the form of hash
130
+ # For object, use to_hash. Otherwise, just return the value
131
+ # @param [Object] value Any valid value
132
+ # @return [Hash] Returns the value in the form of hash
133
+ def _to_hash(value)
134
+ if value.is_a?(Array)
135
+ value.compact.map { |v| _to_hash(v) }
136
+ elsif value.is_a?(Hash)
137
+ {}.tap do |hash|
138
+ value.each { |k, v| hash[k] = _to_hash(v) }
139
+ end
140
+ elsif value.respond_to? :to_hash
141
+ value.to_hash
142
+ else
143
+ value
144
+ end
145
+ end
146
+ end
147
+ end
148
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength