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,243 @@
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 format entry is part of a masking format and defines the logic to mask data. A format
10
+ # entry can be a basic masking format such as Random Number, or it can be a library masking
11
+ # format. If a masking format has more than one format entries, the combined output of all
12
+ # the format entries is used for masking.
13
+ #
14
+ # This class has direct subclasses. If you are using this class as input to a service operations then you should favor using a subclass over the base class
15
+ class DataSafe::Models::FormatEntry
16
+ TYPE_ENUM = [
17
+ TYPE_DELETE_ROWS = 'DELETE_ROWS'.freeze,
18
+ TYPE_DETERMINISTIC_SUBSTITUTION = 'DETERMINISTIC_SUBSTITUTION'.freeze,
19
+ TYPE_DETERMINISTIC_ENCRYPTION = 'DETERMINISTIC_ENCRYPTION'.freeze,
20
+ TYPE_DETERMINISTIC_ENCRYPTION_DATE = 'DETERMINISTIC_ENCRYPTION_DATE'.freeze,
21
+ TYPE_FIXED_NUMBER = 'FIXED_NUMBER'.freeze,
22
+ TYPE_FIXED_STRING = 'FIXED_STRING'.freeze,
23
+ TYPE_LIBRARY_MASKING_FORMAT = 'LIBRARY_MASKING_FORMAT'.freeze,
24
+ TYPE_NULL_VALUE = 'NULL_VALUE'.freeze,
25
+ TYPE_POST_PROCESSING_FUNCTION = 'POST_PROCESSING_FUNCTION'.freeze,
26
+ TYPE_PRESERVE_ORIGINAL_DATA = 'PRESERVE_ORIGINAL_DATA'.freeze,
27
+ TYPE_RANDOM_DATE = 'RANDOM_DATE'.freeze,
28
+ TYPE_RANDOM_DECIMAL_NUMBER = 'RANDOM_DECIMAL_NUMBER'.freeze,
29
+ TYPE_RANDOM_DIGITS = 'RANDOM_DIGITS'.freeze,
30
+ TYPE_RANDOM_LIST = 'RANDOM_LIST'.freeze,
31
+ TYPE_RANDOM_NUMBER = 'RANDOM_NUMBER'.freeze,
32
+ TYPE_RANDOM_STRING = 'RANDOM_STRING'.freeze,
33
+ TYPE_RANDOM_SUBSTITUTION = 'RANDOM_SUBSTITUTION'.freeze,
34
+ TYPE_REGULAR_EXPRESSION = 'REGULAR_EXPRESSION'.freeze,
35
+ TYPE_SHUFFLE = 'SHUFFLE'.freeze,
36
+ TYPE_SQL_EXPRESSION = 'SQL_EXPRESSION'.freeze,
37
+ TYPE_SUBSTRING = 'SUBSTRING'.freeze,
38
+ TYPE_TRUNCATE_TABLE = 'TRUNCATE_TABLE'.freeze,
39
+ TYPE_USER_DEFINED_FUNCTION = 'USER_DEFINED_FUNCTION'.freeze,
40
+ TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
41
+ ].freeze
42
+
43
+ # **[Required]** The type of the format entry.
44
+ # @return [String]
45
+ attr_reader :type
46
+
47
+ # The description of the format entry.
48
+ # @return [String]
49
+ attr_accessor :description
50
+
51
+ # Attribute mapping from ruby-style variable name to JSON key.
52
+ def self.attribute_map
53
+ {
54
+ # rubocop:disable Style/SymbolLiteral
55
+ 'type': :'type',
56
+ 'description': :'description'
57
+ # rubocop:enable Style/SymbolLiteral
58
+ }
59
+ end
60
+
61
+ # Attribute type mapping.
62
+ def self.swagger_types
63
+ {
64
+ # rubocop:disable Style/SymbolLiteral
65
+ 'type': :'String',
66
+ 'description': :'String'
67
+ # rubocop:enable Style/SymbolLiteral
68
+ }
69
+ end
70
+
71
+ # rubocop:disable Metrics/CyclomaticComplexity, Layout/EmptyLines, Metrics/PerceivedComplexity, Metrics/AbcSize
72
+
73
+
74
+ # Given the hash representation of a subtype of this class,
75
+ # use the info in the hash to return the class of the subtype.
76
+ def self.get_subtype(object_hash)
77
+ type = object_hash[:'type'] # rubocop:disable Style/SymbolLiteral
78
+
79
+ return 'OCI::DataSafe::Models::RandomStringFormatEntry' if type == 'RANDOM_STRING'
80
+ return 'OCI::DataSafe::Models::DeterministicSubstitutionFormatEntry' if type == 'DETERMINISTIC_SUBSTITUTION'
81
+ return 'OCI::DataSafe::Models::DeterministicEncryptionFormatEntry' if type == 'DETERMINISTIC_ENCRYPTION'
82
+ return 'OCI::DataSafe::Models::RandomDecimalNumberFormatEntry' if type == 'RANDOM_DECIMAL_NUMBER'
83
+ return 'OCI::DataSafe::Models::RandomSubstitutionFormatEntry' if type == 'RANDOM_SUBSTITUTION'
84
+ return 'OCI::DataSafe::Models::PPFFormatEntry' if type == 'POST_PROCESSING_FUNCTION'
85
+ return 'OCI::DataSafe::Models::NullValueFormatEntry' if type == 'NULL_VALUE'
86
+ return 'OCI::DataSafe::Models::FixedNumberFormatEntry' if type == 'FIXED_NUMBER'
87
+ return 'OCI::DataSafe::Models::RegularExpressionFormatEntry' if type == 'REGULAR_EXPRESSION'
88
+ return 'OCI::DataSafe::Models::UDFFormatEntry' if type == 'USER_DEFINED_FUNCTION'
89
+ return 'OCI::DataSafe::Models::ShuffleFormatEntry' if type == 'SHUFFLE'
90
+ return 'OCI::DataSafe::Models::FixedStringFormatEntry' if type == 'FIXED_STRING'
91
+ return 'OCI::DataSafe::Models::TruncateTableFormatEntry' if type == 'TRUNCATE_TABLE'
92
+ return 'OCI::DataSafe::Models::LibraryMaskingFormatEntry' if type == 'LIBRARY_MASKING_FORMAT'
93
+ return 'OCI::DataSafe::Models::SQLExpressionFormatEntry' if type == 'SQL_EXPRESSION'
94
+ return 'OCI::DataSafe::Models::DeterministicEncryptionDateFormatEntry' if type == 'DETERMINISTIC_ENCRYPTION_DATE'
95
+ return 'OCI::DataSafe::Models::RandomDigitsFormatEntry' if type == 'RANDOM_DIGITS'
96
+ return 'OCI::DataSafe::Models::DeleteRowsFormatEntry' if type == 'DELETE_ROWS'
97
+ return 'OCI::DataSafe::Models::SubstringFormatEntry' if type == 'SUBSTRING'
98
+ return 'OCI::DataSafe::Models::RandomNumberFormatEntry' if type == 'RANDOM_NUMBER'
99
+ return 'OCI::DataSafe::Models::PreserveOriginalDataFormatEntry' if type == 'PRESERVE_ORIGINAL_DATA'
100
+ return 'OCI::DataSafe::Models::RandomDateFormatEntry' if type == 'RANDOM_DATE'
101
+ return 'OCI::DataSafe::Models::RandomListFormatEntry' if type == 'RANDOM_LIST'
102
+
103
+ # TODO: Log a warning when the subtype is not found.
104
+ 'OCI::DataSafe::Models::FormatEntry'
105
+ end
106
+ # rubocop:enable Metrics/CyclomaticComplexity, Layout/EmptyLines, Metrics/PerceivedComplexity, Metrics/AbcSize
107
+
108
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
109
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
110
+
111
+
112
+ # Initializes the object
113
+ # @param [Hash] attributes Model attributes in the form of hash
114
+ # @option attributes [String] :type The value to assign to the {#type} property
115
+ # @option attributes [String] :description The value to assign to the {#description} property
116
+ def initialize(attributes = {})
117
+ return unless attributes.is_a?(Hash)
118
+
119
+ # convert string to symbol for hash key
120
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
121
+
122
+ self.type = attributes[:'type'] if attributes[:'type']
123
+
124
+ self.description = attributes[:'description'] if attributes[:'description']
125
+ end
126
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
127
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
128
+
129
+ # Custom attribute writer method checking allowed values (enum).
130
+ # @param [Object] type Object to be assigned
131
+ def type=(type)
132
+ # rubocop:disable Style/ConditionalAssignment
133
+ if type && !TYPE_ENUM.include?(type)
134
+ OCI.logger.debug("Unknown value for 'type' [" + type + "]. Mapping to 'TYPE_UNKNOWN_ENUM_VALUE'") if OCI.logger
135
+ @type = TYPE_UNKNOWN_ENUM_VALUE
136
+ else
137
+ @type = type
138
+ end
139
+ # rubocop:enable Style/ConditionalAssignment
140
+ end
141
+
142
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
143
+
144
+
145
+ # Checks equality by comparing each attribute.
146
+ # @param [Object] other the other object to be compared
147
+ def ==(other)
148
+ return true if equal?(other)
149
+
150
+ self.class == other.class &&
151
+ type == other.type &&
152
+ description == other.description
153
+ end
154
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
155
+
156
+ # @see the `==` method
157
+ # @param [Object] other the other object to be compared
158
+ def eql?(other)
159
+ self == other
160
+ end
161
+
162
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
163
+
164
+
165
+ # Calculates hash code according to all attributes.
166
+ # @return [Fixnum] Hash code
167
+ def hash
168
+ [type, description].hash
169
+ end
170
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
171
+
172
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
173
+
174
+
175
+ # Builds the object from hash
176
+ # @param [Hash] attributes Model attributes in the form of hash
177
+ # @return [Object] Returns the model itself
178
+ def build_from_hash(attributes)
179
+ return nil unless attributes.is_a?(Hash)
180
+
181
+ self.class.swagger_types.each_pair do |key, type|
182
+ if type =~ /^Array<(.*)>/i
183
+ # check to ensure the input is an array given that the the attribute
184
+ # is documented as an array but the input is not
185
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
186
+ public_method("#{key}=").call(
187
+ attributes[self.class.attribute_map[key]]
188
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
189
+ )
190
+ end
191
+ elsif !attributes[self.class.attribute_map[key]].nil?
192
+ public_method("#{key}=").call(
193
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
194
+ )
195
+ end
196
+ # or else data not found in attributes(hash), not an issue as the data can be optional
197
+ end
198
+
199
+ self
200
+ end
201
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
202
+
203
+ # Returns the string representation of the object
204
+ # @return [String] String presentation of the object
205
+ def to_s
206
+ to_hash.to_s
207
+ end
208
+
209
+ # Returns the object in the form of hash
210
+ # @return [Hash] Returns the object in the form of hash
211
+ def to_hash
212
+ hash = {}
213
+ self.class.attribute_map.each_pair do |attr, param|
214
+ value = public_method(attr).call
215
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
216
+
217
+ hash[param] = _to_hash(value)
218
+ end
219
+ hash
220
+ end
221
+
222
+ private
223
+
224
+ # Outputs non-array value in the form of hash
225
+ # For object, use to_hash. Otherwise, just return the value
226
+ # @param [Object] value Any valid value
227
+ # @return [Hash] Returns the value in the form of hash
228
+ def _to_hash(value)
229
+ if value.is_a?(Array)
230
+ value.compact.map { |v| _to_hash(v) }
231
+ elsif value.is_a?(Hash)
232
+ {}.tap do |hash|
233
+ value.each { |k, v| hash[k] = _to_hash(v) }
234
+ end
235
+ elsif value.respond_to? :to_hash
236
+ value.to_hash
237
+ else
238
+ value
239
+ end
240
+ end
241
+ end
242
+ end
243
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -0,0 +1,32 @@
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
+ FORMAT_ENTRY_TYPE_ENUM = [
7
+ FORMAT_ENTRY_TYPE_DELETE_ROWS = 'DELETE_ROWS'.freeze,
8
+ FORMAT_ENTRY_TYPE_DETERMINISTIC_SUBSTITUTION = 'DETERMINISTIC_SUBSTITUTION'.freeze,
9
+ FORMAT_ENTRY_TYPE_DETERMINISTIC_ENCRYPTION = 'DETERMINISTIC_ENCRYPTION'.freeze,
10
+ FORMAT_ENTRY_TYPE_DETERMINISTIC_ENCRYPTION_DATE = 'DETERMINISTIC_ENCRYPTION_DATE'.freeze,
11
+ FORMAT_ENTRY_TYPE_FIXED_NUMBER = 'FIXED_NUMBER'.freeze,
12
+ FORMAT_ENTRY_TYPE_FIXED_STRING = 'FIXED_STRING'.freeze,
13
+ FORMAT_ENTRY_TYPE_LIBRARY_MASKING_FORMAT = 'LIBRARY_MASKING_FORMAT'.freeze,
14
+ FORMAT_ENTRY_TYPE_NULL_VALUE = 'NULL_VALUE'.freeze,
15
+ FORMAT_ENTRY_TYPE_POST_PROCESSING_FUNCTION = 'POST_PROCESSING_FUNCTION'.freeze,
16
+ FORMAT_ENTRY_TYPE_PRESERVE_ORIGINAL_DATA = 'PRESERVE_ORIGINAL_DATA'.freeze,
17
+ FORMAT_ENTRY_TYPE_RANDOM_DATE = 'RANDOM_DATE'.freeze,
18
+ FORMAT_ENTRY_TYPE_RANDOM_DECIMAL_NUMBER = 'RANDOM_DECIMAL_NUMBER'.freeze,
19
+ FORMAT_ENTRY_TYPE_RANDOM_DIGITS = 'RANDOM_DIGITS'.freeze,
20
+ FORMAT_ENTRY_TYPE_RANDOM_LIST = 'RANDOM_LIST'.freeze,
21
+ FORMAT_ENTRY_TYPE_RANDOM_NUMBER = 'RANDOM_NUMBER'.freeze,
22
+ FORMAT_ENTRY_TYPE_RANDOM_STRING = 'RANDOM_STRING'.freeze,
23
+ FORMAT_ENTRY_TYPE_RANDOM_SUBSTITUTION = 'RANDOM_SUBSTITUTION'.freeze,
24
+ FORMAT_ENTRY_TYPE_REGULAR_EXPRESSION = 'REGULAR_EXPRESSION'.freeze,
25
+ FORMAT_ENTRY_TYPE_SHUFFLE = 'SHUFFLE'.freeze,
26
+ FORMAT_ENTRY_TYPE_SQL_EXPRESSION = 'SQL_EXPRESSION'.freeze,
27
+ FORMAT_ENTRY_TYPE_SUBSTRING = 'SUBSTRING'.freeze,
28
+ FORMAT_ENTRY_TYPE_TRUNCATE_TABLE = 'TRUNCATE_TABLE'.freeze,
29
+ FORMAT_ENTRY_TYPE_USER_DEFINED_FUNCTION = 'USER_DEFINED_FUNCTION'.freeze
30
+ ].freeze
31
+ end
32
+ end
@@ -0,0 +1,170 @@
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
+ # Summary of a masking format.
9
+ class DataSafe::Models::FormatSummary
10
+ # The OCID of the masking format.
11
+ # @return [String]
12
+ attr_accessor :id
13
+
14
+ # **[Required]** The name of the masking format.
15
+ # @return [String]
16
+ attr_accessor :name
17
+
18
+ # The description of the masking format.
19
+ # @return [String]
20
+ attr_accessor :description
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ # rubocop:disable Style/SymbolLiteral
26
+ 'id': :'id',
27
+ 'name': :'name',
28
+ 'description': :'description'
29
+ # rubocop:enable Style/SymbolLiteral
30
+ }
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.swagger_types
35
+ {
36
+ # rubocop:disable Style/SymbolLiteral
37
+ 'id': :'String',
38
+ 'name': :'String',
39
+ 'description': :'String'
40
+ # rubocop:enable Style/SymbolLiteral
41
+ }
42
+ end
43
+
44
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
45
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
46
+
47
+
48
+ # Initializes the object
49
+ # @param [Hash] attributes Model attributes in the form of hash
50
+ # @option attributes [String] :id The value to assign to the {#id} property
51
+ # @option attributes [String] :name The value to assign to the {#name} property
52
+ # @option attributes [String] :description The value to assign to the {#description} property
53
+ def initialize(attributes = {})
54
+ return unless attributes.is_a?(Hash)
55
+
56
+ # convert string to symbol for hash key
57
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
58
+
59
+ self.id = attributes[:'id'] if attributes[:'id']
60
+
61
+ self.name = attributes[:'name'] if attributes[:'name']
62
+
63
+ self.description = attributes[:'description'] if attributes[:'description']
64
+ end
65
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
66
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
67
+
68
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
69
+
70
+
71
+ # Checks equality by comparing each attribute.
72
+ # @param [Object] other the other object to be compared
73
+ def ==(other)
74
+ return true if equal?(other)
75
+
76
+ self.class == other.class &&
77
+ id == other.id &&
78
+ name == other.name &&
79
+ description == other.description
80
+ end
81
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
82
+
83
+ # @see the `==` method
84
+ # @param [Object] other the other object to be compared
85
+ def eql?(other)
86
+ self == other
87
+ end
88
+
89
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
90
+
91
+
92
+ # Calculates hash code according to all attributes.
93
+ # @return [Fixnum] Hash code
94
+ def hash
95
+ [id, name, description].hash
96
+ end
97
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
98
+
99
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
100
+
101
+
102
+ # Builds the object from hash
103
+ # @param [Hash] attributes Model attributes in the form of hash
104
+ # @return [Object] Returns the model itself
105
+ def build_from_hash(attributes)
106
+ return nil unless attributes.is_a?(Hash)
107
+
108
+ self.class.swagger_types.each_pair do |key, type|
109
+ if type =~ /^Array<(.*)>/i
110
+ # check to ensure the input is an array given that the the attribute
111
+ # is documented as an array but the input is not
112
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
113
+ public_method("#{key}=").call(
114
+ attributes[self.class.attribute_map[key]]
115
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
116
+ )
117
+ end
118
+ elsif !attributes[self.class.attribute_map[key]].nil?
119
+ public_method("#{key}=").call(
120
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
121
+ )
122
+ end
123
+ # or else data not found in attributes(hash), not an issue as the data can be optional
124
+ end
125
+
126
+ self
127
+ end
128
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
129
+
130
+ # Returns the string representation of the object
131
+ # @return [String] String presentation of the object
132
+ def to_s
133
+ to_hash.to_s
134
+ end
135
+
136
+ # Returns the object in the form of hash
137
+ # @return [Hash] Returns the object in the form of hash
138
+ def to_hash
139
+ hash = {}
140
+ self.class.attribute_map.each_pair do |attr, param|
141
+ value = public_method(attr).call
142
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
143
+
144
+ hash[param] = _to_hash(value)
145
+ end
146
+ hash
147
+ end
148
+
149
+ private
150
+
151
+ # Outputs non-array value in the form of hash
152
+ # For object, use to_hash. Otherwise, just return the value
153
+ # @param [Object] value Any valid value
154
+ # @return [Hash] Returns the value in the form of hash
155
+ def _to_hash(value)
156
+ if value.is_a?(Array)
157
+ value.compact.map { |v| _to_hash(v) }
158
+ elsif value.is_a?(Hash)
159
+ {}.tap do |hash|
160
+ value.each { |k, v| hash[k] = _to_hash(v) }
161
+ end
162
+ elsif value.respond_to? :to_hash
163
+ value.to_hash
164
+ else
165
+ value
166
+ end
167
+ end
168
+ end
169
+ end
170
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -0,0 +1,174 @@
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 list of basic masking formats compatible with a supported data type.
9
+ class DataSafe::Models::FormatsForDataType
10
+ # **[Required]** The data type category, which can be one of the following -
11
+ # Character - Includes CHAR, NCHAR, VARCHAR2, and NVARCHAR2
12
+ # Numeric - Includes NUMBER, FLOAT, RAW, BINARY_FLOAT, and BINARY_DOUBLE
13
+ # Date - Includes DATE and TIMESTAMP
14
+ # LOB - Includes BLOB, CLOB, and NCLOB
15
+ # All - Includes all the supported data types
16
+ #
17
+ # @return [String]
18
+ attr_accessor :data_type
19
+
20
+ # An array of the basic masking formats compatible with the data type category.
21
+ # @return [Array<OCI::DataSafe::Models::FormatSummary>]
22
+ attr_accessor :masking_formats
23
+
24
+ # Attribute mapping from ruby-style variable name to JSON key.
25
+ def self.attribute_map
26
+ {
27
+ # rubocop:disable Style/SymbolLiteral
28
+ 'data_type': :'dataType',
29
+ 'masking_formats': :'maskingFormats'
30
+ # rubocop:enable Style/SymbolLiteral
31
+ }
32
+ end
33
+
34
+ # Attribute type mapping.
35
+ def self.swagger_types
36
+ {
37
+ # rubocop:disable Style/SymbolLiteral
38
+ 'data_type': :'String',
39
+ 'masking_formats': :'Array<OCI::DataSafe::Models::FormatSummary>'
40
+ # rubocop:enable Style/SymbolLiteral
41
+ }
42
+ end
43
+
44
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
45
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
46
+
47
+
48
+ # Initializes the object
49
+ # @param [Hash] attributes Model attributes in the form of hash
50
+ # @option attributes [String] :data_type The value to assign to the {#data_type} property
51
+ # @option attributes [Array<OCI::DataSafe::Models::FormatSummary>] :masking_formats The value to assign to the {#masking_formats} property
52
+ def initialize(attributes = {})
53
+ return unless attributes.is_a?(Hash)
54
+
55
+ # convert string to symbol for hash key
56
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
57
+
58
+ self.data_type = attributes[:'dataType'] if attributes[:'dataType']
59
+
60
+ raise 'You cannot provide both :dataType and :data_type' if attributes.key?(:'dataType') && attributes.key?(:'data_type')
61
+
62
+ self.data_type = attributes[:'data_type'] if attributes[:'data_type']
63
+
64
+ self.masking_formats = attributes[:'maskingFormats'] if attributes[:'maskingFormats']
65
+
66
+ raise 'You cannot provide both :maskingFormats and :masking_formats' if attributes.key?(:'maskingFormats') && attributes.key?(:'masking_formats')
67
+
68
+ self.masking_formats = attributes[:'masking_formats'] if attributes[:'masking_formats']
69
+ end
70
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
71
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
72
+
73
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
74
+
75
+
76
+ # Checks equality by comparing each attribute.
77
+ # @param [Object] other the other object to be compared
78
+ def ==(other)
79
+ return true if equal?(other)
80
+
81
+ self.class == other.class &&
82
+ data_type == other.data_type &&
83
+ masking_formats == other.masking_formats
84
+ end
85
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
86
+
87
+ # @see the `==` method
88
+ # @param [Object] other the other object to be compared
89
+ def eql?(other)
90
+ self == other
91
+ end
92
+
93
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
94
+
95
+
96
+ # Calculates hash code according to all attributes.
97
+ # @return [Fixnum] Hash code
98
+ def hash
99
+ [data_type, masking_formats].hash
100
+ end
101
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
102
+
103
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
104
+
105
+
106
+ # Builds the object from hash
107
+ # @param [Hash] attributes Model attributes in the form of hash
108
+ # @return [Object] Returns the model itself
109
+ def build_from_hash(attributes)
110
+ return nil unless attributes.is_a?(Hash)
111
+
112
+ self.class.swagger_types.each_pair do |key, type|
113
+ if type =~ /^Array<(.*)>/i
114
+ # check to ensure the input is an array given that the the attribute
115
+ # is documented as an array but the input is not
116
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
117
+ public_method("#{key}=").call(
118
+ attributes[self.class.attribute_map[key]]
119
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
120
+ )
121
+ end
122
+ elsif !attributes[self.class.attribute_map[key]].nil?
123
+ public_method("#{key}=").call(
124
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
125
+ )
126
+ end
127
+ # or else data not found in attributes(hash), not an issue as the data can be optional
128
+ end
129
+
130
+ self
131
+ end
132
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
133
+
134
+ # Returns the string representation of the object
135
+ # @return [String] String presentation of the object
136
+ def to_s
137
+ to_hash.to_s
138
+ end
139
+
140
+ # Returns the object in the form of hash
141
+ # @return [Hash] Returns the object in the form of hash
142
+ def to_hash
143
+ hash = {}
144
+ self.class.attribute_map.each_pair do |attr, param|
145
+ value = public_method(attr).call
146
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
147
+
148
+ hash[param] = _to_hash(value)
149
+ end
150
+ hash
151
+ end
152
+
153
+ private
154
+
155
+ # Outputs non-array value in the form of hash
156
+ # For object, use to_hash. Otherwise, just return the value
157
+ # @param [Object] value Any valid value
158
+ # @return [Hash] Returns the value in the form of hash
159
+ def _to_hash(value)
160
+ if value.is_a?(Array)
161
+ value.compact.map { |v| _to_hash(v) }
162
+ elsif value.is_a?(Hash)
163
+ {}.tap do |hash|
164
+ value.each { |k, v| hash[k] = _to_hash(v) }
165
+ end
166
+ elsif value.respond_to? :to_hash
167
+ value.to_hash
168
+ else
169
+ value
170
+ end
171
+ end
172
+ end
173
+ end
174
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength