oci 2.5.9 → 2.5.10

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 (129) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/oci/autoscaling/auto_scaling_client.rb +73 -0
  4. data/lib/oci/autoscaling/autoscaling.rb +1 -0
  5. data/lib/oci/autoscaling/models/change_auto_scaling_compartment_details.rb +154 -0
  6. data/lib/oci/autoscaling/models/create_auto_scaling_configuration_details.rb +0 -1
  7. data/lib/oci/container_engine/models/work_request_error.rb +0 -1
  8. data/lib/oci/core/blockstorage_client.rb +342 -0
  9. data/lib/oci/core/compute_client.rb +77 -5
  10. data/lib/oci/core/compute_client_composite_operations.rb +3 -3
  11. data/lib/oci/core/compute_management_client.rb +211 -0
  12. data/lib/oci/core/core.rb +27 -0
  13. data/lib/oci/core/models/add_network_security_group_security_rules_details.rb +153 -0
  14. data/lib/oci/core/models/add_security_rule_details.rb +388 -0
  15. data/lib/oci/core/models/added_network_security_group_security_rules.rb +153 -0
  16. data/lib/oci/core/models/change_boot_volume_backup_compartment_details.rb +153 -0
  17. data/lib/oci/core/models/change_boot_volume_compartment_details.rb +153 -0
  18. data/lib/oci/core/models/change_image_compartment_details.rb +154 -0
  19. data/lib/oci/core/models/change_instance_configuration_compartment_details.rb +155 -0
  20. data/lib/oci/core/models/change_instance_pool_compartment_details.rb +155 -0
  21. data/lib/oci/core/models/change_nat_gateway_compartment_details.rb +153 -0
  22. data/lib/oci/core/models/change_route_table_compartment_details.rb +155 -0
  23. data/lib/oci/core/models/change_security_list_compartment_details.rb +155 -0
  24. data/lib/oci/core/models/change_service_gateway_compartment_details.rb +155 -0
  25. data/lib/oci/core/models/change_subnet_compartment_details.rb +155 -0
  26. data/lib/oci/core/models/change_vcn_compartment_details.rb +155 -0
  27. data/lib/oci/core/models/change_volume_backup_compartment_details.rb +153 -0
  28. data/lib/oci/core/models/change_volume_compartment_details.rb +153 -0
  29. data/lib/oci/core/models/change_volume_group_backup_compartment_details.rb +153 -0
  30. data/lib/oci/core/models/change_volume_group_compartment_details.rb +153 -0
  31. data/lib/oci/core/models/create_network_security_group_details.rb +223 -0
  32. data/lib/oci/core/models/create_vnic_details.rb +18 -1
  33. data/lib/oci/core/models/image.rb +2 -1
  34. data/lib/oci/core/models/instance_configuration.rb +3 -1
  35. data/lib/oci/core/models/instance_configuration_create_vnic_details.rb +18 -1
  36. data/lib/oci/core/models/instance_configuration_instance_source_via_image_details.rb +15 -1
  37. data/lib/oci/core/models/instance_configuration_summary.rb +3 -3
  38. data/lib/oci/core/models/instance_pool.rb +4 -1
  39. data/lib/oci/core/models/instance_pool_summary.rb +3 -3
  40. data/lib/oci/core/models/network_security_group.rb +324 -0
  41. data/lib/oci/core/models/network_security_group_vnic.rb +188 -0
  42. data/lib/oci/core/models/remove_network_security_group_security_rules_details.rb +154 -0
  43. data/lib/oci/core/models/security_list.rb +5 -0
  44. data/lib/oci/core/models/security_rule.rb +455 -0
  45. data/lib/oci/core/models/update_network_security_group_details.rb +189 -0
  46. data/lib/oci/core/models/update_network_security_group_security_rules_details.rb +153 -0
  47. data/lib/oci/core/models/update_security_rule_details.rb +404 -0
  48. data/lib/oci/core/models/update_vnic_details.rb +20 -1
  49. data/lib/oci/core/models/updated_network_security_group_security_rules.rb +153 -0
  50. data/lib/oci/core/models/vnic.rb +18 -1
  51. data/lib/oci/core/virtual_network_client.rb +1228 -132
  52. data/lib/oci/core/virtual_network_client_composite_operations.rb +119 -0
  53. data/lib/oci/database/database.rb +19 -0
  54. data/lib/oci/database/database_client.rb +1066 -46
  55. data/lib/oci/database/database_client_composite_operations.rb +317 -0
  56. data/lib/oci/database/models/autonomous_container_database.rb +416 -0
  57. data/lib/oci/database/models/autonomous_container_database_backup_config.rb +157 -0
  58. data/lib/oci/database/models/autonomous_container_database_summary.rb +420 -0
  59. data/lib/oci/database/models/autonomous_database.rb +58 -1
  60. data/lib/oci/database/models/autonomous_database_backup.rb +16 -1
  61. data/lib/oci/database/models/autonomous_database_backup_summary.rb +16 -1
  62. data/lib/oci/database/models/autonomous_database_connection_strings.rb +11 -1
  63. data/lib/oci/database/models/autonomous_database_connection_urls.rb +170 -0
  64. data/lib/oci/database/models/autonomous_database_summary.rb +58 -1
  65. data/lib/oci/database/models/autonomous_db_preview_version_summary.rb +224 -0
  66. data/lib/oci/database/models/autonomous_exadata_infrastructure.rb +419 -0
  67. data/lib/oci/database/models/autonomous_exadata_infrastructure_maintenance_window.rb +186 -0
  68. data/lib/oci/database/models/autonomous_exadata_infrastructure_shape_summary.rb +224 -0
  69. data/lib/oci/database/models/autonomous_exadata_infrastructure_summary.rb +436 -0
  70. data/lib/oci/database/models/backup.rb +1 -0
  71. data/lib/oci/database/models/backup_summary.rb +1 -0
  72. data/lib/oci/database/models/create_autonomous_container_database_details.rb +284 -0
  73. data/lib/oci/database/models/create_autonomous_database_base.rb +46 -1
  74. data/lib/oci/database/models/create_autonomous_database_clone_details.rb +13 -1
  75. data/lib/oci/database/models/create_autonomous_database_details.rb +13 -1
  76. data/lib/oci/database/models/create_data_guard_association_with_new_db_system_details.rb +34 -1
  77. data/lib/oci/database/models/create_db_home_with_db_system_id_base.rb +1 -1
  78. data/lib/oci/database/models/day_of_week.rb +174 -0
  79. data/lib/oci/database/models/db_system.rb +34 -1
  80. data/lib/oci/database/models/db_system_summary.rb +34 -1
  81. data/lib/oci/database/models/launch_autonomous_exadata_infrastructure_details.rb +304 -0
  82. data/lib/oci/database/models/launch_db_system_base.rb +35 -2
  83. data/lib/oci/database/models/launch_db_system_details.rb +11 -2
  84. data/lib/oci/database/models/launch_db_system_from_backup_details.rb +11 -2
  85. data/lib/oci/database/models/maintenance_run.rb +392 -0
  86. data/lib/oci/database/models/maintenance_run_summary.rb +395 -0
  87. data/lib/oci/database/models/maintenance_window.rb +226 -0
  88. data/lib/oci/database/models/month.rb +179 -0
  89. data/lib/oci/database/models/restore_autonomous_database_details.rb +30 -4
  90. data/lib/oci/database/models/update_autonomous_container_database_details.rb +230 -0
  91. data/lib/oci/database/models/update_autonomous_database_details.rb +18 -1
  92. data/lib/oci/database/models/update_autonomous_exadata_infrastructure_details.rb +203 -0
  93. data/lib/oci/database/models/update_db_system_details.rb +37 -4
  94. data/lib/oci/database/models/update_maintenance_run_details.rb +154 -0
  95. data/lib/oci/email/email.rb +1 -0
  96. data/lib/oci/email/email_client.rb +62 -0
  97. data/lib/oci/email/models/change_sender_compartment_details.rb +157 -0
  98. data/lib/oci/key_management/key_management.rb +1 -0
  99. data/lib/oci/key_management/kms_crypto_client.rb +4 -4
  100. data/lib/oci/key_management/kms_management_client.rb +161 -10
  101. data/lib/oci/key_management/kms_management_client_composite_operations.rb +79 -0
  102. data/lib/oci/key_management/kms_vault_client.rb +16 -11
  103. data/lib/oci/key_management/models/key.rb +17 -1
  104. data/lib/oci/key_management/models/schedule_key_deletion_details.rb +156 -0
  105. data/lib/oci/load_balancer/load_balancer.rb +1 -0
  106. data/lib/oci/load_balancer/load_balancer_client.rb +64 -0
  107. data/lib/oci/load_balancer/load_balancer_client_composite_operations.rb +50 -0
  108. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +16 -1
  109. data/lib/oci/load_balancer/models/load_balancer.rb +16 -1
  110. data/lib/oci/load_balancer/models/remove_http_request_header_rule.rb +1 -1
  111. data/lib/oci/load_balancer/models/remove_http_response_header_rule.rb +1 -1
  112. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +9 -5
  113. data/lib/oci/load_balancer/models/update_backend_set_details.rb +2 -0
  114. data/lib/oci/load_balancer/models/update_network_security_groups_details.rb +154 -0
  115. data/lib/oci/monitoring/models/metric.rb +1 -0
  116. data/lib/oci/object_storage/models/work_request_error.rb +1 -0
  117. data/lib/oci/resource_manager/models/change_stack_compartment_details.rb +155 -0
  118. data/lib/oci/resource_manager/models/work_request.rb +293 -0
  119. data/lib/oci/resource_manager/models/work_request_error.rb +170 -0
  120. data/lib/oci/resource_manager/models/work_request_log_entry.rb +159 -0
  121. data/lib/oci/resource_manager/models/work_request_resource.rb +217 -0
  122. data/lib/oci/resource_manager/models/work_request_summary.rb +254 -0
  123. data/lib/oci/resource_manager/resource_manager.rb +6 -0
  124. data/lib/oci/resource_manager/resource_manager_client.rb +338 -0
  125. data/lib/oci/resource_manager/resource_manager_client_composite_operations.rb +50 -0
  126. data/lib/oci/streaming/stream_admin_client.rb +2 -2
  127. data/lib/oci/streaming/stream_client.rb +1 -1
  128. data/lib/oci/version.rb +1 -1
  129. metadata +58 -2
@@ -10,6 +10,7 @@ module OCI
10
10
  TYPE_ENUM = [
11
11
  TYPE_INCREMENTAL = 'INCREMENTAL'.freeze,
12
12
  TYPE_FULL = 'FULL'.freeze,
13
+ TYPE_VIRTUAL_FULL = 'VIRTUAL_FULL'.freeze,
13
14
  TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
14
15
  ].freeze
15
16
 
@@ -14,6 +14,7 @@ module OCI
14
14
  TYPE_ENUM = [
15
15
  TYPE_INCREMENTAL = 'INCREMENTAL'.freeze,
16
16
  TYPE_FULL = 'FULL'.freeze,
17
+ TYPE_VIRTUAL_FULL = 'VIRTUAL_FULL'.freeze,
17
18
  TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
18
19
  ].freeze
19
20
 
@@ -0,0 +1,284 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
6
+ module OCI
7
+ # Describes the required parameters for the creation of an Autonomous Container Database.
8
+ #
9
+ class Database::Models::CreateAutonomousContainerDatabaseDetails
10
+ SERVICE_LEVEL_AGREEMENT_TYPE_ENUM = [
11
+ SERVICE_LEVEL_AGREEMENT_TYPE_STANDARD = 'STANDARD'.freeze
12
+ ].freeze
13
+
14
+ PATCH_MODEL_ENUM = [
15
+ PATCH_MODEL_RELEASE_UPDATES = 'RELEASE_UPDATES'.freeze,
16
+ PATCH_MODEL_RELEASE_UPDATE_REVISIONS = 'RELEASE_UPDATE_REVISIONS'.freeze
17
+ ].freeze
18
+
19
+ # **[Required]** The display name for the Autonomous Container Database.
20
+ # @return [String]
21
+ attr_accessor :display_name
22
+
23
+ # The service level agreement type of the Autonomous Container Database. The default is STANDARD. For a Mission Critical Container Database, the specified Autonomous Exadata Infrastructure must be associated with a remote Autonomous Exadata Infrastructure.
24
+ # @return [String]
25
+ attr_reader :service_level_agreement_type
26
+
27
+ # **[Required]** The OCID of the Autonomous Exadata Infrastructure.
28
+ # @return [String]
29
+ attr_accessor :autonomous_exadata_infrastructure_id
30
+
31
+ # The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment containing the Autonomous Container Database.
32
+ # @return [String]
33
+ attr_accessor :compartment_id
34
+
35
+ # **[Required]** Database Patch model preference.
36
+ # @return [String]
37
+ attr_reader :patch_model
38
+
39
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace.
40
+ # For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
41
+ #
42
+ # Example: `{\"Department\": \"Finance\"}`
43
+ #
44
+ # @return [Hash<String, String>]
45
+ attr_accessor :freeform_tags
46
+
47
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
48
+ # For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
49
+ #
50
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
51
+ #
52
+ # @return [Hash<String, Hash<String, Object>>]
53
+ attr_accessor :defined_tags
54
+
55
+ # @return [OCI::Database::Models::AutonomousContainerDatabaseBackupConfig]
56
+ attr_accessor :backup_config
57
+
58
+ # Attribute mapping from ruby-style variable name to JSON key.
59
+ def self.attribute_map
60
+ {
61
+ # rubocop:disable Style/SymbolLiteral
62
+ 'display_name': :'displayName',
63
+ 'service_level_agreement_type': :'serviceLevelAgreementType',
64
+ 'autonomous_exadata_infrastructure_id': :'autonomousExadataInfrastructureId',
65
+ 'compartment_id': :'compartmentId',
66
+ 'patch_model': :'patchModel',
67
+ 'freeform_tags': :'freeformTags',
68
+ 'defined_tags': :'definedTags',
69
+ 'backup_config': :'backupConfig'
70
+ # rubocop:enable Style/SymbolLiteral
71
+ }
72
+ end
73
+
74
+ # Attribute type mapping.
75
+ def self.swagger_types
76
+ {
77
+ # rubocop:disable Style/SymbolLiteral
78
+ 'display_name': :'String',
79
+ 'service_level_agreement_type': :'String',
80
+ 'autonomous_exadata_infrastructure_id': :'String',
81
+ 'compartment_id': :'String',
82
+ 'patch_model': :'String',
83
+ 'freeform_tags': :'Hash<String, String>',
84
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
85
+ 'backup_config': :'OCI::Database::Models::AutonomousContainerDatabaseBackupConfig'
86
+ # rubocop:enable Style/SymbolLiteral
87
+ }
88
+ end
89
+
90
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
91
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
92
+
93
+
94
+ # Initializes the object
95
+ # @param [Hash] attributes Model attributes in the form of hash
96
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
97
+ # @option attributes [String] :service_level_agreement_type The value to assign to the {#service_level_agreement_type} property
98
+ # @option attributes [String] :autonomous_exadata_infrastructure_id The value to assign to the {#autonomous_exadata_infrastructure_id} property
99
+ # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
100
+ # @option attributes [String] :patch_model The value to assign to the {#patch_model} property
101
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
102
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
103
+ # @option attributes [OCI::Database::Models::AutonomousContainerDatabaseBackupConfig] :backup_config The value to assign to the {#backup_config} property
104
+ def initialize(attributes = {})
105
+ return unless attributes.is_a?(Hash)
106
+
107
+ # convert string to symbol for hash key
108
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
109
+
110
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
111
+
112
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
113
+
114
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
115
+
116
+ self.service_level_agreement_type = attributes[:'serviceLevelAgreementType'] if attributes[:'serviceLevelAgreementType']
117
+
118
+ raise 'You cannot provide both :serviceLevelAgreementType and :service_level_agreement_type' if attributes.key?(:'serviceLevelAgreementType') && attributes.key?(:'service_level_agreement_type')
119
+
120
+ self.service_level_agreement_type = attributes[:'service_level_agreement_type'] if attributes[:'service_level_agreement_type']
121
+
122
+ self.autonomous_exadata_infrastructure_id = attributes[:'autonomousExadataInfrastructureId'] if attributes[:'autonomousExadataInfrastructureId']
123
+
124
+ raise 'You cannot provide both :autonomousExadataInfrastructureId and :autonomous_exadata_infrastructure_id' if attributes.key?(:'autonomousExadataInfrastructureId') && attributes.key?(:'autonomous_exadata_infrastructure_id')
125
+
126
+ self.autonomous_exadata_infrastructure_id = attributes[:'autonomous_exadata_infrastructure_id'] if attributes[:'autonomous_exadata_infrastructure_id']
127
+
128
+ self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']
129
+
130
+ raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')
131
+
132
+ self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
133
+
134
+ self.patch_model = attributes[:'patchModel'] if attributes[:'patchModel']
135
+
136
+ raise 'You cannot provide both :patchModel and :patch_model' if attributes.key?(:'patchModel') && attributes.key?(:'patch_model')
137
+
138
+ self.patch_model = attributes[:'patch_model'] if attributes[:'patch_model']
139
+
140
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
141
+
142
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
143
+
144
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
145
+
146
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
147
+
148
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
149
+
150
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
151
+
152
+ self.backup_config = attributes[:'backupConfig'] if attributes[:'backupConfig']
153
+
154
+ raise 'You cannot provide both :backupConfig and :backup_config' if attributes.key?(:'backupConfig') && attributes.key?(:'backup_config')
155
+
156
+ self.backup_config = attributes[:'backup_config'] if attributes[:'backup_config']
157
+ end
158
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
159
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
160
+
161
+ # Custom attribute writer method checking allowed values (enum).
162
+ # @param [Object] service_level_agreement_type Object to be assigned
163
+ def service_level_agreement_type=(service_level_agreement_type)
164
+ raise "Invalid value for 'service_level_agreement_type': this must be one of the values in SERVICE_LEVEL_AGREEMENT_TYPE_ENUM." if service_level_agreement_type && !SERVICE_LEVEL_AGREEMENT_TYPE_ENUM.include?(service_level_agreement_type)
165
+
166
+ @service_level_agreement_type = service_level_agreement_type
167
+ end
168
+
169
+ # Custom attribute writer method checking allowed values (enum).
170
+ # @param [Object] patch_model Object to be assigned
171
+ def patch_model=(patch_model)
172
+ raise "Invalid value for 'patch_model': this must be one of the values in PATCH_MODEL_ENUM." if patch_model && !PATCH_MODEL_ENUM.include?(patch_model)
173
+
174
+ @patch_model = patch_model
175
+ end
176
+
177
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
178
+
179
+
180
+ # Checks equality by comparing each attribute.
181
+ # @param [Object] other the other object to be compared
182
+ def ==(other)
183
+ return true if equal?(other)
184
+
185
+ self.class == other.class &&
186
+ display_name == other.display_name &&
187
+ service_level_agreement_type == other.service_level_agreement_type &&
188
+ autonomous_exadata_infrastructure_id == other.autonomous_exadata_infrastructure_id &&
189
+ compartment_id == other.compartment_id &&
190
+ patch_model == other.patch_model &&
191
+ freeform_tags == other.freeform_tags &&
192
+ defined_tags == other.defined_tags &&
193
+ backup_config == other.backup_config
194
+ end
195
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
196
+
197
+ # @see the `==` method
198
+ # @param [Object] other the other object to be compared
199
+ def eql?(other)
200
+ self == other
201
+ end
202
+
203
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
204
+
205
+
206
+ # Calculates hash code according to all attributes.
207
+ # @return [Fixnum] Hash code
208
+ def hash
209
+ [display_name, service_level_agreement_type, autonomous_exadata_infrastructure_id, compartment_id, patch_model, freeform_tags, defined_tags, backup_config].hash
210
+ end
211
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
212
+
213
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
214
+
215
+
216
+ # Builds the object from hash
217
+ # @param [Hash] attributes Model attributes in the form of hash
218
+ # @return [Object] Returns the model itself
219
+ def build_from_hash(attributes)
220
+ return nil unless attributes.is_a?(Hash)
221
+
222
+ self.class.swagger_types.each_pair do |key, type|
223
+ if type =~ /^Array<(.*)>/i
224
+ # check to ensure the input is an array given that the the attribute
225
+ # is documented as an array but the input is not
226
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
227
+ public_method("#{key}=").call(
228
+ attributes[self.class.attribute_map[key]]
229
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
230
+ )
231
+ end
232
+ elsif !attributes[self.class.attribute_map[key]].nil?
233
+ public_method("#{key}=").call(
234
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
235
+ )
236
+ end
237
+ # or else data not found in attributes(hash), not an issue as the data can be optional
238
+ end
239
+
240
+ self
241
+ end
242
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
243
+
244
+ # Returns the string representation of the object
245
+ # @return [String] String presentation of the object
246
+ def to_s
247
+ to_hash.to_s
248
+ end
249
+
250
+ # Returns the object in the form of hash
251
+ # @return [Hash] Returns the object in the form of hash
252
+ def to_hash
253
+ hash = {}
254
+ self.class.attribute_map.each_pair do |attr, param|
255
+ value = public_method(attr).call
256
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
257
+
258
+ hash[param] = _to_hash(value)
259
+ end
260
+ hash
261
+ end
262
+
263
+ private
264
+
265
+ # Outputs non-array value in the form of hash
266
+ # For object, use to_hash. Otherwise, just return the value
267
+ # @param [Object] value Any valid value
268
+ # @return [Hash] Returns the value in the form of hash
269
+ def _to_hash(value)
270
+ if value.is_a?(Array)
271
+ value.compact.map { |v| _to_hash(v) }
272
+ elsif value.is_a?(Hash)
273
+ {}.tap do |hash|
274
+ value.each { |k, v| hash[k] = _to_hash(v) }
275
+ end
276
+ elsif value.respond_to? :to_hash
277
+ value.to_hash
278
+ else
279
+ value
280
+ end
281
+ end
282
+ end
283
+ end
284
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -59,11 +59,24 @@ module OCI
59
59
  # @return [String]
60
60
  attr_reader :license_model
61
61
 
62
+ # If set to true, indicates that an Autonomous Database preview version is being provisioned, and that the preview version's terms of service have been accepted.
63
+ # @return [BOOLEAN]
64
+ attr_accessor :is_preview_version_with_service_terms_accepted
65
+
62
66
  # Indicates if auto scaling is enabled for the Autonomous Database CPU core count. The default value is false.
63
67
  #
64
68
  # @return [BOOLEAN]
65
69
  attr_accessor :is_auto_scaling_enabled
66
70
 
71
+ # True if it is dedicated database.
72
+ #
73
+ # @return [BOOLEAN]
74
+ attr_accessor :is_dedicated
75
+
76
+ # The Autonomous Container Database [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm).
77
+ # @return [String]
78
+ attr_accessor :autonomous_container_database_id
79
+
67
80
  # Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace.
68
81
  # For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
69
82
  #
@@ -97,7 +110,10 @@ module OCI
97
110
  'admin_password': :'adminPassword',
98
111
  'display_name': :'displayName',
99
112
  'license_model': :'licenseModel',
113
+ 'is_preview_version_with_service_terms_accepted': :'isPreviewVersionWithServiceTermsAccepted',
100
114
  'is_auto_scaling_enabled': :'isAutoScalingEnabled',
115
+ 'is_dedicated': :'isDedicated',
116
+ 'autonomous_container_database_id': :'autonomousContainerDatabaseId',
101
117
  'freeform_tags': :'freeformTags',
102
118
  'defined_tags': :'definedTags',
103
119
  'source': :'source'
@@ -117,7 +133,10 @@ module OCI
117
133
  'admin_password': :'String',
118
134
  'display_name': :'String',
119
135
  'license_model': :'String',
136
+ 'is_preview_version_with_service_terms_accepted': :'BOOLEAN',
120
137
  'is_auto_scaling_enabled': :'BOOLEAN',
138
+ 'is_dedicated': :'BOOLEAN',
139
+ 'autonomous_container_database_id': :'String',
121
140
  'freeform_tags': :'Hash<String, String>',
122
141
  'defined_tags': :'Hash<String, Hash<String, Object>>',
123
142
  'source': :'String'
@@ -155,7 +174,10 @@ module OCI
155
174
  # @option attributes [String] :admin_password The value to assign to the {#admin_password} property
156
175
  # @option attributes [String] :display_name The value to assign to the {#display_name} property
157
176
  # @option attributes [String] :license_model The value to assign to the {#license_model} property
177
+ # @option attributes [BOOLEAN] :is_preview_version_with_service_terms_accepted The value to assign to the {#is_preview_version_with_service_terms_accepted} property
158
178
  # @option attributes [BOOLEAN] :is_auto_scaling_enabled The value to assign to the {#is_auto_scaling_enabled} property
179
+ # @option attributes [BOOLEAN] :is_dedicated The value to assign to the {#is_dedicated} property
180
+ # @option attributes [String] :autonomous_container_database_id The value to assign to the {#autonomous_container_database_id} property
159
181
  # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
160
182
  # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
161
183
  # @option attributes [String] :source The value to assign to the {#source} property
@@ -213,6 +235,14 @@ module OCI
213
235
 
214
236
  self.license_model = attributes[:'license_model'] if attributes[:'license_model']
215
237
 
238
+ self.is_preview_version_with_service_terms_accepted = attributes[:'isPreviewVersionWithServiceTermsAccepted'] unless attributes[:'isPreviewVersionWithServiceTermsAccepted'].nil?
239
+ self.is_preview_version_with_service_terms_accepted = false if is_preview_version_with_service_terms_accepted.nil? && !attributes.key?(:'isPreviewVersionWithServiceTermsAccepted') # rubocop:disable Style/StringLiterals
240
+
241
+ raise 'You cannot provide both :isPreviewVersionWithServiceTermsAccepted and :is_preview_version_with_service_terms_accepted' if attributes.key?(:'isPreviewVersionWithServiceTermsAccepted') && attributes.key?(:'is_preview_version_with_service_terms_accepted')
242
+
243
+ self.is_preview_version_with_service_terms_accepted = attributes[:'is_preview_version_with_service_terms_accepted'] unless attributes[:'is_preview_version_with_service_terms_accepted'].nil?
244
+ self.is_preview_version_with_service_terms_accepted = false if is_preview_version_with_service_terms_accepted.nil? && !attributes.key?(:'isPreviewVersionWithServiceTermsAccepted') && !attributes.key?(:'is_preview_version_with_service_terms_accepted') # rubocop:disable Style/StringLiterals
245
+
216
246
  self.is_auto_scaling_enabled = attributes[:'isAutoScalingEnabled'] unless attributes[:'isAutoScalingEnabled'].nil?
217
247
  self.is_auto_scaling_enabled = false if is_auto_scaling_enabled.nil? && !attributes.key?(:'isAutoScalingEnabled') # rubocop:disable Style/StringLiterals
218
248
 
@@ -221,6 +251,18 @@ module OCI
221
251
  self.is_auto_scaling_enabled = attributes[:'is_auto_scaling_enabled'] unless attributes[:'is_auto_scaling_enabled'].nil?
222
252
  self.is_auto_scaling_enabled = false if is_auto_scaling_enabled.nil? && !attributes.key?(:'isAutoScalingEnabled') && !attributes.key?(:'is_auto_scaling_enabled') # rubocop:disable Style/StringLiterals
223
253
 
254
+ self.is_dedicated = attributes[:'isDedicated'] unless attributes[:'isDedicated'].nil?
255
+
256
+ raise 'You cannot provide both :isDedicated and :is_dedicated' if attributes.key?(:'isDedicated') && attributes.key?(:'is_dedicated')
257
+
258
+ self.is_dedicated = attributes[:'is_dedicated'] unless attributes[:'is_dedicated'].nil?
259
+
260
+ self.autonomous_container_database_id = attributes[:'autonomousContainerDatabaseId'] if attributes[:'autonomousContainerDatabaseId']
261
+
262
+ raise 'You cannot provide both :autonomousContainerDatabaseId and :autonomous_container_database_id' if attributes.key?(:'autonomousContainerDatabaseId') && attributes.key?(:'autonomous_container_database_id')
263
+
264
+ self.autonomous_container_database_id = attributes[:'autonomous_container_database_id'] if attributes[:'autonomous_container_database_id']
265
+
224
266
  self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
225
267
 
226
268
  raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
@@ -280,7 +322,10 @@ module OCI
280
322
  admin_password == other.admin_password &&
281
323
  display_name == other.display_name &&
282
324
  license_model == other.license_model &&
325
+ is_preview_version_with_service_terms_accepted == other.is_preview_version_with_service_terms_accepted &&
283
326
  is_auto_scaling_enabled == other.is_auto_scaling_enabled &&
327
+ is_dedicated == other.is_dedicated &&
328
+ autonomous_container_database_id == other.autonomous_container_database_id &&
284
329
  freeform_tags == other.freeform_tags &&
285
330
  defined_tags == other.defined_tags &&
286
331
  source == other.source
@@ -299,7 +344,7 @@ module OCI
299
344
  # Calculates hash code according to all attributes.
300
345
  # @return [Fixnum] Hash code
301
346
  def hash
302
- [compartment_id, db_name, cpu_core_count, db_workload, data_storage_size_in_tbs, admin_password, display_name, license_model, is_auto_scaling_enabled, freeform_tags, defined_tags, source].hash
347
+ [compartment_id, db_name, cpu_core_count, db_workload, data_storage_size_in_tbs, admin_password, display_name, license_model, is_preview_version_with_service_terms_accepted, is_auto_scaling_enabled, is_dedicated, autonomous_container_database_id, freeform_tags, defined_tags, source].hash
303
348
  end
304
349
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
305
350
 
@@ -33,7 +33,10 @@ module OCI
33
33
  'admin_password': :'adminPassword',
34
34
  'display_name': :'displayName',
35
35
  'license_model': :'licenseModel',
36
+ 'is_preview_version_with_service_terms_accepted': :'isPreviewVersionWithServiceTermsAccepted',
36
37
  'is_auto_scaling_enabled': :'isAutoScalingEnabled',
38
+ 'is_dedicated': :'isDedicated',
39
+ 'autonomous_container_database_id': :'autonomousContainerDatabaseId',
37
40
  'freeform_tags': :'freeformTags',
38
41
  'defined_tags': :'definedTags',
39
42
  'source': :'source',
@@ -55,7 +58,10 @@ module OCI
55
58
  'admin_password': :'String',
56
59
  'display_name': :'String',
57
60
  'license_model': :'String',
61
+ 'is_preview_version_with_service_terms_accepted': :'BOOLEAN',
58
62
  'is_auto_scaling_enabled': :'BOOLEAN',
63
+ 'is_dedicated': :'BOOLEAN',
64
+ 'autonomous_container_database_id': :'String',
59
65
  'freeform_tags': :'Hash<String, String>',
60
66
  'defined_tags': :'Hash<String, Hash<String, Object>>',
61
67
  'source': :'String',
@@ -79,7 +85,10 @@ module OCI
79
85
  # @option attributes [String] :admin_password The value to assign to the {OCI::Database::Models::CreateAutonomousDatabaseBase#admin_password #admin_password} proprety
80
86
  # @option attributes [String] :display_name The value to assign to the {OCI::Database::Models::CreateAutonomousDatabaseBase#display_name #display_name} proprety
81
87
  # @option attributes [String] :license_model The value to assign to the {OCI::Database::Models::CreateAutonomousDatabaseBase#license_model #license_model} proprety
88
+ # @option attributes [BOOLEAN] :is_preview_version_with_service_terms_accepted The value to assign to the {OCI::Database::Models::CreateAutonomousDatabaseBase#is_preview_version_with_service_terms_accepted #is_preview_version_with_service_terms_accepted} proprety
82
89
  # @option attributes [BOOLEAN] :is_auto_scaling_enabled The value to assign to the {OCI::Database::Models::CreateAutonomousDatabaseBase#is_auto_scaling_enabled #is_auto_scaling_enabled} proprety
90
+ # @option attributes [BOOLEAN] :is_dedicated The value to assign to the {OCI::Database::Models::CreateAutonomousDatabaseBase#is_dedicated #is_dedicated} proprety
91
+ # @option attributes [String] :autonomous_container_database_id The value to assign to the {OCI::Database::Models::CreateAutonomousDatabaseBase#autonomous_container_database_id #autonomous_container_database_id} proprety
83
92
  # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {OCI::Database::Models::CreateAutonomousDatabaseBase#freeform_tags #freeform_tags} proprety
84
93
  # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {OCI::Database::Models::CreateAutonomousDatabaseBase#defined_tags #defined_tags} proprety
85
94
  # @option attributes [String] :source_id The value to assign to the {#source_id} property
@@ -134,7 +143,10 @@ module OCI
134
143
  admin_password == other.admin_password &&
135
144
  display_name == other.display_name &&
136
145
  license_model == other.license_model &&
146
+ is_preview_version_with_service_terms_accepted == other.is_preview_version_with_service_terms_accepted &&
137
147
  is_auto_scaling_enabled == other.is_auto_scaling_enabled &&
148
+ is_dedicated == other.is_dedicated &&
149
+ autonomous_container_database_id == other.autonomous_container_database_id &&
138
150
  freeform_tags == other.freeform_tags &&
139
151
  defined_tags == other.defined_tags &&
140
152
  source == other.source &&
@@ -155,7 +167,7 @@ module OCI
155
167
  # Calculates hash code according to all attributes.
156
168
  # @return [Fixnum] Hash code
157
169
  def hash
158
- [compartment_id, db_name, cpu_core_count, db_workload, data_storage_size_in_tbs, admin_password, display_name, license_model, is_auto_scaling_enabled, freeform_tags, defined_tags, source, source_id, clone_type].hash
170
+ [compartment_id, db_name, cpu_core_count, db_workload, data_storage_size_in_tbs, admin_password, display_name, license_model, is_preview_version_with_service_terms_accepted, is_auto_scaling_enabled, is_dedicated, autonomous_container_database_id, freeform_tags, defined_tags, source, source_id, clone_type].hash
159
171
  end
160
172
  # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
161
173