oci 2.16.0 → 2.17.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 (570) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +12 -2
  3. data/lib/oci/ai_vision/ai_service_vision_client.rb +1677 -0
  4. data/lib/oci/ai_vision/ai_service_vision_client_composite_operations.rb +399 -0
  5. data/lib/oci/ai_vision/ai_vision.rb +105 -0
  6. data/lib/oci/ai_vision/models/action_type.rb +15 -0
  7. data/lib/oci/ai_vision/models/analyze_document_details.rb +268 -0
  8. data/lib/oci/ai_vision/models/analyze_document_result.rb +286 -0
  9. data/lib/oci/ai_vision/models/analyze_image_details.rb +174 -0
  10. data/lib/oci/ai_vision/models/analyze_image_result.rb +243 -0
  11. data/lib/oci/ai_vision/models/bounding_polygon.rb +156 -0
  12. data/lib/oci/ai_vision/models/cell.rb +216 -0
  13. data/lib/oci/ai_vision/models/change_model_compartment_details.rb +156 -0
  14. data/lib/oci/ai_vision/models/change_project_compartment_details.rb +156 -0
  15. data/lib/oci/ai_vision/models/create_document_job_details.rb +304 -0
  16. data/lib/oci/ai_vision/models/create_image_job_details.rb +222 -0
  17. data/lib/oci/ai_vision/models/create_model_details.rb +325 -0
  18. data/lib/oci/ai_vision/models/create_project_details.rb +213 -0
  19. data/lib/oci/ai_vision/models/data_science_labeling_dataset.rb +162 -0
  20. data/lib/oci/ai_vision/models/dataset.rb +191 -0
  21. data/lib/oci/ai_vision/models/detected_document_type.rb +164 -0
  22. data/lib/oci/ai_vision/models/detected_language.rb +207 -0
  23. data/lib/oci/ai_vision/models/dimensions.rb +190 -0
  24. data/lib/oci/ai_vision/models/document_classification_feature.rb +176 -0
  25. data/lib/oci/ai_vision/models/document_details.rb +184 -0
  26. data/lib/oci/ai_vision/models/document_feature.rb +204 -0
  27. data/lib/oci/ai_vision/models/document_field.rb +216 -0
  28. data/lib/oci/ai_vision/models/document_job.rb +451 -0
  29. data/lib/oci/ai_vision/models/document_key_value_detection_feature.rb +145 -0
  30. data/lib/oci/ai_vision/models/document_language.rb +34 -0
  31. data/lib/oci/ai_vision/models/document_language_classification_feature.rb +162 -0
  32. data/lib/oci/ai_vision/models/document_metadata.rb +168 -0
  33. data/lib/oci/ai_vision/models/document_table_detection_feature.rb +145 -0
  34. data/lib/oci/ai_vision/models/document_text_detection_feature.rb +164 -0
  35. data/lib/oci/ai_vision/models/document_type.rb +19 -0
  36. data/lib/oci/ai_vision/models/field_label.rb +160 -0
  37. data/lib/oci/ai_vision/models/field_name.rb +187 -0
  38. data/lib/oci/ai_vision/models/field_value.rb +250 -0
  39. data/lib/oci/ai_vision/models/image_classification_feature.rb +176 -0
  40. data/lib/oci/ai_vision/models/image_details.rb +184 -0
  41. data/lib/oci/ai_vision/models/image_feature.rb +198 -0
  42. data/lib/oci/ai_vision/models/image_job.rb +358 -0
  43. data/lib/oci/ai_vision/models/image_object.rb +174 -0
  44. data/lib/oci/ai_vision/models/image_object_detection_feature.rb +176 -0
  45. data/lib/oci/ai_vision/models/image_text.rb +160 -0
  46. data/lib/oci/ai_vision/models/image_text_detection_feature.rb +201 -0
  47. data/lib/oci/ai_vision/models/inline_document_details.rb +158 -0
  48. data/lib/oci/ai_vision/models/inline_image_details.rb +158 -0
  49. data/lib/oci/ai_vision/models/input_location.rb +192 -0
  50. data/lib/oci/ai_vision/models/label.rb +160 -0
  51. data/lib/oci/ai_vision/models/line.rb +188 -0
  52. data/lib/oci/ai_vision/models/model.rb +547 -0
  53. data/lib/oci/ai_vision/models/model_collection.rb +150 -0
  54. data/lib/oci/ai_vision/models/model_summary.rb +384 -0
  55. data/lib/oci/ai_vision/models/normalized_vertex.rb +163 -0
  56. data/lib/oci/ai_vision/models/object_list_inline_input_location.rb +162 -0
  57. data/lib/oci/ai_vision/models/object_location.rb +182 -0
  58. data/lib/oci/ai_vision/models/object_storage_dataset.rb +190 -0
  59. data/lib/oci/ai_vision/models/object_storage_document_details.rb +190 -0
  60. data/lib/oci/ai_vision/models/object_storage_image_details.rb +190 -0
  61. data/lib/oci/ai_vision/models/ontology_class.rb +178 -0
  62. data/lib/oci/ai_vision/models/operation_status.rb +16 -0
  63. data/lib/oci/ai_vision/models/operation_type.rb +17 -0
  64. data/lib/oci/ai_vision/models/output_location.rb +178 -0
  65. data/lib/oci/ai_vision/models/page.rb +235 -0
  66. data/lib/oci/ai_vision/models/processing_error.rb +160 -0
  67. data/lib/oci/ai_vision/models/project.rb +316 -0
  68. data/lib/oci/ai_vision/models/project_collection.rb +150 -0
  69. data/lib/oci/ai_vision/models/project_summary.rb +283 -0
  70. data/lib/oci/ai_vision/models/sort_order.rb +11 -0
  71. data/lib/oci/ai_vision/models/table.rb +235 -0
  72. data/lib/oci/ai_vision/models/table_row.rb +150 -0
  73. data/lib/oci/ai_vision/models/update_model_details.rb +196 -0
  74. data/lib/oci/ai_vision/models/update_project_details.rb +196 -0
  75. data/lib/oci/ai_vision/models/value_array.rb +174 -0
  76. data/lib/oci/ai_vision/models/value_date.rb +174 -0
  77. data/lib/oci/ai_vision/models/value_integer.rb +174 -0
  78. data/lib/oci/ai_vision/models/value_number.rb +174 -0
  79. data/lib/oci/ai_vision/models/value_phone_number.rb +174 -0
  80. data/lib/oci/ai_vision/models/value_string.rb +174 -0
  81. data/lib/oci/ai_vision/models/value_time.rb +174 -0
  82. data/lib/oci/ai_vision/models/word.rb +174 -0
  83. data/lib/oci/ai_vision/models/work_request.rb +311 -0
  84. data/lib/oci/ai_vision/models/work_request_error.rb +173 -0
  85. data/lib/oci/ai_vision/models/work_request_error_collection.rb +150 -0
  86. data/lib/oci/ai_vision/models/work_request_log_entry.rb +160 -0
  87. data/lib/oci/ai_vision/models/work_request_log_entry_collection.rb +150 -0
  88. data/lib/oci/ai_vision/models/work_request_resource.rb +220 -0
  89. data/lib/oci/ai_vision/models/work_request_summary.rb +313 -0
  90. data/lib/oci/ai_vision/models/work_request_summary_collection.rb +150 -0
  91. data/lib/oci/ai_vision/util.rb +3 -0
  92. data/lib/oci/announcements_service/announcement_client.rb +26 -5
  93. data/lib/oci/announcements_service/announcement_subscription_client.rb +703 -0
  94. data/lib/oci/announcements_service/announcement_subscription_client_composite_operations.rb +144 -0
  95. data/lib/oci/announcements_service/announcements_preferences_client.rb +10 -3
  96. data/lib/oci/announcements_service/announcements_service.rb +14 -0
  97. data/lib/oci/announcements_service/models/announcement.rb +9 -1
  98. data/lib/oci/announcements_service/models/announcement_subscription.rb +348 -0
  99. data/lib/oci/announcements_service/models/announcement_subscription_collection.rb +150 -0
  100. data/lib/oci/announcements_service/models/announcement_subscription_summary.rb +299 -0
  101. data/lib/oci/announcements_service/models/announcement_summary.rb +12 -4
  102. data/lib/oci/announcements_service/models/base_announcement.rb +47 -4
  103. data/lib/oci/announcements_service/models/change_announcement_subscription_compartment_details.rb +156 -0
  104. data/lib/oci/announcements_service/models/create_announcement_subscription_details.rb +241 -0
  105. data/lib/oci/announcements_service/models/create_filter_group_details.rb +160 -0
  106. data/lib/oci/announcements_service/models/filter.rb +184 -0
  107. data/lib/oci/announcements_service/models/filter_group.rb +160 -0
  108. data/lib/oci/announcements_service/models/filter_group_details.rb +150 -0
  109. data/lib/oci/announcements_service/models/sort_order.rb +11 -0
  110. data/lib/oci/announcements_service/models/update_announcement_subscription_details.rb +211 -0
  111. data/lib/oci/announcements_service/models/update_filter_group_details.rb +150 -0
  112. data/lib/oci/apm_config/config_client.rb +31 -29
  113. data/lib/oci/apm_config/models/apdex.rb +20 -20
  114. data/lib/oci/apm_config/models/apdex_rules.rb +2 -2
  115. data/lib/oci/apm_config/models/apdex_rules_summary.rb +2 -2
  116. data/lib/oci/apm_config/models/config.rb +3 -3
  117. data/lib/oci/apm_config/models/config_collection.rb +1 -1
  118. data/lib/oci/apm_config/models/config_summary.rb +3 -3
  119. data/lib/oci/apm_config/models/create_apdex_rules_details.rb +2 -3
  120. data/lib/oci/apm_config/models/create_config_details.rb +3 -3
  121. data/lib/oci/apm_config/models/create_metric_group_details.rb +9 -6
  122. data/lib/oci/apm_config/models/create_span_filter_details.rb +2 -2
  123. data/lib/oci/apm_config/models/dimension.rb +3 -3
  124. data/lib/oci/apm_config/models/metric.rb +5 -5
  125. data/lib/oci/apm_config/models/metric_group.rb +9 -5
  126. data/lib/oci/apm_config/models/metric_group_summary.rb +9 -5
  127. data/lib/oci/apm_config/models/span_filter.rb +3 -3
  128. data/lib/oci/apm_config/models/span_filter_summary.rb +2 -2
  129. data/lib/oci/apm_config/models/update_apdex_rules_details.rb +1 -1
  130. data/lib/oci/apm_config/models/update_config_details.rb +2 -2
  131. data/lib/oci/apm_config/models/update_metric_group_details.rb +9 -5
  132. data/lib/oci/apm_config/models/update_span_filter_details.rb +2 -2
  133. data/lib/oci/apm_traces/apm_traces.rb +7 -0
  134. data/lib/oci/apm_traces/models/aggregated_snapshot.rb +167 -0
  135. data/lib/oci/apm_traces/models/aggregated_stack_trace.rb +165 -0
  136. data/lib/oci/apm_traces/models/query_details.rb +2 -2
  137. data/lib/oci/apm_traces/models/query_result_metadata_summary.rb +2 -2
  138. data/lib/oci/apm_traces/models/query_result_row.rb +6 -7
  139. data/lib/oci/apm_traces/models/query_result_row_type_summary.rb +1 -1
  140. data/lib/oci/apm_traces/models/query_results_grouped_by_summary.rb +2 -2
  141. data/lib/oci/apm_traces/models/query_results_ordered_by_summary.rb +2 -2
  142. data/lib/oci/apm_traces/models/quick_pick_summary.rb +3 -3
  143. data/lib/oci/apm_traces/models/snapshot_detail.rb +163 -0
  144. data/lib/oci/apm_traces/models/span.rb +4 -4
  145. data/lib/oci/apm_traces/models/span_log.rb +1 -1
  146. data/lib/oci/apm_traces/models/span_snapshot.rb +238 -0
  147. data/lib/oci/apm_traces/models/stack_trace_element.rb +212 -0
  148. data/lib/oci/apm_traces/models/tag.rb +1 -1
  149. data/lib/oci/apm_traces/models/thread_snapshot.rb +186 -0
  150. data/lib/oci/apm_traces/models/trace.rb +15 -16
  151. data/lib/oci/apm_traces/models/trace_service_summary.rb +3 -3
  152. data/lib/oci/apm_traces/models/trace_snapshot.rb +214 -0
  153. data/lib/oci/apm_traces/models/trace_span_summary.rb +16 -18
  154. data/lib/oci/apm_traces/query_client.rb +9 -89
  155. data/lib/oci/apm_traces/trace_client.rb +141 -8
  156. data/lib/oci/common.rb +33 -0
  157. data/lib/oci/container_engine/container_engine.rb +2 -0
  158. data/lib/oci/container_engine/models/cluster.rb +51 -1
  159. data/lib/oci/container_engine/models/cluster_create_options.rb +30 -4
  160. data/lib/oci/container_engine/models/cluster_summary.rb +51 -1
  161. data/lib/oci/container_engine/models/create_cluster_details.rb +35 -1
  162. data/lib/oci/container_engine/models/create_node_pool_details.rb +38 -4
  163. data/lib/oci/container_engine/models/create_node_pool_node_config_details.rb +35 -1
  164. data/lib/oci/container_engine/models/node.rb +51 -1
  165. data/lib/oci/container_engine/models/node_pool.rb +54 -4
  166. data/lib/oci/container_engine/models/node_pool_node_config_details.rb +35 -1
  167. data/lib/oci/container_engine/models/node_pool_placement_config_details.rb +18 -4
  168. data/lib/oci/container_engine/models/node_pool_summary.rb +54 -4
  169. data/lib/oci/container_engine/models/persistent_volume_config_details.rb +174 -0
  170. data/lib/oci/container_engine/models/service_lb_config_details.rb +174 -0
  171. data/lib/oci/container_engine/models/update_cluster_details.rb +35 -1
  172. data/lib/oci/container_engine/models/update_cluster_options_details.rb +30 -4
  173. data/lib/oci/container_engine/models/update_node_pool_details.rb +38 -4
  174. data/lib/oci/container_engine/models/update_node_pool_node_config_details.rb +35 -1
  175. data/lib/oci/dashboard_service/dashboard_client.rb +477 -0
  176. data/lib/oci/dashboard_service/dashboard_client_composite_operations.rb +144 -0
  177. data/lib/oci/dashboard_service/dashboard_group_client.rb +477 -0
  178. data/lib/oci/dashboard_service/dashboard_group_client_composite_operations.rb +144 -0
  179. data/lib/oci/dashboard_service/dashboard_service.rb +36 -0
  180. data/lib/oci/dashboard_service/models/create_dashboard_details.rb +247 -0
  181. data/lib/oci/dashboard_service/models/create_dashboard_group_details.rb +214 -0
  182. data/lib/oci/dashboard_service/models/create_v1_dashboard_details.rb +191 -0
  183. data/lib/oci/dashboard_service/models/dashboard.rb +377 -0
  184. data/lib/oci/dashboard_service/models/dashboard_collection.rb +150 -0
  185. data/lib/oci/dashboard_service/models/dashboard_group.rb +312 -0
  186. data/lib/oci/dashboard_service/models/dashboard_group_collection.rb +150 -0
  187. data/lib/oci/dashboard_service/models/dashboard_group_summary.rb +288 -0
  188. data/lib/oci/dashboard_service/models/dashboard_summary.rb +302 -0
  189. data/lib/oci/dashboard_service/models/sort_order.rb +11 -0
  190. data/lib/oci/dashboard_service/models/update_dashboard_details.rb +233 -0
  191. data/lib/oci/dashboard_service/models/update_dashboard_group_details.rb +200 -0
  192. data/lib/oci/dashboard_service/models/update_v1_dashboard_details.rb +187 -0
  193. data/lib/oci/dashboard_service/models/v1_dashboard.rb +215 -0
  194. data/lib/oci/dashboard_service/util.rb +3 -0
  195. data/lib/oci/data_integration/models/filter.rb +1 -0
  196. data/lib/oci/data_safe/data_safe.rb +239 -0
  197. data/lib/oci/data_safe/data_safe_client.rb +11900 -1705
  198. data/lib/oci/data_safe/data_safe_client_composite_operations.rb +3157 -156
  199. data/lib/oci/data_safe/models/alert.rb +535 -0
  200. data/lib/oci/data_safe/models/alert_aggregation_items.rb +201 -0
  201. data/lib/oci/data_safe/models/alert_analytics_collection.rb +150 -0
  202. data/lib/oci/data_safe/models/alert_collection.rb +150 -0
  203. data/lib/oci/data_safe/models/alert_lifecycle_state.rb +12 -0
  204. data/lib/oci/data_safe/models/alert_policy.rb +387 -0
  205. data/lib/oci/data_safe/models/alert_policy_collection.rb +150 -0
  206. data/lib/oci/data_safe/models/alert_policy_lifecycle_state.rb +15 -0
  207. data/lib/oci/data_safe/models/alert_policy_rule.rb +170 -0
  208. data/lib/oci/data_safe/models/alert_policy_rule_collection.rb +150 -0
  209. data/lib/oci/data_safe/models/alert_policy_rule_summary.rb +170 -0
  210. data/lib/oci/data_safe/models/alert_policy_summary.rb +368 -0
  211. data/lib/oci/data_safe/models/alert_policy_type.rb +12 -0
  212. data/lib/oci/data_safe/models/alert_severity.rb +14 -0
  213. data/lib/oci/data_safe/models/alert_status.rb +11 -0
  214. data/lib/oci/data_safe/models/alert_summary.rb +495 -0
  215. data/lib/oci/data_safe/models/alert_type.rb +12 -0
  216. data/lib/oci/data_safe/models/alerts_aggregation_dimension.rb +154 -0
  217. data/lib/oci/data_safe/models/apply_discovery_job_results_details.rb +154 -0
  218. data/lib/oci/data_safe/models/audit_archive_retrieval.rb +404 -0
  219. data/lib/oci/data_safe/models/audit_archive_retrieval_collection.rb +150 -0
  220. data/lib/oci/data_safe/models/audit_archive_retrieval_lifecycle_state.rb +15 -0
  221. data/lib/oci/data_safe/models/audit_archive_retrieval_summary.rb +386 -0
  222. data/lib/oci/data_safe/models/audit_conditions.rb +197 -0
  223. data/lib/oci/data_safe/models/audit_event_aggregation_dimensions.rb +352 -0
  224. data/lib/oci/data_safe/models/audit_event_aggregation_items.rb +215 -0
  225. data/lib/oci/data_safe/models/audit_event_analytics_collection.rb +150 -0
  226. data/lib/oci/data_safe/models/audit_event_collection.rb +150 -0
  227. data/lib/oci/data_safe/models/audit_event_summary.rb +719 -0
  228. data/lib/oci/data_safe/models/audit_policy.rb +410 -0
  229. data/lib/oci/data_safe/models/audit_policy_aggregation_items.rb +159 -0
  230. data/lib/oci/data_safe/models/audit_policy_analytic_collection.rb +150 -0
  231. data/lib/oci/data_safe/models/audit_policy_category.rb +15 -0
  232. data/lib/oci/data_safe/models/audit_policy_collection.rb +150 -0
  233. data/lib/oci/data_safe/models/audit_policy_dimensions.rb +186 -0
  234. data/lib/oci/data_safe/models/audit_policy_lifecycle_state.rb +16 -0
  235. data/lib/oci/data_safe/models/audit_policy_summary.rb +380 -0
  236. data/lib/oci/data_safe/models/audit_profile.rb +429 -0
  237. data/lib/oci/data_safe/models/audit_profile_aggregation_items.rb +159 -0
  238. data/lib/oci/data_safe/models/audit_profile_analytic_collection.rb +151 -0
  239. data/lib/oci/data_safe/models/audit_profile_collection.rb +150 -0
  240. data/lib/oci/data_safe/models/audit_profile_dimensions.rb +157 -0
  241. data/lib/oci/data_safe/models/audit_profile_lifecycle_state.rb +16 -0
  242. data/lib/oci/data_safe/models/audit_profile_summary.rb +400 -0
  243. data/lib/oci/data_safe/models/audit_specification.rb +367 -0
  244. data/lib/oci/data_safe/models/audit_trail.rb +447 -0
  245. data/lib/oci/data_safe/models/audit_trail_aggregation_items.rb +159 -0
  246. data/lib/oci/data_safe/models/audit_trail_analytic_collection.rb +151 -0
  247. data/lib/oci/data_safe/models/audit_trail_collection.rb +150 -0
  248. data/lib/oci/data_safe/models/audit_trail_dimensions.rb +212 -0
  249. data/lib/oci/data_safe/models/audit_trail_lifecycle_state.rb +15 -0
  250. data/lib/oci/data_safe/models/audit_trail_status.rb +17 -0
  251. data/lib/oci/data_safe/models/audit_trail_summary.rb +411 -0
  252. data/lib/oci/data_safe/models/available_audit_volume_collection.rb +150 -0
  253. data/lib/oci/data_safe/models/available_audit_volume_summary.rb +197 -0
  254. data/lib/oci/data_safe/models/calculate_audit_volume_available_details.rb +168 -0
  255. data/lib/oci/data_safe/models/calculate_audit_volume_collected_details.rb +168 -0
  256. data/lib/oci/data_safe/models/change_alert_compartment_details.rb +154 -0
  257. data/lib/oci/data_safe/models/change_alert_policy_compartment_details.rb +154 -0
  258. data/lib/oci/data_safe/models/change_audit_archive_retrieval_compartment_details.rb +156 -0
  259. data/lib/oci/data_safe/models/change_audit_policy_compartment_details.rb +154 -0
  260. data/lib/oci/data_safe/models/change_audit_profile_compartment_details.rb +155 -0
  261. data/lib/oci/data_safe/models/change_discovery_job_compartment_details.rb +154 -0
  262. data/lib/oci/data_safe/models/change_library_masking_format_compartment_details.rb +154 -0
  263. data/lib/oci/data_safe/models/change_masking_policy_compartment_details.rb +154 -0
  264. data/lib/oci/data_safe/models/change_report_compartment_details.rb +156 -0
  265. data/lib/oci/data_safe/models/change_report_definition_compartment_details.rb +156 -0
  266. data/lib/oci/data_safe/models/change_retention_details.rb +189 -0
  267. data/lib/oci/data_safe/models/change_sensitive_data_model_compartment_details.rb +154 -0
  268. data/lib/oci/data_safe/models/change_sensitive_type_compartment_details.rb +154 -0
  269. data/lib/oci/data_safe/models/change_target_alert_policy_association_compartment_details.rb +154 -0
  270. data/lib/oci/data_safe/models/collected_audit_volume_collection.rb +150 -0
  271. data/lib/oci/data_safe/models/collected_audit_volume_summary.rb +199 -0
  272. data/lib/oci/data_safe/models/column.rb +212 -0
  273. data/lib/oci/data_safe/models/column_filter.rb +234 -0
  274. data/lib/oci/data_safe/models/column_sorting.rb +182 -0
  275. data/lib/oci/data_safe/models/column_source_details.rb +191 -0
  276. data/lib/oci/data_safe/models/column_source_from_sdm_details.rb +162 -0
  277. data/lib/oci/data_safe/models/column_source_from_target_details.rb +162 -0
  278. data/lib/oci/data_safe/models/column_summary.rb +240 -0
  279. data/lib/oci/data_safe/models/compatible_formats_for_data_types.rb +161 -0
  280. data/lib/oci/data_safe/models/compatible_formats_for_sensitive_types.rb +154 -0
  281. data/lib/oci/data_safe/models/create_alert_policy_details.rb +267 -0
  282. data/lib/oci/data_safe/models/create_alert_policy_rule_details.rb +161 -0
  283. data/lib/oci/data_safe/models/create_audit_archive_retrieval_details.rb +254 -0
  284. data/lib/oci/data_safe/models/create_audit_policy_details.rb +226 -0
  285. data/lib/oci/data_safe/models/create_audit_profile_details.rb +243 -0
  286. data/lib/oci/data_safe/models/create_column_source_details.rb +184 -0
  287. data/lib/oci/data_safe/models/create_column_source_from_sdm_details.rb +162 -0
  288. data/lib/oci/data_safe/models/create_column_source_from_target_details.rb +162 -0
  289. data/lib/oci/data_safe/models/create_discovery_job_details.rb +350 -0
  290. data/lib/oci/data_safe/models/create_library_masking_format_details.rb +247 -0
  291. data/lib/oci/data_safe/models/create_masking_column_details.rb +312 -0
  292. data/lib/oci/data_safe/models/create_masking_policy_details.rb +371 -0
  293. data/lib/oci/data_safe/models/create_report_definition_details.rb +278 -0
  294. data/lib/oci/data_safe/models/create_sensitive_category_details.rb +173 -0
  295. data/lib/oci/data_safe/models/create_sensitive_column_details.rb +371 -0
  296. data/lib/oci/data_safe/models/create_sensitive_data_model_details.rb +359 -0
  297. data/lib/oci/data_safe/models/create_sensitive_type_details.rb +286 -0
  298. data/lib/oci/data_safe/models/create_sensitive_type_pattern_details.rb +250 -0
  299. data/lib/oci/data_safe/models/create_target_alert_policy_association_details.rb +257 -0
  300. data/lib/oci/data_safe/models/data_model_format.rb +10 -0
  301. data/lib/oci/data_safe/models/data_safe_configuration.rb +29 -1
  302. data/lib/oci/data_safe/models/delete_rows_format_entry.rb +157 -0
  303. data/lib/oci/data_safe/models/deterministic_encryption_date_format_entry.rb +201 -0
  304. data/lib/oci/data_safe/models/deterministic_encryption_format_entry.rb +193 -0
  305. data/lib/oci/data_safe/models/deterministic_substitution_format_entry.rb +205 -0
  306. data/lib/oci/data_safe/models/dimensions.rb +168 -0
  307. data/lib/oci/data_safe/models/discovery_analytics_collection.rb +150 -0
  308. data/lib/oci/data_safe/models/discovery_analytics_summary.rb +197 -0
  309. data/lib/oci/data_safe/models/discovery_job.rb +544 -0
  310. data/lib/oci/data_safe/models/discovery_job_collection.rb +150 -0
  311. data/lib/oci/data_safe/models/discovery_job_result.rb +506 -0
  312. data/lib/oci/data_safe/models/discovery_job_result_collection.rb +150 -0
  313. data/lib/oci/data_safe/models/discovery_job_result_summary.rb +406 -0
  314. data/lib/oci/data_safe/models/discovery_job_summary.rb +320 -0
  315. data/lib/oci/data_safe/models/discovery_lifecycle_state.rb +15 -0
  316. data/lib/oci/data_safe/models/download_discovery_report_details.rb +183 -0
  317. data/lib/oci/data_safe/models/download_masking_log_details.rb +154 -0
  318. data/lib/oci/data_safe/models/download_masking_policy_details.rb +168 -0
  319. data/lib/oci/data_safe/models/download_masking_report_details.rb +183 -0
  320. data/lib/oci/data_safe/models/download_security_assessment_report_details.rb +1 -0
  321. data/lib/oci/data_safe/models/download_sensitive_data_model_details.rb +168 -0
  322. data/lib/oci/data_safe/models/download_user_assessment_report_details.rb +1 -0
  323. data/lib/oci/data_safe/models/enable_conditions.rb +256 -0
  324. data/lib/oci/data_safe/models/fixed_number_format_entry.rb +168 -0
  325. data/lib/oci/data_safe/models/fixed_string_format_entry.rb +168 -0
  326. data/lib/oci/data_safe/models/format_entry.rb +243 -0
  327. data/lib/oci/data_safe/models/format_entry_type.rb +32 -0
  328. data/lib/oci/data_safe/models/format_summary.rb +170 -0
  329. data/lib/oci/data_safe/models/formats_for_data_type.rb +174 -0
  330. data/lib/oci/data_safe/models/formats_for_sensitive_type.rb +168 -0
  331. data/lib/oci/data_safe/models/generate_discovery_report_for_download_details.rb +183 -0
  332. data/lib/oci/data_safe/models/generate_masking_policy_for_download_details.rb +168 -0
  333. data/lib/oci/data_safe/models/generate_masking_report_for_download_details.rb +183 -0
  334. data/lib/oci/data_safe/models/generate_report_details.rb +263 -0
  335. data/lib/oci/data_safe/models/generate_security_assessment_report_details.rb +1 -0
  336. data/lib/oci/data_safe/models/generate_sensitive_data_model_for_download_details.rb +168 -0
  337. data/lib/oci/data_safe/models/generate_user_assessment_report_details.rb +1 -0
  338. data/lib/oci/data_safe/models/global_settings.rb +185 -0
  339. data/lib/oci/data_safe/models/library_masking_format.rb +354 -0
  340. data/lib/oci/data_safe/models/library_masking_format_collection.rb +150 -0
  341. data/lib/oci/data_safe/models/library_masking_format_entry.rb +171 -0
  342. data/lib/oci/data_safe/models/library_masking_format_source.rb +11 -0
  343. data/lib/oci/data_safe/models/library_masking_format_summary.rb +332 -0
  344. data/lib/oci/data_safe/models/mask_data_details.rb +274 -0
  345. data/lib/oci/data_safe/models/masked_column_collection.rb +150 -0
  346. data/lib/oci/data_safe/models/masked_column_summary.rb +296 -0
  347. data/lib/oci/data_safe/models/masking_analytics_collection.rb +150 -0
  348. data/lib/oci/data_safe/models/masking_analytics_dimensions.rb +168 -0
  349. data/lib/oci/data_safe/models/masking_analytics_summary.rb +199 -0
  350. data/lib/oci/data_safe/models/masking_column.rb +414 -0
  351. data/lib/oci/data_safe/models/masking_column_collection.rb +150 -0
  352. data/lib/oci/data_safe/models/masking_column_lifecycle_state.rb +15 -0
  353. data/lib/oci/data_safe/models/masking_column_summary.rb +410 -0
  354. data/lib/oci/data_safe/models/masking_format.rb +190 -0
  355. data/lib/oci/data_safe/models/masking_lifecycle_state.rb +16 -0
  356. data/lib/oci/data_safe/models/masking_policy.rb +448 -0
  357. data/lib/oci/data_safe/models/masking_policy_collection.rb +150 -0
  358. data/lib/oci/data_safe/models/masking_policy_summary.rb +304 -0
  359. data/lib/oci/data_safe/models/masking_report.rb +306 -0
  360. data/lib/oci/data_safe/models/masking_report_collection.rb +150 -0
  361. data/lib/oci/data_safe/models/masking_report_summary.rb +304 -0
  362. data/lib/oci/data_safe/models/modified_attributes.rb +170 -0
  363. data/lib/oci/data_safe/models/modify_global_settings_details.rb +184 -0
  364. data/lib/oci/data_safe/models/null_value_format_entry.rb +152 -0
  365. data/lib/oci/data_safe/models/object_type.rb +11 -0
  366. data/lib/oci/data_safe/models/patch_alert_policy_rule_details.rb +150 -0
  367. data/lib/oci/data_safe/models/patch_alerts_details.rb +150 -0
  368. data/lib/oci/data_safe/models/patch_discovery_job_result_details.rb +150 -0
  369. data/lib/oci/data_safe/models/patch_insert_instruction.rb +162 -0
  370. data/lib/oci/data_safe/models/patch_instruction.rb +192 -0
  371. data/lib/oci/data_safe/models/patch_masking_columns_details.rb +150 -0
  372. data/lib/oci/data_safe/models/patch_merge_instruction.rb +162 -0
  373. data/lib/oci/data_safe/models/patch_remove_instruction.rb +149 -0
  374. data/lib/oci/data_safe/models/patch_sensitive_column_details.rb +150 -0
  375. data/lib/oci/data_safe/models/policy_format.rb +10 -0
  376. data/lib/oci/data_safe/models/ppf_format_entry.rb +179 -0
  377. data/lib/oci/data_safe/models/preserve_original_data_format_entry.rb +153 -0
  378. data/lib/oci/data_safe/models/provision_audit_conditions.rb +199 -0
  379. data/lib/oci/data_safe/models/provision_audit_policy_details.rb +170 -0
  380. data/lib/oci/data_safe/models/random_date_format_entry.rb +189 -0
  381. data/lib/oci/data_safe/models/random_decimal_number_format_entry.rb +190 -0
  382. data/lib/oci/data_safe/models/random_digits_format_entry.rb +193 -0
  383. data/lib/oci/data_safe/models/random_list_format_entry.rb +173 -0
  384. data/lib/oci/data_safe/models/random_number_format_entry.rb +192 -0
  385. data/lib/oci/data_safe/models/random_string_format_entry.rb +192 -0
  386. data/lib/oci/data_safe/models/random_substitution_format_entry.rb +204 -0
  387. data/lib/oci/data_safe/models/regular_expression_format_entry.rb +189 -0
  388. data/lib/oci/data_safe/models/report.rb +333 -0
  389. data/lib/oci/data_safe/models/report_collection.rb +150 -0
  390. data/lib/oci/data_safe/models/report_definition.rb +474 -0
  391. data/lib/oci/data_safe/models/report_definition_collection.rb +150 -0
  392. data/lib/oci/data_safe/models/report_definition_data_source.rb +11 -0
  393. data/lib/oci/data_safe/models/report_definition_lifecycle_state.rb +14 -0
  394. data/lib/oci/data_safe/models/report_definition_summary.rb +378 -0
  395. data/lib/oci/data_safe/models/report_lifecycle_state.rb +11 -0
  396. data/lib/oci/data_safe/models/report_summary.rb +317 -0
  397. data/lib/oci/data_safe/models/role_summary.rb +238 -0
  398. data/lib/oci/data_safe/models/schema_summary.rb +168 -0
  399. data/lib/oci/data_safe/models/sensitive_category.rb +197 -0
  400. data/lib/oci/data_safe/models/sensitive_column.rb +559 -0
  401. data/lib/oci/data_safe/models/sensitive_column_collection.rb +150 -0
  402. data/lib/oci/data_safe/models/sensitive_column_lifecycle_state.rb +14 -0
  403. data/lib/oci/data_safe/models/sensitive_column_summary.rb +512 -0
  404. data/lib/oci/data_safe/models/sensitive_data_model.rb +438 -0
  405. data/lib/oci/data_safe/models/sensitive_data_model_collection.rb +150 -0
  406. data/lib/oci/data_safe/models/sensitive_data_model_summary.rb +320 -0
  407. data/lib/oci/data_safe/models/sensitive_type.rb +416 -0
  408. data/lib/oci/data_safe/models/sensitive_type_collection.rb +150 -0
  409. data/lib/oci/data_safe/models/sensitive_type_entity.rb +11 -0
  410. data/lib/oci/data_safe/models/sensitive_type_pattern.rb +292 -0
  411. data/lib/oci/data_safe/models/sensitive_type_source.rb +11 -0
  412. data/lib/oci/data_safe/models/sensitive_type_summary.rb +394 -0
  413. data/lib/oci/data_safe/models/service_list.rb +1 -0
  414. data/lib/oci/data_safe/models/shuffle_format_entry.rb +177 -0
  415. data/lib/oci/data_safe/models/sql_expression_format_entry.rb +176 -0
  416. data/lib/oci/data_safe/models/start_audit_trail_details.rb +172 -0
  417. data/lib/oci/data_safe/models/substring_format_entry.rb +187 -0
  418. data/lib/oci/data_safe/models/summary.rb +222 -0
  419. data/lib/oci/data_safe/models/table_summary.rb +168 -0
  420. data/lib/oci/data_safe/models/target_alert_policy_association.rb +348 -0
  421. data/lib/oci/data_safe/models/target_alert_policy_association_collection.rb +150 -0
  422. data/lib/oci/data_safe/models/target_alert_policy_association_summary.rb +332 -0
  423. data/lib/oci/data_safe/models/target_database.rb +15 -1
  424. data/lib/oci/data_safe/models/target_database_summary.rb +15 -1
  425. data/lib/oci/data_safe/models/truncate_table_format_entry.rb +154 -0
  426. data/lib/oci/data_safe/models/udf_format_entry.rb +173 -0
  427. data/lib/oci/data_safe/models/update_alert_details.rb +207 -0
  428. data/lib/oci/data_safe/models/update_alert_policy_rule_details.rb +160 -0
  429. data/lib/oci/data_safe/models/update_audit_archive_retrieval_details.rb +198 -0
  430. data/lib/oci/data_safe/models/update_audit_policy_details.rb +198 -0
  431. data/lib/oci/data_safe/models/update_audit_profile_details.rb +215 -0
  432. data/lib/oci/data_safe/models/update_audit_trail_details.rb +216 -0
  433. data/lib/oci/data_safe/models/update_column_source_details.rb +184 -0
  434. data/lib/oci/data_safe/models/update_column_source_sdm_details.rb +162 -0
  435. data/lib/oci/data_safe/models/update_column_source_target_details.rb +162 -0
  436. data/lib/oci/data_safe/models/update_library_masking_format_details.rb +228 -0
  437. data/lib/oci/data_safe/models/update_masking_column_details.rb +239 -0
  438. data/lib/oci/data_safe/models/update_masking_policy_details.rb +329 -0
  439. data/lib/oci/data_safe/models/update_report_definition_details.rb +250 -0
  440. data/lib/oci/data_safe/models/update_sensitive_category_details.rb +169 -0
  441. data/lib/oci/data_safe/models/update_sensitive_column_details.rb +280 -0
  442. data/lib/oci/data_safe/models/update_sensitive_data_model_details.rb +299 -0
  443. data/lib/oci/data_safe/models/update_sensitive_type_details.rb +272 -0
  444. data/lib/oci/data_safe/models/update_sensitive_type_pattern_details.rb +244 -0
  445. data/lib/oci/data_safe/models/update_target_alert_policy_association_details.rb +213 -0
  446. data/lib/oci/data_safe/models/work_request.rb +57 -0
  447. data/lib/oci/data_safe/models/work_request_summary.rb +56 -0
  448. data/lib/oci/data_science/data_science.rb +1 -0
  449. data/lib/oci/data_science/data_science_client.rb +71 -2
  450. data/lib/oci/data_science/data_science_client_composite_operations.rb +1 -1
  451. data/lib/oci/data_science/models/fast_launch_job_config_summary.rb +272 -0
  452. data/lib/oci/database/models/autonomous_database.rb +2 -1
  453. data/lib/oci/database/models/autonomous_database_summary.rb +2 -1
  454. data/lib/oci/database_management/database_management.rb +14 -0
  455. data/lib/oci/database_management/db_management_client.rb +544 -8
  456. data/lib/oci/database_management/models/add_data_files_details.rb +303 -0
  457. data/lib/oci/database_management/models/asm_property.rb +151 -0
  458. data/lib/oci/database_management/models/asm_property_collection.rb +150 -0
  459. data/lib/oci/database_management/models/asm_property_summary.rb +154 -0
  460. data/lib/oci/database_management/models/clone_sql_tuning_task_details.rb +4 -4
  461. data/lib/oci/database_management/models/consumer_group_privilege_collection.rb +2 -2
  462. data/lib/oci/database_management/models/consumer_group_privilege_summary.rb +4 -4
  463. data/lib/oci/database_management/models/create_tablespace_details.rb +508 -0
  464. data/lib/oci/database_management/models/data_access_container_collection.rb +2 -2
  465. data/lib/oci/database_management/models/data_access_container_summary.rb +2 -2
  466. data/lib/oci/database_management/models/drop_sql_tuning_task_details.rb +3 -3
  467. data/lib/oci/database_management/models/drop_tablespace_details.rb +199 -0
  468. data/lib/oci/database_management/models/execution_plan_stats_comparision.rb +1 -1
  469. data/lib/oci/database_management/models/object_privilege_collection.rb +2 -2
  470. data/lib/oci/database_management/models/object_privilege_summary.rb +9 -9
  471. data/lib/oci/database_management/models/proxied_for_user_collection.rb +2 -2
  472. data/lib/oci/database_management/models/proxied_for_user_summary.rb +4 -4
  473. data/lib/oci/database_management/models/proxy_user_collection.rb +2 -2
  474. data/lib/oci/database_management/models/proxy_user_summary.rb +4 -4
  475. data/lib/oci/database_management/models/remove_data_file_details.rb +197 -0
  476. data/lib/oci/database_management/models/resize_data_file_details.rb +272 -0
  477. data/lib/oci/database_management/models/role_collection.rb +2 -2
  478. data/lib/oci/database_management/models/role_summary.rb +9 -9
  479. data/lib/oci/database_management/models/sql_tuning_advisor_task_finding_collection.rb +1 -1
  480. data/lib/oci/database_management/models/sql_tuning_advisor_task_finding_summary.rb +19 -19
  481. data/lib/oci/database_management/models/sql_tuning_advisor_task_recommendation_summary.rb +6 -6
  482. data/lib/oci/database_management/models/sql_tuning_advisor_task_sql_execution_plan.rb +1 -1
  483. data/lib/oci/database_management/models/sql_tuning_advisor_task_summary.rb +13 -13
  484. data/lib/oci/database_management/models/sql_tuning_advisor_task_summary_finding_benefits.rb +21 -21
  485. data/lib/oci/database_management/models/sql_tuning_advisor_task_summary_finding_counts.rb +7 -7
  486. data/lib/oci/database_management/models/sql_tuning_advisor_task_summary_report_statement_counts.rb +5 -5
  487. data/lib/oci/database_management/models/sql_tuning_advisor_task_summary_report_statistics.rb +1 -1
  488. data/lib/oci/database_management/models/sql_tuning_advisor_task_summary_report_task_info.rb +9 -9
  489. data/lib/oci/database_management/models/sql_tuning_task_credential_details.rb +3 -3
  490. data/lib/oci/database_management/models/sql_tuning_task_password_credential_details.rb +1 -1
  491. data/lib/oci/database_management/models/sql_tuning_task_plan_stats.rb +2 -2
  492. data/lib/oci/database_management/models/sql_tuning_task_return.rb +3 -3
  493. data/lib/oci/database_management/models/sql_tuning_task_secret_credential_details.rb +1 -1
  494. data/lib/oci/database_management/models/sql_tuning_task_sql_detail.rb +1 -1
  495. data/lib/oci/database_management/models/sql_tuning_task_sql_execution_plan_step.rb +30 -30
  496. data/lib/oci/database_management/models/start_sql_tuning_task_details.rb +8 -8
  497. data/lib/oci/database_management/models/system_privilege_collection.rb +2 -2
  498. data/lib/oci/database_management/models/system_privilege_summary.rb +7 -7
  499. data/lib/oci/database_management/models/tablespace.rb +217 -81
  500. data/lib/oci/database_management/models/tablespace_admin_credential_details.rb +217 -0
  501. data/lib/oci/database_management/models/tablespace_admin_password_credential_details.rb +166 -0
  502. data/lib/oci/database_management/models/tablespace_admin_secret_credential_details.rb +173 -0
  503. data/lib/oci/database_management/models/tablespace_admin_status.rb +201 -0
  504. data/lib/oci/database_management/models/tablespace_storage_size.rb +178 -0
  505. data/lib/oci/database_management/models/tablespace_summary.rb +16 -1
  506. data/lib/oci/database_management/models/update_tablespace_details.rb +303 -0
  507. data/lib/oci/database_management/models/user.rb +15 -15
  508. data/lib/oci/database_management/models/user_collection.rb +1 -1
  509. data/lib/oci/database_management/models/user_summary.rb +3 -3
  510. data/lib/oci/database_management/sql_tuning_client.rb +24 -21
  511. data/lib/oci/loggingsearch/log_search_client.rb +4 -1
  512. data/lib/oci/marketplace/account_client.rb +1 -1
  513. data/lib/oci/marketplace/marketplace_client.rb +7 -4
  514. data/lib/oci/marketplace/models/free_text_search_details.rb +2 -1
  515. data/lib/oci/marketplace/models/listing_summary.rb +17 -1
  516. data/lib/oci/marketplace/models/search_listings_details.rb +4 -2
  517. data/lib/oci/marketplace/models/structured_search_details.rb +3 -1
  518. data/lib/oci/nosql/models/table_collection.rb +32 -4
  519. data/lib/oci/nosql/models/table_limits.rb +41 -4
  520. data/lib/oci/osp_gateway/invoice_service_client.rb +1 -1
  521. data/lib/oci/osp_gateway/models/authorize_subscription_payment_details.rb +174 -0
  522. data/lib/oci/osp_gateway/models/authorize_subscription_payment_receipt.rb +182 -0
  523. data/lib/oci/osp_gateway/models/{address.rb → bill_to_address.rb} +1 -1
  524. data/lib/oci/osp_gateway/models/billing_address.rb +274 -0
  525. data/lib/oci/osp_gateway/models/credit_card_payment_option.rb +153 -0
  526. data/lib/oci/osp_gateway/models/credit_card_type.rb +16 -0
  527. data/lib/oci/osp_gateway/models/invoice.rb +3 -3
  528. data/lib/oci/osp_gateway/models/merchant_defined_data.rb +168 -0
  529. data/lib/oci/osp_gateway/models/pay_subscription_details.rb +174 -0
  530. data/lib/oci/osp_gateway/models/pay_subscription_receipt.rb +182 -0
  531. data/lib/oci/osp_gateway/models/payment_detail.rb +1 -1
  532. data/lib/oci/osp_gateway/models/payment_gateway.rb +153 -0
  533. data/lib/oci/osp_gateway/models/payment_method.rb +11 -0
  534. data/lib/oci/osp_gateway/models/payment_option.rb +219 -0
  535. data/lib/oci/osp_gateway/models/paypal_payment_option.rb +153 -0
  536. data/lib/oci/osp_gateway/models/subscription.rb +456 -0
  537. data/lib/oci/osp_gateway/models/subscription_collection.rb +150 -0
  538. data/lib/oci/osp_gateway/models/subscription_summary.rb +459 -0
  539. data/lib/oci/osp_gateway/models/tax_info.rb +210 -0
  540. data/lib/oci/osp_gateway/models/update_subscription_details.rb +160 -0
  541. data/lib/oci/osp_gateway/osp_gateway.rb +19 -1
  542. data/lib/oci/osp_gateway/subscription_service_client.rb +481 -0
  543. data/lib/oci/osp_gateway/subscription_service_client_composite_operations.rb +25 -0
  544. data/lib/oci/regions_definitions.rb +9 -4
  545. data/lib/oci/threat_intelligence/models/data_attribution.rb +198 -0
  546. data/lib/oci/threat_intelligence/models/data_visibility.rb +187 -0
  547. data/lib/oci/threat_intelligence/models/entity_reference.rb +185 -0
  548. data/lib/oci/threat_intelligence/models/indicator.rb +320 -0
  549. data/lib/oci/threat_intelligence/models/indicator_attribute.rb +170 -0
  550. data/lib/oci/threat_intelligence/models/indicator_count_collection.rb +150 -0
  551. data/lib/oci/threat_intelligence/models/indicator_count_dimensions.rb +189 -0
  552. data/lib/oci/threat_intelligence/models/indicator_count_summary.rb +160 -0
  553. data/lib/oci/threat_intelligence/models/indicator_reference.rb +162 -0
  554. data/lib/oci/threat_intelligence/models/indicator_relationship.rb +174 -0
  555. data/lib/oci/threat_intelligence/models/indicator_source_summary.rb +150 -0
  556. data/lib/oci/threat_intelligence/models/indicator_summary.rb +294 -0
  557. data/lib/oci/threat_intelligence/models/indicator_summary_collection.rb +150 -0
  558. data/lib/oci/threat_intelligence/models/indicator_type.rb +16 -0
  559. data/lib/oci/threat_intelligence/models/lifecycle_state.rb +11 -0
  560. data/lib/oci/threat_intelligence/models/sort_order.rb +11 -0
  561. data/lib/oci/threat_intelligence/models/threat_type.rb +170 -0
  562. data/lib/oci/threat_intelligence/models/threat_type_summary.rb +160 -0
  563. data/lib/oci/threat_intelligence/models/threat_types_collection.rb +150 -0
  564. data/lib/oci/threat_intelligence/threat_intelligence.rb +38 -0
  565. data/lib/oci/threat_intelligence/threatintel_client.rb +375 -0
  566. data/lib/oci/threat_intelligence/threatintel_client_composite_operations.rb +25 -0
  567. data/lib/oci/threat_intelligence/util.rb +3 -0
  568. data/lib/oci/version.rb +1 -1
  569. data/lib/oci.rb +6 -23
  570. metadata +432 -3
@@ -0,0 +1,190 @@
1
+ # Copyright (c) 2016, 2022, 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
+ require 'date'
5
+
6
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
7
+ module OCI
8
+ # A masking format defines the logic to mask data in a database column. The condition attribute
9
+ # defines the condition that must be true for applying the masking format. It enables you to do
10
+ # <a href=\"https://docs.oracle.com/en/cloud/paas/data-safe/udscs/conditional-masking.html\">conditional masking</a>
11
+ # so that you can mask the column data values differently using different masking formats and
12
+ # the associated conditions. A masking format can have one or more format entries. A format entry
13
+ # can be a basic masking format such as Random Number, or it can be a library masking format.The
14
+ # combined output of all the format entries is used for masking. It provides the flexibility to
15
+ # define a masking format that can generate different parts of a data value separately and then
16
+ # combine them to get the final data value for masking.
17
+ #
18
+ class DataSafe::Models::MaskingFormat
19
+ # A condition that must be true for applying the masking format. It can be any valid
20
+ # SQL construct that can be used in a SQL predicate. It enables you to do
21
+ # <a href=\"https://docs.oracle.com/en/cloud/paas/data-safe/udscs/conditional-masking.html\">conditional masking</a>
22
+ # so that you can mask the column data values differently using different masking
23
+ # formats and the associated conditions.
24
+ #
25
+ # @return [String]
26
+ attr_accessor :condition
27
+
28
+ # The description of the masking format.
29
+ # @return [String]
30
+ attr_accessor :description
31
+
32
+ # **[Required]** An array of format entries. The combined output of all the format entries is
33
+ # used for masking the column data values.
34
+ #
35
+ # @return [Array<OCI::DataSafe::Models::FormatEntry>]
36
+ attr_accessor :format_entries
37
+
38
+ # Attribute mapping from ruby-style variable name to JSON key.
39
+ def self.attribute_map
40
+ {
41
+ # rubocop:disable Style/SymbolLiteral
42
+ 'condition': :'condition',
43
+ 'description': :'description',
44
+ 'format_entries': :'formatEntries'
45
+ # rubocop:enable Style/SymbolLiteral
46
+ }
47
+ end
48
+
49
+ # Attribute type mapping.
50
+ def self.swagger_types
51
+ {
52
+ # rubocop:disable Style/SymbolLiteral
53
+ 'condition': :'String',
54
+ 'description': :'String',
55
+ 'format_entries': :'Array<OCI::DataSafe::Models::FormatEntry>'
56
+ # rubocop:enable Style/SymbolLiteral
57
+ }
58
+ end
59
+
60
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
61
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
62
+
63
+
64
+ # Initializes the object
65
+ # @param [Hash] attributes Model attributes in the form of hash
66
+ # @option attributes [String] :condition The value to assign to the {#condition} property
67
+ # @option attributes [String] :description The value to assign to the {#description} property
68
+ # @option attributes [Array<OCI::DataSafe::Models::FormatEntry>] :format_entries The value to assign to the {#format_entries} property
69
+ def initialize(attributes = {})
70
+ return unless attributes.is_a?(Hash)
71
+
72
+ # convert string to symbol for hash key
73
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
74
+
75
+ self.condition = attributes[:'condition'] if attributes[:'condition']
76
+
77
+ self.description = attributes[:'description'] if attributes[:'description']
78
+
79
+ self.format_entries = attributes[:'formatEntries'] if attributes[:'formatEntries']
80
+
81
+ raise 'You cannot provide both :formatEntries and :format_entries' if attributes.key?(:'formatEntries') && attributes.key?(:'format_entries')
82
+
83
+ self.format_entries = attributes[:'format_entries'] if attributes[:'format_entries']
84
+ end
85
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
86
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
87
+
88
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
89
+
90
+
91
+ # Checks equality by comparing each attribute.
92
+ # @param [Object] other the other object to be compared
93
+ def ==(other)
94
+ return true if equal?(other)
95
+
96
+ self.class == other.class &&
97
+ condition == other.condition &&
98
+ description == other.description &&
99
+ format_entries == other.format_entries
100
+ end
101
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
102
+
103
+ # @see the `==` method
104
+ # @param [Object] other the other object to be compared
105
+ def eql?(other)
106
+ self == other
107
+ end
108
+
109
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
110
+
111
+
112
+ # Calculates hash code according to all attributes.
113
+ # @return [Fixnum] Hash code
114
+ def hash
115
+ [condition, description, format_entries].hash
116
+ end
117
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
118
+
119
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
120
+
121
+
122
+ # Builds the object from hash
123
+ # @param [Hash] attributes Model attributes in the form of hash
124
+ # @return [Object] Returns the model itself
125
+ def build_from_hash(attributes)
126
+ return nil unless attributes.is_a?(Hash)
127
+
128
+ self.class.swagger_types.each_pair do |key, type|
129
+ if type =~ /^Array<(.*)>/i
130
+ # check to ensure the input is an array given that the the attribute
131
+ # is documented as an array but the input is not
132
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
133
+ public_method("#{key}=").call(
134
+ attributes[self.class.attribute_map[key]]
135
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
136
+ )
137
+ end
138
+ elsif !attributes[self.class.attribute_map[key]].nil?
139
+ public_method("#{key}=").call(
140
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
141
+ )
142
+ end
143
+ # or else data not found in attributes(hash), not an issue as the data can be optional
144
+ end
145
+
146
+ self
147
+ end
148
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
149
+
150
+ # Returns the string representation of the object
151
+ # @return [String] String presentation of the object
152
+ def to_s
153
+ to_hash.to_s
154
+ end
155
+
156
+ # Returns the object in the form of hash
157
+ # @return [Hash] Returns the object in the form of hash
158
+ def to_hash
159
+ hash = {}
160
+ self.class.attribute_map.each_pair do |attr, param|
161
+ value = public_method(attr).call
162
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
163
+
164
+ hash[param] = _to_hash(value)
165
+ end
166
+ hash
167
+ end
168
+
169
+ private
170
+
171
+ # Outputs non-array value in the form of hash
172
+ # For object, use to_hash. Otherwise, just return the value
173
+ # @param [Object] value Any valid value
174
+ # @return [Hash] Returns the value in the form of hash
175
+ def _to_hash(value)
176
+ if value.is_a?(Array)
177
+ value.compact.map { |v| _to_hash(v) }
178
+ elsif value.is_a?(Hash)
179
+ {}.tap do |hash|
180
+ value.each { |k, v| hash[k] = _to_hash(v) }
181
+ end
182
+ elsif value.respond_to? :to_hash
183
+ value.to_hash
184
+ else
185
+ value
186
+ end
187
+ end
188
+ end
189
+ end
190
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -0,0 +1,16 @@
1
+ # Copyright (c) 2016, 2022, 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
+ module OCI
5
+ module DataSafe::Models
6
+ MASKING_LIFECYCLE_STATE_ENUM = [
7
+ MASKING_LIFECYCLE_STATE_CREATING = 'CREATING'.freeze,
8
+ MASKING_LIFECYCLE_STATE_ACTIVE = 'ACTIVE'.freeze,
9
+ MASKING_LIFECYCLE_STATE_UPDATING = 'UPDATING'.freeze,
10
+ MASKING_LIFECYCLE_STATE_DELETING = 'DELETING'.freeze,
11
+ MASKING_LIFECYCLE_STATE_DELETED = 'DELETED'.freeze,
12
+ MASKING_LIFECYCLE_STATE_NEEDS_ATTENTION = 'NEEDS_ATTENTION'.freeze,
13
+ MASKING_LIFECYCLE_STATE_FAILED = 'FAILED'.freeze
14
+ ].freeze
15
+ end
16
+ end
@@ -0,0 +1,448 @@
1
+ # Copyright (c) 2016, 2022, 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
+ require 'date'
5
+ require 'logger'
6
+
7
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
8
+ module OCI
9
+ # A masking policy defines the approach to mask data in a target database. It's basically
10
+ # a collection of columns to be masked, called masking columns, and the associated masking
11
+ # formats to be used to mask these columns. A masking policy can be used to mask multiple
12
+ # databases provided that they have the same schema design. For more information, see
13
+ # <a href=\"https://docs.oracle.com/en/cloud/paas/data-safe/udscs/masking-policies.html\">Masking Policies </a>
14
+ # in the Oracle Data Safe documentation.
15
+ #
16
+ class DataSafe::Models::MaskingPolicy
17
+ LIFECYCLE_STATE_ENUM = [
18
+ LIFECYCLE_STATE_CREATING = 'CREATING'.freeze,
19
+ LIFECYCLE_STATE_ACTIVE = 'ACTIVE'.freeze,
20
+ LIFECYCLE_STATE_UPDATING = 'UPDATING'.freeze,
21
+ LIFECYCLE_STATE_DELETING = 'DELETING'.freeze,
22
+ LIFECYCLE_STATE_DELETED = 'DELETED'.freeze,
23
+ LIFECYCLE_STATE_NEEDS_ATTENTION = 'NEEDS_ATTENTION'.freeze,
24
+ LIFECYCLE_STATE_FAILED = 'FAILED'.freeze,
25
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
26
+ ].freeze
27
+
28
+ RECOMPILE_ENUM = [
29
+ RECOMPILE_SERIAL = 'SERIAL'.freeze,
30
+ RECOMPILE_PARALLEL = 'PARALLEL'.freeze,
31
+ RECOMPILE_NONE = 'NONE'.freeze,
32
+ RECOMPILE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
33
+ ].freeze
34
+
35
+ # **[Required]** The OCID of the masking policy.
36
+ # @return [String]
37
+ attr_accessor :id
38
+
39
+ # **[Required]** The OCID of the compartment that contains the masking policy.
40
+ # @return [String]
41
+ attr_accessor :compartment_id
42
+
43
+ # **[Required]** The display name of the masking policy.
44
+ # @return [String]
45
+ attr_accessor :display_name
46
+
47
+ # **[Required]** The date and time the masking policy was created, in the format defined by [RFC3339](https://tools.ietf.org/html/rfc3339).
48
+ #
49
+ # @return [DateTime]
50
+ attr_accessor :time_created
51
+
52
+ # **[Required]** The current state of the masking policy.
53
+ # @return [String]
54
+ attr_reader :lifecycle_state
55
+
56
+ # **[Required]** The date and time the masking policy was last updated, in the format defined by [RFC3339](https://tools.ietf.org/html/rfc3339)
57
+ #
58
+ # @return [DateTime]
59
+ attr_accessor :time_updated
60
+
61
+ # The description of the masking policy.
62
+ # @return [String]
63
+ attr_accessor :description
64
+
65
+ # **[Required]** Indicates if the temporary tables created during a masking operation should be dropped after masking. It's enabled by default.
66
+ # Set this attribute to false to preserve the temporary tables. Masking creates temporary tables that map the original sensitive
67
+ # data values to mask values. By default, these temporary tables are dropped after masking. But, in some cases, you may want
68
+ # to preserve this information to track how masking changed your data. Note that doing so compromises security. These tables
69
+ # must be dropped before the database is available for unprivileged users.
70
+ #
71
+ # @return [BOOLEAN]
72
+ attr_accessor :is_drop_temp_tables_enabled
73
+
74
+ # **[Required]** Indicates if redo logging is enabled during a masking operation. It's disabled by default. Set this attribute to true to
75
+ # enable redo logging. By default, masking disables redo logging and flashback logging to purge any original unmasked
76
+ # data from logs. However, in certain circumstances when you only want to test masking, rollback changes, and retry masking,
77
+ # you could enable logging and use a flashback database to retrieve the original unmasked data after it has been masked.
78
+ #
79
+ # @return [BOOLEAN]
80
+ attr_accessor :is_redo_logging_enabled
81
+
82
+ # **[Required]** Indicates if statistics gathering is enabled. It's enabled by default. Set this attribute to false to disable statistics
83
+ # gathering. The masking process gathers statistics on masked database tables after masking completes.
84
+ #
85
+ # @return [BOOLEAN]
86
+ attr_accessor :is_refresh_stats_enabled
87
+
88
+ # **[Required]** Specifies options to enable parallel execution when running data masking. Allowed values are 'NONE' (no parallelism),
89
+ # 'DEFAULT' (the Oracle Database computes the optimum degree of parallelism) or an integer value to be used as the degree
90
+ # of parallelism. Parallel execution helps effectively use multiple CPUsi and improve masking performance. Refer to the
91
+ # Oracle Database parallel execution framework when choosing an explicit degree of parallelism.
92
+ #
93
+ # @return [String]
94
+ attr_accessor :parallel_degree
95
+
96
+ # **[Required]** Specifies how to recompile invalid objects post data masking. Allowed values are 'SERIAL' (recompile in serial),
97
+ # 'PARALLEL' (recompile in parallel), 'NONE' (do not recompile). If it's set to PARALLEL, the value of parallelDegree
98
+ # attribute is used.
99
+ #
100
+ # @return [String]
101
+ attr_reader :recompile
102
+
103
+ # A pre-masking script, which can contain SQL and PL/SQL statements. It's executed before
104
+ # the core masking script generated using the masking policy. It's usually used to perform
105
+ # any preparation or prerequisite work before masking data.
106
+ #
107
+ # @return [String]
108
+ attr_accessor :pre_masking_script
109
+
110
+ # A post-masking script, which can contain SQL and PL/SQL statements. It's executed after
111
+ # the core masking script generated using the masking policy. It's usually used to perform
112
+ # additional transformation or cleanup work after masking.
113
+ #
114
+ # @return [String]
115
+ attr_accessor :post_masking_script
116
+
117
+ # @return [OCI::DataSafe::Models::ColumnSourceDetails]
118
+ attr_accessor :column_source
119
+
120
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm)
121
+ #
122
+ # Example: `{\"Department\": \"Finance\"}`
123
+ #
124
+ # @return [Hash<String, String>]
125
+ attr_accessor :freeform_tags
126
+
127
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm)
128
+ #
129
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
130
+ #
131
+ # @return [Hash<String, Hash<String, Object>>]
132
+ attr_accessor :defined_tags
133
+
134
+ # Attribute mapping from ruby-style variable name to JSON key.
135
+ def self.attribute_map
136
+ {
137
+ # rubocop:disable Style/SymbolLiteral
138
+ 'id': :'id',
139
+ 'compartment_id': :'compartmentId',
140
+ 'display_name': :'displayName',
141
+ 'time_created': :'timeCreated',
142
+ 'lifecycle_state': :'lifecycleState',
143
+ 'time_updated': :'timeUpdated',
144
+ 'description': :'description',
145
+ 'is_drop_temp_tables_enabled': :'isDropTempTablesEnabled',
146
+ 'is_redo_logging_enabled': :'isRedoLoggingEnabled',
147
+ 'is_refresh_stats_enabled': :'isRefreshStatsEnabled',
148
+ 'parallel_degree': :'parallelDegree',
149
+ 'recompile': :'recompile',
150
+ 'pre_masking_script': :'preMaskingScript',
151
+ 'post_masking_script': :'postMaskingScript',
152
+ 'column_source': :'columnSource',
153
+ 'freeform_tags': :'freeformTags',
154
+ 'defined_tags': :'definedTags'
155
+ # rubocop:enable Style/SymbolLiteral
156
+ }
157
+ end
158
+
159
+ # Attribute type mapping.
160
+ def self.swagger_types
161
+ {
162
+ # rubocop:disable Style/SymbolLiteral
163
+ 'id': :'String',
164
+ 'compartment_id': :'String',
165
+ 'display_name': :'String',
166
+ 'time_created': :'DateTime',
167
+ 'lifecycle_state': :'String',
168
+ 'time_updated': :'DateTime',
169
+ 'description': :'String',
170
+ 'is_drop_temp_tables_enabled': :'BOOLEAN',
171
+ 'is_redo_logging_enabled': :'BOOLEAN',
172
+ 'is_refresh_stats_enabled': :'BOOLEAN',
173
+ 'parallel_degree': :'String',
174
+ 'recompile': :'String',
175
+ 'pre_masking_script': :'String',
176
+ 'post_masking_script': :'String',
177
+ 'column_source': :'OCI::DataSafe::Models::ColumnSourceDetails',
178
+ 'freeform_tags': :'Hash<String, String>',
179
+ 'defined_tags': :'Hash<String, Hash<String, Object>>'
180
+ # rubocop:enable Style/SymbolLiteral
181
+ }
182
+ end
183
+
184
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
185
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
186
+
187
+
188
+ # Initializes the object
189
+ # @param [Hash] attributes Model attributes in the form of hash
190
+ # @option attributes [String] :id The value to assign to the {#id} property
191
+ # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
192
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
193
+ # @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
194
+ # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
195
+ # @option attributes [DateTime] :time_updated The value to assign to the {#time_updated} property
196
+ # @option attributes [String] :description The value to assign to the {#description} property
197
+ # @option attributes [BOOLEAN] :is_drop_temp_tables_enabled The value to assign to the {#is_drop_temp_tables_enabled} property
198
+ # @option attributes [BOOLEAN] :is_redo_logging_enabled The value to assign to the {#is_redo_logging_enabled} property
199
+ # @option attributes [BOOLEAN] :is_refresh_stats_enabled The value to assign to the {#is_refresh_stats_enabled} property
200
+ # @option attributes [String] :parallel_degree The value to assign to the {#parallel_degree} property
201
+ # @option attributes [String] :recompile The value to assign to the {#recompile} property
202
+ # @option attributes [String] :pre_masking_script The value to assign to the {#pre_masking_script} property
203
+ # @option attributes [String] :post_masking_script The value to assign to the {#post_masking_script} property
204
+ # @option attributes [OCI::DataSafe::Models::ColumnSourceDetails] :column_source The value to assign to the {#column_source} property
205
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
206
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
207
+ def initialize(attributes = {})
208
+ return unless attributes.is_a?(Hash)
209
+
210
+ # convert string to symbol for hash key
211
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
212
+
213
+ self.id = attributes[:'id'] if attributes[:'id']
214
+
215
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
216
+
217
+ raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
218
+
219
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
220
+
221
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
222
+
223
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
224
+
225
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
226
+
227
+ self.time_created = attributes[:'timeCreated'] if attributes[:'timeCreated']
228
+
229
+ raise 'You cannot provide both :timeCreated and :time_created' if attributes.key?(:'timeCreated') && attributes.key?(:'time_created')
230
+
231
+ self.time_created = attributes[:'time_created'] if attributes[:'time_created']
232
+
233
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
234
+
235
+ raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
236
+
237
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
238
+
239
+ self.time_updated = attributes[:'timeUpdated'] if attributes[:'timeUpdated']
240
+
241
+ raise 'You cannot provide both :timeUpdated and :time_updated' if attributes.key?(:'timeUpdated') && attributes.key?(:'time_updated')
242
+
243
+ self.time_updated = attributes[:'time_updated'] if attributes[:'time_updated']
244
+
245
+ self.description = attributes[:'description'] if attributes[:'description']
246
+
247
+ self.is_drop_temp_tables_enabled = attributes[:'isDropTempTablesEnabled'] unless attributes[:'isDropTempTablesEnabled'].nil?
248
+
249
+ raise 'You cannot provide both :isDropTempTablesEnabled and :is_drop_temp_tables_enabled' if attributes.key?(:'isDropTempTablesEnabled') && attributes.key?(:'is_drop_temp_tables_enabled')
250
+
251
+ self.is_drop_temp_tables_enabled = attributes[:'is_drop_temp_tables_enabled'] unless attributes[:'is_drop_temp_tables_enabled'].nil?
252
+
253
+ self.is_redo_logging_enabled = attributes[:'isRedoLoggingEnabled'] unless attributes[:'isRedoLoggingEnabled'].nil?
254
+
255
+ raise 'You cannot provide both :isRedoLoggingEnabled and :is_redo_logging_enabled' if attributes.key?(:'isRedoLoggingEnabled') && attributes.key?(:'is_redo_logging_enabled')
256
+
257
+ self.is_redo_logging_enabled = attributes[:'is_redo_logging_enabled'] unless attributes[:'is_redo_logging_enabled'].nil?
258
+
259
+ self.is_refresh_stats_enabled = attributes[:'isRefreshStatsEnabled'] unless attributes[:'isRefreshStatsEnabled'].nil?
260
+
261
+ raise 'You cannot provide both :isRefreshStatsEnabled and :is_refresh_stats_enabled' if attributes.key?(:'isRefreshStatsEnabled') && attributes.key?(:'is_refresh_stats_enabled')
262
+
263
+ self.is_refresh_stats_enabled = attributes[:'is_refresh_stats_enabled'] unless attributes[:'is_refresh_stats_enabled'].nil?
264
+
265
+ self.parallel_degree = attributes[:'parallelDegree'] if attributes[:'parallelDegree']
266
+
267
+ raise 'You cannot provide both :parallelDegree and :parallel_degree' if attributes.key?(:'parallelDegree') && attributes.key?(:'parallel_degree')
268
+
269
+ self.parallel_degree = attributes[:'parallel_degree'] if attributes[:'parallel_degree']
270
+
271
+ self.recompile = attributes[:'recompile'] if attributes[:'recompile']
272
+
273
+ self.pre_masking_script = attributes[:'preMaskingScript'] if attributes[:'preMaskingScript']
274
+
275
+ raise 'You cannot provide both :preMaskingScript and :pre_masking_script' if attributes.key?(:'preMaskingScript') && attributes.key?(:'pre_masking_script')
276
+
277
+ self.pre_masking_script = attributes[:'pre_masking_script'] if attributes[:'pre_masking_script']
278
+
279
+ self.post_masking_script = attributes[:'postMaskingScript'] if attributes[:'postMaskingScript']
280
+
281
+ raise 'You cannot provide both :postMaskingScript and :post_masking_script' if attributes.key?(:'postMaskingScript') && attributes.key?(:'post_masking_script')
282
+
283
+ self.post_masking_script = attributes[:'post_masking_script'] if attributes[:'post_masking_script']
284
+
285
+ self.column_source = attributes[:'columnSource'] if attributes[:'columnSource']
286
+
287
+ raise 'You cannot provide both :columnSource and :column_source' if attributes.key?(:'columnSource') && attributes.key?(:'column_source')
288
+
289
+ self.column_source = attributes[:'column_source'] if attributes[:'column_source']
290
+
291
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
292
+
293
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
294
+
295
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
296
+
297
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
298
+
299
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
300
+
301
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
302
+ end
303
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
304
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
305
+
306
+ # Custom attribute writer method checking allowed values (enum).
307
+ # @param [Object] lifecycle_state Object to be assigned
308
+ def lifecycle_state=(lifecycle_state)
309
+ # rubocop:disable Style/ConditionalAssignment
310
+ if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
311
+ OCI.logger.debug("Unknown value for 'lifecycle_state' [" + lifecycle_state + "]. Mapping to 'LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE'") if OCI.logger
312
+ @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
313
+ else
314
+ @lifecycle_state = lifecycle_state
315
+ end
316
+ # rubocop:enable Style/ConditionalAssignment
317
+ end
318
+
319
+ # Custom attribute writer method checking allowed values (enum).
320
+ # @param [Object] recompile Object to be assigned
321
+ def recompile=(recompile)
322
+ # rubocop:disable Style/ConditionalAssignment
323
+ if recompile && !RECOMPILE_ENUM.include?(recompile)
324
+ OCI.logger.debug("Unknown value for 'recompile' [" + recompile + "]. Mapping to 'RECOMPILE_UNKNOWN_ENUM_VALUE'") if OCI.logger
325
+ @recompile = RECOMPILE_UNKNOWN_ENUM_VALUE
326
+ else
327
+ @recompile = recompile
328
+ end
329
+ # rubocop:enable Style/ConditionalAssignment
330
+ end
331
+
332
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
333
+
334
+
335
+ # Checks equality by comparing each attribute.
336
+ # @param [Object] other the other object to be compared
337
+ def ==(other)
338
+ return true if equal?(other)
339
+
340
+ self.class == other.class &&
341
+ id == other.id &&
342
+ compartment_id == other.compartment_id &&
343
+ display_name == other.display_name &&
344
+ time_created == other.time_created &&
345
+ lifecycle_state == other.lifecycle_state &&
346
+ time_updated == other.time_updated &&
347
+ description == other.description &&
348
+ is_drop_temp_tables_enabled == other.is_drop_temp_tables_enabled &&
349
+ is_redo_logging_enabled == other.is_redo_logging_enabled &&
350
+ is_refresh_stats_enabled == other.is_refresh_stats_enabled &&
351
+ parallel_degree == other.parallel_degree &&
352
+ recompile == other.recompile &&
353
+ pre_masking_script == other.pre_masking_script &&
354
+ post_masking_script == other.post_masking_script &&
355
+ column_source == other.column_source &&
356
+ freeform_tags == other.freeform_tags &&
357
+ defined_tags == other.defined_tags
358
+ end
359
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
360
+
361
+ # @see the `==` method
362
+ # @param [Object] other the other object to be compared
363
+ def eql?(other)
364
+ self == other
365
+ end
366
+
367
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
368
+
369
+
370
+ # Calculates hash code according to all attributes.
371
+ # @return [Fixnum] Hash code
372
+ def hash
373
+ [id, compartment_id, display_name, time_created, lifecycle_state, time_updated, description, is_drop_temp_tables_enabled, is_redo_logging_enabled, is_refresh_stats_enabled, parallel_degree, recompile, pre_masking_script, post_masking_script, column_source, freeform_tags, defined_tags].hash
374
+ end
375
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
376
+
377
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
378
+
379
+
380
+ # Builds the object from hash
381
+ # @param [Hash] attributes Model attributes in the form of hash
382
+ # @return [Object] Returns the model itself
383
+ def build_from_hash(attributes)
384
+ return nil unless attributes.is_a?(Hash)
385
+
386
+ self.class.swagger_types.each_pair do |key, type|
387
+ if type =~ /^Array<(.*)>/i
388
+ # check to ensure the input is an array given that the the attribute
389
+ # is documented as an array but the input is not
390
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
391
+ public_method("#{key}=").call(
392
+ attributes[self.class.attribute_map[key]]
393
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
394
+ )
395
+ end
396
+ elsif !attributes[self.class.attribute_map[key]].nil?
397
+ public_method("#{key}=").call(
398
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
399
+ )
400
+ end
401
+ # or else data not found in attributes(hash), not an issue as the data can be optional
402
+ end
403
+
404
+ self
405
+ end
406
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
407
+
408
+ # Returns the string representation of the object
409
+ # @return [String] String presentation of the object
410
+ def to_s
411
+ to_hash.to_s
412
+ end
413
+
414
+ # Returns the object in the form of hash
415
+ # @return [Hash] Returns the object in the form of hash
416
+ def to_hash
417
+ hash = {}
418
+ self.class.attribute_map.each_pair do |attr, param|
419
+ value = public_method(attr).call
420
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
421
+
422
+ hash[param] = _to_hash(value)
423
+ end
424
+ hash
425
+ end
426
+
427
+ private
428
+
429
+ # Outputs non-array value in the form of hash
430
+ # For object, use to_hash. Otherwise, just return the value
431
+ # @param [Object] value Any valid value
432
+ # @return [Hash] Returns the value in the form of hash
433
+ def _to_hash(value)
434
+ if value.is_a?(Array)
435
+ value.compact.map { |v| _to_hash(v) }
436
+ elsif value.is_a?(Hash)
437
+ {}.tap do |hash|
438
+ value.each { |k, v| hash[k] = _to_hash(v) }
439
+ end
440
+ elsif value.respond_to? :to_hash
441
+ value.to_hash
442
+ else
443
+ value
444
+ end
445
+ end
446
+ end
447
+ end
448
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength