oci 2.5.11 → 2.6.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 (188) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -1
  3. data/lib/oci.rb +1 -0
  4. data/lib/oci/auth/federation_client.rb +2 -1
  5. data/lib/oci/auth/signers/instance_principals_security_token_signer.rb +6 -1
  6. data/lib/oci/auth/url_based_certificate_retriever.rb +6 -2
  7. data/lib/oci/auth/util.rb +18 -0
  8. data/lib/oci/core/compute_client.rb +730 -48
  9. data/lib/oci/core/compute_client_composite_operations.rb +119 -0
  10. data/lib/oci/core/compute_management_client.rb +11 -4
  11. data/lib/oci/core/core.rb +13 -0
  12. data/lib/oci/core/models/add_security_rule_details.rb +4 -2
  13. data/lib/oci/core/models/attach_vnic_details.rb +1 -0
  14. data/lib/oci/core/models/capture_console_history_details.rb +1 -0
  15. data/lib/oci/core/models/change_dedicated_vm_host_compartment_details.rb +155 -0
  16. data/lib/oci/core/models/change_dhcp_options_compartment_details.rb +155 -0
  17. data/lib/oci/core/models/change_internet_gateway_compartment_details.rb +155 -0
  18. data/lib/oci/core/models/change_local_peering_gateway_compartment_details.rb +155 -0
  19. data/lib/oci/core/models/change_network_security_group_compartment_details.rb +155 -0
  20. data/lib/oci/core/models/change_public_ip_compartment_details.rb +155 -0
  21. data/lib/oci/core/models/create_dedicated_vm_host_details.rb +262 -0
  22. data/lib/oci/core/models/create_drg_attachment_details.rb +4 -2
  23. data/lib/oci/core/models/create_image_details.rb +1 -1
  24. data/lib/oci/core/models/create_instance_configuration_base.rb +16 -6
  25. data/lib/oci/core/models/create_instance_configuration_details.rb +1 -1
  26. data/lib/oci/core/models/create_instance_configuration_from_instance_details.rb +3 -2
  27. data/lib/oci/core/models/create_instance_pool_details.rb +3 -1
  28. data/lib/oci/core/models/create_local_peering_gateway_details.rb +1 -1
  29. data/lib/oci/core/models/create_service_gateway_details.rb +1 -1
  30. data/lib/oci/core/models/create_volume_group_backup_details.rb +3 -1
  31. data/lib/oci/core/models/create_volume_group_details.rb +1 -1
  32. data/lib/oci/core/models/cross_connect_mapping.rb +4 -0
  33. data/lib/oci/core/models/dedicated_vm_host.rb +359 -0
  34. data/lib/oci/core/models/dedicated_vm_host_instance_shape_summary.rb +170 -0
  35. data/lib/oci/core/models/dedicated_vm_host_instance_summary.rb +215 -0
  36. data/lib/oci/core/models/dedicated_vm_host_shape_summary.rb +171 -0
  37. data/lib/oci/core/models/dedicated_vm_host_summary.rb +325 -0
  38. data/lib/oci/core/models/drg_attachment.rb +6 -3
  39. data/lib/oci/core/models/egress_security_rule.rb +1 -0
  40. data/lib/oci/core/models/image.rb +2 -0
  41. data/lib/oci/core/models/ingress_security_rule.rb +2 -1
  42. data/lib/oci/core/models/instance.rb +16 -1
  43. data/lib/oci/core/models/instance_configuration.rb +10 -7
  44. data/lib/oci/core/models/ipv6.rb +2 -0
  45. data/lib/oci/core/models/launch_instance_details.rb +16 -1
  46. data/lib/oci/core/models/launch_options.rb +3 -2
  47. data/lib/oci/core/models/local_peering_gateway.rb +4 -3
  48. data/lib/oci/core/models/route_rule.rb +2 -1
  49. data/lib/oci/core/models/security_rule.rb +3 -1
  50. data/lib/oci/core/models/service_gateway.rb +4 -3
  51. data/lib/oci/core/models/subnet.rb +2 -1
  52. data/lib/oci/core/models/update_console_history_details.rb +1 -0
  53. data/lib/oci/core/models/update_dedicated_vm_host_details.rb +194 -0
  54. data/lib/oci/core/models/update_drg_attachment_details.rb +6 -3
  55. data/lib/oci/core/models/update_instance_pool_details.rb +3 -1
  56. data/lib/oci/core/models/update_local_peering_gateway_details.rb +4 -3
  57. data/lib/oci/core/models/update_network_security_group_details.rb +2 -0
  58. data/lib/oci/core/models/update_security_rule_details.rb +4 -2
  59. data/lib/oci/core/models/update_service_gateway_details.rb +4 -3
  60. data/lib/oci/core/models/update_vnic_details.rb +2 -0
  61. data/lib/oci/core/models/update_volume_backup_details.rb +1 -1
  62. data/lib/oci/core/models/update_volume_group_backup_details.rb +2 -1
  63. data/lib/oci/core/models/update_volume_group_details.rb +2 -1
  64. data/lib/oci/core/models/vcn.rb +2 -1
  65. data/lib/oci/core/models/volume_backup_schedule.rb +1 -1
  66. data/lib/oci/core/virtual_network_client.rb +396 -59
  67. data/lib/oci/dts/dts.rb +57 -0
  68. data/lib/oci/dts/models/attach_devices_details.rb +153 -0
  69. data/lib/oci/dts/models/change_transfer_job_compartment_details.rb +154 -0
  70. data/lib/oci/dts/models/create_transfer_appliance_details.rb +152 -0
  71. data/lib/oci/dts/models/create_transfer_appliance_entitlement_details.rb +178 -0
  72. data/lib/oci/dts/models/create_transfer_device_details.rb +165 -0
  73. data/lib/oci/dts/models/create_transfer_job_details.rb +238 -0
  74. data/lib/oci/dts/models/create_transfer_package_details.rb +178 -0
  75. data/lib/oci/dts/models/detach_devices_details.rb +153 -0
  76. data/lib/oci/dts/models/multiple_transfer_appliances.rb +153 -0
  77. data/lib/oci/dts/models/multiple_transfer_devices.rb +153 -0
  78. data/lib/oci/dts/models/multiple_transfer_packages.rb +153 -0
  79. data/lib/oci/dts/models/new_transfer_device.rb +246 -0
  80. data/lib/oci/dts/models/shipping_address.rb +263 -0
  81. data/lib/oci/dts/models/shipping_vendors.rb +149 -0
  82. data/lib/oci/dts/models/transfer_appliance.rb +367 -0
  83. data/lib/oci/dts/models/transfer_appliance_certificate.rb +148 -0
  84. data/lib/oci/dts/models/transfer_appliance_encryption_passphrase.rb +152 -0
  85. data/lib/oci/dts/models/transfer_appliance_entitlement.rb +240 -0
  86. data/lib/oci/dts/models/transfer_appliance_public_key.rb +152 -0
  87. data/lib/oci/dts/models/transfer_appliance_summary.rb +223 -0
  88. data/lib/oci/dts/models/transfer_device.rb +268 -0
  89. data/lib/oci/dts/models/transfer_device_summary.rb +254 -0
  90. data/lib/oci/dts/models/transfer_job.rb +356 -0
  91. data/lib/oci/dts/models/transfer_job_summary.rb +296 -0
  92. data/lib/oci/dts/models/transfer_package.rb +281 -0
  93. data/lib/oci/dts/models/transfer_package_summary.rb +201 -0
  94. data/lib/oci/dts/models/update_transfer_appliance_details.rb +180 -0
  95. data/lib/oci/dts/models/update_transfer_device_details.rb +166 -0
  96. data/lib/oci/dts/models/update_transfer_job_details.rb +237 -0
  97. data/lib/oci/dts/models/update_transfer_package_details.rb +204 -0
  98. data/lib/oci/dts/shipping_vendors_client.rb +165 -0
  99. data/lib/oci/dts/shipping_vendors_client_composite_operations.rb +24 -0
  100. data/lib/oci/dts/transfer_appliance_client.rb +569 -0
  101. data/lib/oci/dts/transfer_appliance_client_composite_operations.rb +104 -0
  102. data/lib/oci/dts/transfer_appliance_entitlement_client.rb +223 -0
  103. data/lib/oci/dts/transfer_appliance_entitlement_client_composite_operations.rb +24 -0
  104. data/lib/oci/dts/transfer_device_client.rb +402 -0
  105. data/lib/oci/dts/transfer_device_client_composite_operations.rb +65 -0
  106. data/lib/oci/dts/transfer_job_client.rb +458 -0
  107. data/lib/oci/dts/transfer_job_client_composite_operations.rb +143 -0
  108. data/lib/oci/dts/transfer_package_client.rb +515 -0
  109. data/lib/oci/dts/transfer_package_client_composite_operations.rb +104 -0
  110. data/lib/oci/dts/util.rb +2 -0
  111. data/lib/oci/file_storage/models/create_file_system_details.rb +19 -4
  112. data/lib/oci/file_storage/models/file_system.rb +19 -4
  113. data/lib/oci/file_storage/models/file_system_summary.rb +19 -4
  114. data/lib/oci/file_storage/models/update_file_system_details.rb +22 -4
  115. data/lib/oci/limits/limits.rb +5 -0
  116. data/lib/oci/limits/limits_client.rb +444 -0
  117. data/lib/oci/limits/limits_client_composite_operations.rb +24 -0
  118. data/lib/oci/limits/models/create_quota_details.rb +1 -1
  119. data/lib/oci/limits/models/limit_definition_summary.rb +241 -0
  120. data/lib/oci/limits/models/limit_value_summary.rb +210 -0
  121. data/lib/oci/limits/models/quota.rb +1 -1
  122. data/lib/oci/limits/models/resource_availability.rb +163 -0
  123. data/lib/oci/limits/models/service_summary.rb +159 -0
  124. data/lib/oci/limits/models/update_quota_details.rb +1 -1
  125. data/lib/oci/limits/quotas_client.rb +12 -11
  126. data/lib/oci/monitoring/models/alarm.rb +20 -1
  127. data/lib/oci/monitoring/models/create_alarm_details.rb +20 -1
  128. data/lib/oci/monitoring/models/list_metrics_details.rb +23 -3
  129. data/lib/oci/monitoring/models/metric.rb +20 -1
  130. data/lib/oci/monitoring/models/metric_data.rb +20 -1
  131. data/lib/oci/monitoring/models/metric_data_details.rb +20 -1
  132. data/lib/oci/monitoring/models/summarize_metrics_data_details.rb +20 -1
  133. data/lib/oci/monitoring/models/update_alarm_details.rb +20 -1
  134. data/lib/oci/regions.rb +14 -8
  135. data/lib/oci/streaming/models/archiver.rb +291 -0
  136. data/lib/oci/streaming/models/archiver_error.rb +159 -0
  137. data/lib/oci/streaming/models/archiver_lifecycle_state.rb +14 -0
  138. data/lib/oci/streaming/models/archiver_start_position.rb +10 -0
  139. data/lib/oci/streaming/models/create_archiver_details.rb +223 -0
  140. data/lib/oci/streaming/models/update_archiver_details.rb +222 -0
  141. data/lib/oci/streaming/stream_admin_client.rb +304 -0
  142. data/lib/oci/streaming/stream_admin_client_composite_operations.rb +162 -0
  143. data/lib/oci/streaming/streaming.rb +6 -0
  144. data/lib/oci/version.rb +1 -1
  145. data/lib/oci/waas/models/access_rule.rb +121 -4
  146. data/lib/oci/waas/models/access_rule_criteria.rb +12 -0
  147. data/lib/oci/waas/models/address_list.rb +289 -0
  148. data/lib/oci/waas/models/address_list_summary.rb +279 -0
  149. data/lib/oci/waas/models/caching_rule.rb +243 -0
  150. data/lib/oci/waas/models/caching_rule_criteria.rb +194 -0
  151. data/lib/oci/waas/models/caching_rule_summary.rb +246 -0
  152. data/lib/oci/waas/models/certificate.rb +22 -9
  153. data/lib/oci/waas/models/certificate_extensions.rb +3 -0
  154. data/lib/oci/waas/models/certificate_issuer_name.rb +225 -0
  155. data/lib/oci/waas/models/certificate_public_key_info.rb +4 -1
  156. data/lib/oci/waas/models/certificate_subject_name.rb +8 -1
  157. data/lib/oci/waas/models/certificate_summary.rb +10 -2
  158. data/lib/oci/waas/models/change_address_list_compartment_details.rb +154 -0
  159. data/lib/oci/waas/models/change_custom_protection_rule_compartment_details.rb +154 -0
  160. data/lib/oci/waas/models/create_address_list_details.rb +213 -0
  161. data/lib/oci/waas/models/create_certificate_details.rb +22 -3
  162. data/lib/oci/waas/models/create_custom_protection_rule_details.rb +251 -0
  163. data/lib/oci/waas/models/create_waas_policy_details.rb +26 -4
  164. data/lib/oci/waas/models/custom_protection_rule.rb +326 -0
  165. data/lib/oci/waas/models/custom_protection_rule_setting.rb +180 -0
  166. data/lib/oci/waas/models/custom_protection_rule_summary.rb +279 -0
  167. data/lib/oci/waas/models/origin_group.rb +149 -0
  168. data/lib/oci/waas/models/origin_group_origins.rb +159 -0
  169. data/lib/oci/waas/models/policy_config.rb +201 -4
  170. data/lib/oci/waas/models/protection_rule_exclusion.rb +2 -2
  171. data/lib/oci/waas/models/purge_cache.rb +149 -0
  172. data/lib/oci/waas/models/update_address_list_details.rb +199 -0
  173. data/lib/oci/waas/models/update_certificate_details.rb +10 -2
  174. data/lib/oci/waas/models/update_custom_protection_rule_details.rb +237 -0
  175. data/lib/oci/waas/models/update_waas_policy_details.rb +26 -4
  176. data/lib/oci/waas/models/waas_policy.rb +25 -3
  177. data/lib/oci/waas/models/waas_policy_custom_protection_rule_summary.rb +207 -0
  178. data/lib/oci/waas/models/waas_policy_summary.rb +10 -2
  179. data/lib/oci/waas/models/waf_config.rb +43 -1
  180. data/lib/oci/waas/models/waf_config_details.rb +43 -1
  181. data/lib/oci/waas/models/waf_log.rb +3 -3
  182. data/lib/oci/waas/models/work_request.rb +4 -1
  183. data/lib/oci/waas/models/work_request_operation_types.rb +4 -1
  184. data/lib/oci/waas/models/work_request_summary.rb +4 -1
  185. data/lib/oci/waas/waas.rb +19 -0
  186. data/lib/oci/waas/waas_client.rb +1147 -61
  187. data/lib/oci/waas/waas_client_composite_operations.rb +386 -0
  188. metadata +90 -2
@@ -0,0 +1,296 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+ require 'logger'
5
+
6
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
7
+ module OCI
8
+ # TransferJobSummary model.
9
+ class Dts::Models::TransferJobSummary
10
+ DEVICE_TYPE_ENUM = [
11
+ DEVICE_TYPE_DISK = 'DISK'.freeze,
12
+ DEVICE_TYPE_APPLIANCE = 'APPLIANCE'.freeze,
13
+ DEVICE_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
14
+ ].freeze
15
+
16
+ LIFECYCLE_STATE_ENUM = [
17
+ LIFECYCLE_STATE_INITIATED = 'INITIATED'.freeze,
18
+ LIFECYCLE_STATE_PREPARING = 'PREPARING'.freeze,
19
+ LIFECYCLE_STATE_ACTIVE = 'ACTIVE'.freeze,
20
+ LIFECYCLE_STATE_DELETED = 'DELETED'.freeze,
21
+ LIFECYCLE_STATE_CLOSED = 'CLOSED'.freeze,
22
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
23
+ ].freeze
24
+
25
+ # @return [String]
26
+ attr_accessor :id
27
+
28
+ # @return [String]
29
+ attr_accessor :upload_bucket_name
30
+
31
+ # @return [String]
32
+ attr_accessor :display_name
33
+
34
+ # @return [String]
35
+ attr_accessor :label
36
+
37
+ # @return [String]
38
+ attr_reader :device_type
39
+
40
+ # @return [DateTime]
41
+ attr_accessor :creation_time
42
+
43
+ # @return [String]
44
+ attr_reader :lifecycle_state
45
+
46
+ # Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
47
+ # Example: `{\"bar-key\": \"value\"}`
48
+ #
49
+ # @return [Hash<String, String>]
50
+ attr_accessor :freeform_tags
51
+
52
+ # Usage of predefined tag keys. These predefined keys are scoped to namespaces.
53
+ # Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
54
+ #
55
+ # @return [Hash<String, Hash<String, Object>>]
56
+ attr_accessor :defined_tags
57
+
58
+ # Attribute mapping from ruby-style variable name to JSON key.
59
+ def self.attribute_map
60
+ {
61
+ # rubocop:disable Style/SymbolLiteral
62
+ 'id': :'id',
63
+ 'upload_bucket_name': :'uploadBucketName',
64
+ 'display_name': :'displayName',
65
+ 'label': :'label',
66
+ 'device_type': :'deviceType',
67
+ 'creation_time': :'creationTime',
68
+ 'lifecycle_state': :'lifecycleState',
69
+ 'freeform_tags': :'freeformTags',
70
+ 'defined_tags': :'definedTags'
71
+ # rubocop:enable Style/SymbolLiteral
72
+ }
73
+ end
74
+
75
+ # Attribute type mapping.
76
+ def self.swagger_types
77
+ {
78
+ # rubocop:disable Style/SymbolLiteral
79
+ 'id': :'String',
80
+ 'upload_bucket_name': :'String',
81
+ 'display_name': :'String',
82
+ 'label': :'String',
83
+ 'device_type': :'String',
84
+ 'creation_time': :'DateTime',
85
+ 'lifecycle_state': :'String',
86
+ 'freeform_tags': :'Hash<String, String>',
87
+ 'defined_tags': :'Hash<String, Hash<String, Object>>'
88
+ # rubocop:enable Style/SymbolLiteral
89
+ }
90
+ end
91
+
92
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
93
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
94
+
95
+
96
+ # Initializes the object
97
+ # @param [Hash] attributes Model attributes in the form of hash
98
+ # @option attributes [String] :id The value to assign to the {#id} property
99
+ # @option attributes [String] :upload_bucket_name The value to assign to the {#upload_bucket_name} property
100
+ # @option attributes [String] :display_name The value to assign to the {#display_name} property
101
+ # @option attributes [String] :label The value to assign to the {#label} property
102
+ # @option attributes [String] :device_type The value to assign to the {#device_type} property
103
+ # @option attributes [DateTime] :creation_time The value to assign to the {#creation_time} property
104
+ # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
105
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
106
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
107
+ def initialize(attributes = {})
108
+ return unless attributes.is_a?(Hash)
109
+
110
+ # convert string to symbol for hash key
111
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
112
+
113
+ self.id = attributes[:'id'] if attributes[:'id']
114
+
115
+ self.upload_bucket_name = attributes[:'uploadBucketName'] if attributes[:'uploadBucketName']
116
+
117
+ raise 'You cannot provide both :uploadBucketName and :upload_bucket_name' if attributes.key?(:'uploadBucketName') && attributes.key?(:'upload_bucket_name')
118
+
119
+ self.upload_bucket_name = attributes[:'upload_bucket_name'] if attributes[:'upload_bucket_name']
120
+
121
+ self.display_name = attributes[:'displayName'] if attributes[:'displayName']
122
+
123
+ raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
124
+
125
+ self.display_name = attributes[:'display_name'] if attributes[:'display_name']
126
+
127
+ self.label = attributes[:'label'] if attributes[:'label']
128
+
129
+ self.device_type = attributes[:'deviceType'] if attributes[:'deviceType']
130
+
131
+ raise 'You cannot provide both :deviceType and :device_type' if attributes.key?(:'deviceType') && attributes.key?(:'device_type')
132
+
133
+ self.device_type = attributes[:'device_type'] if attributes[:'device_type']
134
+
135
+ self.creation_time = attributes[:'creationTime'] if attributes[:'creationTime']
136
+
137
+ raise 'You cannot provide both :creationTime and :creation_time' if attributes.key?(:'creationTime') && attributes.key?(:'creation_time')
138
+
139
+ self.creation_time = attributes[:'creation_time'] if attributes[:'creation_time']
140
+
141
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
142
+
143
+ raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
144
+
145
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
146
+
147
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
148
+
149
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
150
+
151
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
152
+
153
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
154
+
155
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
156
+
157
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
158
+ end
159
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
160
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
161
+
162
+ # Custom attribute writer method checking allowed values (enum).
163
+ # @param [Object] device_type Object to be assigned
164
+ def device_type=(device_type)
165
+ # rubocop:disable Style/ConditionalAssignment
166
+ if device_type && !DEVICE_TYPE_ENUM.include?(device_type)
167
+ OCI.logger.debug("Unknown value for 'device_type' [" + device_type + "]. Mapping to 'DEVICE_TYPE_UNKNOWN_ENUM_VALUE'") if OCI.logger
168
+ @device_type = DEVICE_TYPE_UNKNOWN_ENUM_VALUE
169
+ else
170
+ @device_type = device_type
171
+ end
172
+ # rubocop:enable Style/ConditionalAssignment
173
+ end
174
+
175
+ # Custom attribute writer method checking allowed values (enum).
176
+ # @param [Object] lifecycle_state Object to be assigned
177
+ def lifecycle_state=(lifecycle_state)
178
+ # rubocop:disable Style/ConditionalAssignment
179
+ if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
180
+ OCI.logger.debug("Unknown value for 'lifecycle_state' [" + lifecycle_state + "]. Mapping to 'LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE'") if OCI.logger
181
+ @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
182
+ else
183
+ @lifecycle_state = lifecycle_state
184
+ end
185
+ # rubocop:enable Style/ConditionalAssignment
186
+ end
187
+
188
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
189
+
190
+
191
+ # Checks equality by comparing each attribute.
192
+ # @param [Object] other the other object to be compared
193
+ def ==(other)
194
+ return true if equal?(other)
195
+
196
+ self.class == other.class &&
197
+ id == other.id &&
198
+ upload_bucket_name == other.upload_bucket_name &&
199
+ display_name == other.display_name &&
200
+ label == other.label &&
201
+ device_type == other.device_type &&
202
+ creation_time == other.creation_time &&
203
+ lifecycle_state == other.lifecycle_state &&
204
+ freeform_tags == other.freeform_tags &&
205
+ defined_tags == other.defined_tags
206
+ end
207
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
208
+
209
+ # @see the `==` method
210
+ # @param [Object] other the other object to be compared
211
+ def eql?(other)
212
+ self == other
213
+ end
214
+
215
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
216
+
217
+
218
+ # Calculates hash code according to all attributes.
219
+ # @return [Fixnum] Hash code
220
+ def hash
221
+ [id, upload_bucket_name, display_name, label, device_type, creation_time, lifecycle_state, freeform_tags, defined_tags].hash
222
+ end
223
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
224
+
225
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
226
+
227
+
228
+ # Builds the object from hash
229
+ # @param [Hash] attributes Model attributes in the form of hash
230
+ # @return [Object] Returns the model itself
231
+ def build_from_hash(attributes)
232
+ return nil unless attributes.is_a?(Hash)
233
+
234
+ self.class.swagger_types.each_pair do |key, type|
235
+ if type =~ /^Array<(.*)>/i
236
+ # check to ensure the input is an array given that the the attribute
237
+ # is documented as an array but the input is not
238
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
239
+ public_method("#{key}=").call(
240
+ attributes[self.class.attribute_map[key]]
241
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
242
+ )
243
+ end
244
+ elsif !attributes[self.class.attribute_map[key]].nil?
245
+ public_method("#{key}=").call(
246
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
247
+ )
248
+ end
249
+ # or else data not found in attributes(hash), not an issue as the data can be optional
250
+ end
251
+
252
+ self
253
+ end
254
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
255
+
256
+ # Returns the string representation of the object
257
+ # @return [String] String presentation of the object
258
+ def to_s
259
+ to_hash.to_s
260
+ end
261
+
262
+ # Returns the object in the form of hash
263
+ # @return [Hash] Returns the object in the form of hash
264
+ def to_hash
265
+ hash = {}
266
+ self.class.attribute_map.each_pair do |attr, param|
267
+ value = public_method(attr).call
268
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
269
+
270
+ hash[param] = _to_hash(value)
271
+ end
272
+ hash
273
+ end
274
+
275
+ private
276
+
277
+ # Outputs non-array value in the form of hash
278
+ # For object, use to_hash. Otherwise, just return the value
279
+ # @param [Object] value Any valid value
280
+ # @return [Hash] Returns the value in the form of hash
281
+ def _to_hash(value)
282
+ if value.is_a?(Array)
283
+ value.compact.map { |v| _to_hash(v) }
284
+ elsif value.is_a?(Hash)
285
+ {}.tap do |hash|
286
+ value.each { |k, v| hash[k] = _to_hash(v) }
287
+ end
288
+ elsif value.respond_to? :to_hash
289
+ value.to_hash
290
+ else
291
+ value
292
+ end
293
+ end
294
+ end
295
+ end
296
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -0,0 +1,281 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+ require 'logger'
5
+
6
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
7
+ module OCI
8
+ # TransferPackage model.
9
+ class Dts::Models::TransferPackage
10
+ LIFECYCLE_STATE_ENUM = [
11
+ LIFECYCLE_STATE_PREPARING = 'PREPARING'.freeze,
12
+ LIFECYCLE_STATE_SHIPPING = 'SHIPPING'.freeze,
13
+ LIFECYCLE_STATE_RECEIVED = 'RECEIVED'.freeze,
14
+ LIFECYCLE_STATE_PROCESSING = 'PROCESSING'.freeze,
15
+ LIFECYCLE_STATE_PROCESSED = 'PROCESSED'.freeze,
16
+ LIFECYCLE_STATE_RETURNED = 'RETURNED'.freeze,
17
+ LIFECYCLE_STATE_DELETED = 'DELETED'.freeze,
18
+ LIFECYCLE_STATE_CANCELLED = 'CANCELLED'.freeze,
19
+ LIFECYCLE_STATE_CANCELLED_RETURNED = 'CANCELLED_RETURNED'.freeze,
20
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
21
+ ].freeze
22
+
23
+ # This attribute is required.
24
+ # @return [String]
25
+ attr_accessor :label
26
+
27
+ # @return [String]
28
+ attr_reader :lifecycle_state
29
+
30
+ # @return [String]
31
+ attr_accessor :transfer_job_id
32
+
33
+ # @return [DateTime]
34
+ attr_accessor :creation_time
35
+
36
+ # @return [String]
37
+ attr_accessor :original_package_delivery_tracking_number
38
+
39
+ # @return [String]
40
+ attr_accessor :return_package_delivery_tracking_number
41
+
42
+ # @return [String]
43
+ attr_accessor :package_delivery_vendor
44
+
45
+ # @return [String]
46
+ attr_accessor :transfer_site_shipping_address
47
+
48
+ # Transfer Devices attached to this Transfer Package
49
+ # @return [Array<String>]
50
+ attr_accessor :attached_transfer_device_labels
51
+
52
+ # Attribute mapping from ruby-style variable name to JSON key.
53
+ def self.attribute_map
54
+ {
55
+ # rubocop:disable Style/SymbolLiteral
56
+ 'label': :'label',
57
+ 'lifecycle_state': :'lifecycleState',
58
+ 'transfer_job_id': :'transferJobId',
59
+ 'creation_time': :'creationTime',
60
+ 'original_package_delivery_tracking_number': :'originalPackageDeliveryTrackingNumber',
61
+ 'return_package_delivery_tracking_number': :'returnPackageDeliveryTrackingNumber',
62
+ 'package_delivery_vendor': :'packageDeliveryVendor',
63
+ 'transfer_site_shipping_address': :'transferSiteShippingAddress',
64
+ 'attached_transfer_device_labels': :'attachedTransferDeviceLabels'
65
+ # rubocop:enable Style/SymbolLiteral
66
+ }
67
+ end
68
+
69
+ # Attribute type mapping.
70
+ def self.swagger_types
71
+ {
72
+ # rubocop:disable Style/SymbolLiteral
73
+ 'label': :'String',
74
+ 'lifecycle_state': :'String',
75
+ 'transfer_job_id': :'String',
76
+ 'creation_time': :'DateTime',
77
+ 'original_package_delivery_tracking_number': :'String',
78
+ 'return_package_delivery_tracking_number': :'String',
79
+ 'package_delivery_vendor': :'String',
80
+ 'transfer_site_shipping_address': :'String',
81
+ 'attached_transfer_device_labels': :'Array<String>'
82
+ # rubocop:enable Style/SymbolLiteral
83
+ }
84
+ end
85
+
86
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
87
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
88
+
89
+
90
+ # Initializes the object
91
+ # @param [Hash] attributes Model attributes in the form of hash
92
+ # @option attributes [String] :label The value to assign to the {#label} property
93
+ # @option attributes [String] :lifecycle_state The value to assign to the {#lifecycle_state} property
94
+ # @option attributes [String] :transfer_job_id The value to assign to the {#transfer_job_id} property
95
+ # @option attributes [DateTime] :creation_time The value to assign to the {#creation_time} property
96
+ # @option attributes [String] :original_package_delivery_tracking_number The value to assign to the {#original_package_delivery_tracking_number} property
97
+ # @option attributes [String] :return_package_delivery_tracking_number The value to assign to the {#return_package_delivery_tracking_number} property
98
+ # @option attributes [String] :package_delivery_vendor The value to assign to the {#package_delivery_vendor} property
99
+ # @option attributes [String] :transfer_site_shipping_address The value to assign to the {#transfer_site_shipping_address} property
100
+ # @option attributes [Array<String>] :attached_transfer_device_labels The value to assign to the {#attached_transfer_device_labels} property
101
+ def initialize(attributes = {})
102
+ return unless attributes.is_a?(Hash)
103
+
104
+ # convert string to symbol for hash key
105
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
106
+
107
+ self.label = attributes[:'label'] if attributes[:'label']
108
+
109
+ self.lifecycle_state = attributes[:'lifecycleState'] if attributes[:'lifecycleState']
110
+
111
+ raise 'You cannot provide both :lifecycleState and :lifecycle_state' if attributes.key?(:'lifecycleState') && attributes.key?(:'lifecycle_state')
112
+
113
+ self.lifecycle_state = attributes[:'lifecycle_state'] if attributes[:'lifecycle_state']
114
+
115
+ self.transfer_job_id = attributes[:'transferJobId'] if attributes[:'transferJobId']
116
+
117
+ raise 'You cannot provide both :transferJobId and :transfer_job_id' if attributes.key?(:'transferJobId') && attributes.key?(:'transfer_job_id')
118
+
119
+ self.transfer_job_id = attributes[:'transfer_job_id'] if attributes[:'transfer_job_id']
120
+
121
+ self.creation_time = attributes[:'creationTime'] if attributes[:'creationTime']
122
+
123
+ raise 'You cannot provide both :creationTime and :creation_time' if attributes.key?(:'creationTime') && attributes.key?(:'creation_time')
124
+
125
+ self.creation_time = attributes[:'creation_time'] if attributes[:'creation_time']
126
+
127
+ self.original_package_delivery_tracking_number = attributes[:'originalPackageDeliveryTrackingNumber'] if attributes[:'originalPackageDeliveryTrackingNumber']
128
+
129
+ raise 'You cannot provide both :originalPackageDeliveryTrackingNumber and :original_package_delivery_tracking_number' if attributes.key?(:'originalPackageDeliveryTrackingNumber') && attributes.key?(:'original_package_delivery_tracking_number')
130
+
131
+ self.original_package_delivery_tracking_number = attributes[:'original_package_delivery_tracking_number'] if attributes[:'original_package_delivery_tracking_number']
132
+
133
+ self.return_package_delivery_tracking_number = attributes[:'returnPackageDeliveryTrackingNumber'] if attributes[:'returnPackageDeliveryTrackingNumber']
134
+
135
+ raise 'You cannot provide both :returnPackageDeliveryTrackingNumber and :return_package_delivery_tracking_number' if attributes.key?(:'returnPackageDeliveryTrackingNumber') && attributes.key?(:'return_package_delivery_tracking_number')
136
+
137
+ self.return_package_delivery_tracking_number = attributes[:'return_package_delivery_tracking_number'] if attributes[:'return_package_delivery_tracking_number']
138
+
139
+ self.package_delivery_vendor = attributes[:'packageDeliveryVendor'] if attributes[:'packageDeliveryVendor']
140
+
141
+ raise 'You cannot provide both :packageDeliveryVendor and :package_delivery_vendor' if attributes.key?(:'packageDeliveryVendor') && attributes.key?(:'package_delivery_vendor')
142
+
143
+ self.package_delivery_vendor = attributes[:'package_delivery_vendor'] if attributes[:'package_delivery_vendor']
144
+
145
+ self.transfer_site_shipping_address = attributes[:'transferSiteShippingAddress'] if attributes[:'transferSiteShippingAddress']
146
+
147
+ raise 'You cannot provide both :transferSiteShippingAddress and :transfer_site_shipping_address' if attributes.key?(:'transferSiteShippingAddress') && attributes.key?(:'transfer_site_shipping_address')
148
+
149
+ self.transfer_site_shipping_address = attributes[:'transfer_site_shipping_address'] if attributes[:'transfer_site_shipping_address']
150
+
151
+ self.attached_transfer_device_labels = attributes[:'attachedTransferDeviceLabels'] if attributes[:'attachedTransferDeviceLabels']
152
+
153
+ raise 'You cannot provide both :attachedTransferDeviceLabels and :attached_transfer_device_labels' if attributes.key?(:'attachedTransferDeviceLabels') && attributes.key?(:'attached_transfer_device_labels')
154
+
155
+ self.attached_transfer_device_labels = attributes[:'attached_transfer_device_labels'] if attributes[:'attached_transfer_device_labels']
156
+ end
157
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
158
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
159
+
160
+ # Custom attribute writer method checking allowed values (enum).
161
+ # @param [Object] lifecycle_state Object to be assigned
162
+ def lifecycle_state=(lifecycle_state)
163
+ # rubocop:disable Style/ConditionalAssignment
164
+ if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
165
+ OCI.logger.debug("Unknown value for 'lifecycle_state' [" + lifecycle_state + "]. Mapping to 'LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE'") if OCI.logger
166
+ @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
167
+ else
168
+ @lifecycle_state = lifecycle_state
169
+ end
170
+ # rubocop:enable Style/ConditionalAssignment
171
+ end
172
+
173
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
174
+
175
+
176
+ # Checks equality by comparing each attribute.
177
+ # @param [Object] other the other object to be compared
178
+ def ==(other)
179
+ return true if equal?(other)
180
+
181
+ self.class == other.class &&
182
+ label == other.label &&
183
+ lifecycle_state == other.lifecycle_state &&
184
+ transfer_job_id == other.transfer_job_id &&
185
+ creation_time == other.creation_time &&
186
+ original_package_delivery_tracking_number == other.original_package_delivery_tracking_number &&
187
+ return_package_delivery_tracking_number == other.return_package_delivery_tracking_number &&
188
+ package_delivery_vendor == other.package_delivery_vendor &&
189
+ transfer_site_shipping_address == other.transfer_site_shipping_address &&
190
+ attached_transfer_device_labels == other.attached_transfer_device_labels
191
+ end
192
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
193
+
194
+ # @see the `==` method
195
+ # @param [Object] other the other object to be compared
196
+ def eql?(other)
197
+ self == other
198
+ end
199
+
200
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
201
+
202
+
203
+ # Calculates hash code according to all attributes.
204
+ # @return [Fixnum] Hash code
205
+ def hash
206
+ [label, lifecycle_state, transfer_job_id, creation_time, original_package_delivery_tracking_number, return_package_delivery_tracking_number, package_delivery_vendor, transfer_site_shipping_address, attached_transfer_device_labels].hash
207
+ end
208
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
209
+
210
+ # rubocop:disable Metrics/AbcSize, Layout/EmptyLines
211
+
212
+
213
+ # Builds the object from hash
214
+ # @param [Hash] attributes Model attributes in the form of hash
215
+ # @return [Object] Returns the model itself
216
+ def build_from_hash(attributes)
217
+ return nil unless attributes.is_a?(Hash)
218
+
219
+ self.class.swagger_types.each_pair do |key, type|
220
+ if type =~ /^Array<(.*)>/i
221
+ # check to ensure the input is an array given that the the attribute
222
+ # is documented as an array but the input is not
223
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
224
+ public_method("#{key}=").call(
225
+ attributes[self.class.attribute_map[key]]
226
+ .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
227
+ )
228
+ end
229
+ elsif !attributes[self.class.attribute_map[key]].nil?
230
+ public_method("#{key}=").call(
231
+ OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
232
+ )
233
+ end
234
+ # or else data not found in attributes(hash), not an issue as the data can be optional
235
+ end
236
+
237
+ self
238
+ end
239
+ # rubocop:enable Metrics/AbcSize, Layout/EmptyLines
240
+
241
+ # Returns the string representation of the object
242
+ # @return [String] String presentation of the object
243
+ def to_s
244
+ to_hash.to_s
245
+ end
246
+
247
+ # Returns the object in the form of hash
248
+ # @return [Hash] Returns the object in the form of hash
249
+ def to_hash
250
+ hash = {}
251
+ self.class.attribute_map.each_pair do |attr, param|
252
+ value = public_method(attr).call
253
+ next if value.nil? && !instance_variable_defined?("@#{attr}")
254
+
255
+ hash[param] = _to_hash(value)
256
+ end
257
+ hash
258
+ end
259
+
260
+ private
261
+
262
+ # Outputs non-array value in the form of hash
263
+ # For object, use to_hash. Otherwise, just return the value
264
+ # @param [Object] value Any valid value
265
+ # @return [Hash] Returns the value in the form of hash
266
+ def _to_hash(value)
267
+ if value.is_a?(Array)
268
+ value.compact.map { |v| _to_hash(v) }
269
+ elsif value.is_a?(Hash)
270
+ {}.tap do |hash|
271
+ value.each { |k, v| hash[k] = _to_hash(v) }
272
+ end
273
+ elsif value.respond_to? :to_hash
274
+ value.to_hash
275
+ else
276
+ value
277
+ end
278
+ end
279
+ end
280
+ end
281
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength