oci 2.0.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 (217) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +82 -0
  3. data/README.md +262 -0
  4. data/lib/oci.rb +25 -0
  5. data/lib/oci/api_client.rb +389 -0
  6. data/lib/oci/config.rb +118 -0
  7. data/lib/oci/config_file_loader.rb +96 -0
  8. data/lib/oci/core/blockstorage_client.rb +462 -0
  9. data/lib/oci/core/compute_client.rb +1415 -0
  10. data/lib/oci/core/core.rb +114 -0
  11. data/lib/oci/core/models/attach_i_scsi_volume_details.rb +137 -0
  12. data/lib/oci/core/models/attach_vnic_details.rb +144 -0
  13. data/lib/oci/core/models/attach_volume_details.rb +165 -0
  14. data/lib/oci/core/models/capture_console_history_details.rb +120 -0
  15. data/lib/oci/core/models/console_history.rb +213 -0
  16. data/lib/oci/core/models/cpe.rb +169 -0
  17. data/lib/oci/core/models/create_cpe_details.rb +145 -0
  18. data/lib/oci/core/models/create_cross_connect_details.rb +204 -0
  19. data/lib/oci/core/models/create_cross_connect_group_details.rb +133 -0
  20. data/lib/oci/core/models/create_dhcp_details.rb +153 -0
  21. data/lib/oci/core/models/create_drg_attachment_details.rb +142 -0
  22. data/lib/oci/core/models/create_drg_details.rb +131 -0
  23. data/lib/oci/core/models/create_image_details.rb +159 -0
  24. data/lib/oci/core/models/create_instance_console_connection_details.rb +131 -0
  25. data/lib/oci/core/models/create_internet_gateway_details.rb +153 -0
  26. data/lib/oci/core/models/create_ip_sec_connection_details.rb +168 -0
  27. data/lib/oci/core/models/create_private_ip_details.rb +173 -0
  28. data/lib/oci/core/models/create_route_table_details.rb +153 -0
  29. data/lib/oci/core/models/create_security_list_details.rb +164 -0
  30. data/lib/oci/core/models/create_subnet_details.rb +257 -0
  31. data/lib/oci/core/models/create_vcn_details.rb +171 -0
  32. data/lib/oci/core/models/create_virtual_circuit_details.rb +260 -0
  33. data/lib/oci/core/models/create_vnic_details.rb +214 -0
  34. data/lib/oci/core/models/create_volume_backup_details.rb +133 -0
  35. data/lib/oci/core/models/create_volume_details.rb +170 -0
  36. data/lib/oci/core/models/cross_connect.rb +235 -0
  37. data/lib/oci/core/models/cross_connect_group.rb +187 -0
  38. data/lib/oci/core/models/cross_connect_location.rb +134 -0
  39. data/lib/oci/core/models/cross_connect_mapping.rb +190 -0
  40. data/lib/oci/core/models/cross_connect_port_speed_shape.rb +137 -0
  41. data/lib/oci/core/models/cross_connect_status.rb +200 -0
  42. data/lib/oci/core/models/dhcp_dns_option.rb +171 -0
  43. data/lib/oci/core/models/dhcp_option.rb +135 -0
  44. data/lib/oci/core/models/dhcp_options.rb +208 -0
  45. data/lib/oci/core/models/dhcp_search_domain_option.rb +141 -0
  46. data/lib/oci/core/models/drg.rb +186 -0
  47. data/lib/oci/core/models/drg_attachment.rb +208 -0
  48. data/lib/oci/core/models/egress_security_rule.rb +198 -0
  49. data/lib/oci/core/models/export_image_details.rb +134 -0
  50. data/lib/oci/core/models/export_image_via_object_storage_tuple_details.rb +150 -0
  51. data/lib/oci/core/models/export_image_via_object_storage_uri_details.rb +130 -0
  52. data/lib/oci/core/models/fast_connect_provider_service.rb +145 -0
  53. data/lib/oci/core/models/i_scsi_volume_attachment.rb +212 -0
  54. data/lib/oci/core/models/icmp_options.rb +131 -0
  55. data/lib/oci/core/models/image.rb +245 -0
  56. data/lib/oci/core/models/image_source_details.rb +134 -0
  57. data/lib/oci/core/models/image_source_via_object_storage_tuple_details.rb +150 -0
  58. data/lib/oci/core/models/image_source_via_object_storage_uri_details.rb +128 -0
  59. data/lib/oci/core/models/ingress_security_rule.rb +198 -0
  60. data/lib/oci/core/models/instance.rb +307 -0
  61. data/lib/oci/core/models/instance_console_connection.rb +193 -0
  62. data/lib/oci/core/models/instance_credentials.rb +131 -0
  63. data/lib/oci/core/models/internet_gateway.rb +210 -0
  64. data/lib/oci/core/models/ip_sec_connection.rb +223 -0
  65. data/lib/oci/core/models/ip_sec_connection_device_config.rb +153 -0
  66. data/lib/oci/core/models/ip_sec_connection_device_status.rb +156 -0
  67. data/lib/oci/core/models/launch_instance_details.rb +336 -0
  68. data/lib/oci/core/models/letter_of_authority.rb +194 -0
  69. data/lib/oci/core/models/port_range.rb +133 -0
  70. data/lib/oci/core/models/private_ip.rb +248 -0
  71. data/lib/oci/core/models/route_rule.rb +135 -0
  72. data/lib/oci/core/models/route_table.rb +208 -0
  73. data/lib/oci/core/models/security_list.rb +219 -0
  74. data/lib/oci/core/models/shape.rb +122 -0
  75. data/lib/oci/core/models/subnet.rb +351 -0
  76. data/lib/oci/core/models/tcp_options.rb +135 -0
  77. data/lib/oci/core/models/tunnel_config.rb +151 -0
  78. data/lib/oci/core/models/tunnel_status.rb +178 -0
  79. data/lib/oci/core/models/udp_options.rb +135 -0
  80. data/lib/oci/core/models/update_cpe_details.rb +122 -0
  81. data/lib/oci/core/models/update_cross_connect_details.rb +138 -0
  82. data/lib/oci/core/models/update_cross_connect_group_details.rb +122 -0
  83. data/lib/oci/core/models/update_dhcp_details.rb +132 -0
  84. data/lib/oci/core/models/update_drg_attachment_details.rb +122 -0
  85. data/lib/oci/core/models/update_drg_details.rb +122 -0
  86. data/lib/oci/core/models/update_image_details.rb +124 -0
  87. data/lib/oci/core/models/update_instance_details.rb +124 -0
  88. data/lib/oci/core/models/update_internet_gateway_details.rb +133 -0
  89. data/lib/oci/core/models/update_ip_sec_connection_details.rb +122 -0
  90. data/lib/oci/core/models/update_private_ip_details.rb +157 -0
  91. data/lib/oci/core/models/update_route_table_details.rb +133 -0
  92. data/lib/oci/core/models/update_security_list_details.rb +144 -0
  93. data/lib/oci/core/models/update_subnet_details.rb +122 -0
  94. data/lib/oci/core/models/update_vcn_details.rb +122 -0
  95. data/lib/oci/core/models/update_virtual_circuit_details.rb +240 -0
  96. data/lib/oci/core/models/update_vnic_details.rb +144 -0
  97. data/lib/oci/core/models/update_volume_backup_details.rb +122 -0
  98. data/lib/oci/core/models/update_volume_details.rb +122 -0
  99. data/lib/oci/core/models/vcn.rb +276 -0
  100. data/lib/oci/core/models/virtual_circuit.rb +395 -0
  101. data/lib/oci/core/models/virtual_circuit_bandwidth_shape.rb +137 -0
  102. data/lib/oci/core/models/vnic.rb +287 -0
  103. data/lib/oci/core/models/vnic_attachment.rb +250 -0
  104. data/lib/oci/core/models/volume.rb +210 -0
  105. data/lib/oci/core/models/volume_attachment.rb +246 -0
  106. data/lib/oci/core/models/volume_backup.rb +235 -0
  107. data/lib/oci/core/util.rb +1 -0
  108. data/lib/oci/core/virtual_network_client.rb +3421 -0
  109. data/lib/oci/errors.rb +78 -0
  110. data/lib/oci/global_context.rb +20 -0
  111. data/lib/oci/identity/identity.rb +55 -0
  112. data/lib/oci/identity/identity_client.rb +2148 -0
  113. data/lib/oci/identity/models/add_user_to_group_details.rb +131 -0
  114. data/lib/oci/identity/models/api_key.rb +211 -0
  115. data/lib/oci/identity/models/availability_domain.rb +131 -0
  116. data/lib/oci/identity/models/compartment.rb +211 -0
  117. data/lib/oci/identity/models/create_api_key_details.rb +120 -0
  118. data/lib/oci/identity/models/create_compartment_details.rb +145 -0
  119. data/lib/oci/identity/models/create_customer_secret_key_details.rb +121 -0
  120. data/lib/oci/identity/models/create_group_details.rb +144 -0
  121. data/lib/oci/identity/models/create_identity_provider_details.rb +215 -0
  122. data/lib/oci/identity/models/create_idp_group_mapping_details.rb +133 -0
  123. data/lib/oci/identity/models/create_policy_details.rb +173 -0
  124. data/lib/oci/identity/models/create_region_subscription_details.rb +128 -0
  125. data/lib/oci/identity/models/create_saml2_identity_provider_details.rb +154 -0
  126. data/lib/oci/identity/models/create_swift_password_details.rb +121 -0
  127. data/lib/oci/identity/models/create_user_details.rb +144 -0
  128. data/lib/oci/identity/models/customer_secret_key.rb +225 -0
  129. data/lib/oci/identity/models/customer_secret_key_summary.rb +213 -0
  130. data/lib/oci/identity/models/group.rb +211 -0
  131. data/lib/oci/identity/models/identity_provider.rb +261 -0
  132. data/lib/oci/identity/models/idp_group_mapping.rb +220 -0
  133. data/lib/oci/identity/models/policy.rb +237 -0
  134. data/lib/oci/identity/models/region.rb +143 -0
  135. data/lib/oci/identity/models/region_subscription.rb +180 -0
  136. data/lib/oci/identity/models/saml2_identity_provider.rb +180 -0
  137. data/lib/oci/identity/models/swift_password.rb +226 -0
  138. data/lib/oci/identity/models/tenancy.rb +159 -0
  139. data/lib/oci/identity/models/ui_password.rb +187 -0
  140. data/lib/oci/identity/models/update_compartment_details.rb +132 -0
  141. data/lib/oci/identity/models/update_customer_secret_key_details.rb +120 -0
  142. data/lib/oci/identity/models/update_group_details.rb +120 -0
  143. data/lib/oci/identity/models/update_identity_provider_details.rb +160 -0
  144. data/lib/oci/identity/models/update_idp_group_mapping_details.rb +131 -0
  145. data/lib/oci/identity/models/update_policy_details.rb +148 -0
  146. data/lib/oci/identity/models/update_saml2_identity_provider_details.rb +145 -0
  147. data/lib/oci/identity/models/update_state_details.rb +121 -0
  148. data/lib/oci/identity/models/update_swift_password_details.rb +120 -0
  149. data/lib/oci/identity/models/update_user_details.rb +120 -0
  150. data/lib/oci/identity/models/user.rb +217 -0
  151. data/lib/oci/identity/models/user_group_membership.rb +209 -0
  152. data/lib/oci/identity/util.rb +1 -0
  153. data/lib/oci/internal/internal.rb +10 -0
  154. data/lib/oci/internal/util.rb +69 -0
  155. data/lib/oci/load_balancer/load_balancer.rb +51 -0
  156. data/lib/oci/load_balancer/load_balancer_client.rb +1449 -0
  157. data/lib/oci/load_balancer/models/backend.rb +220 -0
  158. data/lib/oci/load_balancer/models/backend_details.rb +206 -0
  159. data/lib/oci/load_balancer/models/backend_health.rb +158 -0
  160. data/lib/oci/load_balancer/models/backend_set.rb +182 -0
  161. data/lib/oci/load_balancer/models/backend_set_details.rb +165 -0
  162. data/lib/oci/load_balancer/models/backend_set_health.rb +207 -0
  163. data/lib/oci/load_balancer/models/certificate.rb +169 -0
  164. data/lib/oci/load_balancer/models/certificate_details.rb +205 -0
  165. data/lib/oci/load_balancer/models/create_backend_details.rb +206 -0
  166. data/lib/oci/load_balancer/models/create_backend_set_details.rb +181 -0
  167. data/lib/oci/load_balancer/models/create_certificate_details.rb +205 -0
  168. data/lib/oci/load_balancer/models/create_listener_details.rb +175 -0
  169. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +220 -0
  170. data/lib/oci/load_balancer/models/health_check_result.rb +183 -0
  171. data/lib/oci/load_balancer/models/health_checker.rb +224 -0
  172. data/lib/oci/load_balancer/models/health_checker_details.rb +223 -0
  173. data/lib/oci/load_balancer/models/ip_address.rb +139 -0
  174. data/lib/oci/load_balancer/models/listener.rb +174 -0
  175. data/lib/oci/load_balancer/models/listener_details.rb +160 -0
  176. data/lib/oci/load_balancer/models/load_balancer.rb +280 -0
  177. data/lib/oci/load_balancer/models/load_balancer_health.rb +215 -0
  178. data/lib/oci/load_balancer/models/load_balancer_health_summary.rb +168 -0
  179. data/lib/oci/load_balancer/models/load_balancer_policy.rb +120 -0
  180. data/lib/oci/load_balancer/models/load_balancer_protocol.rb +120 -0
  181. data/lib/oci/load_balancer/models/load_balancer_shape.rb +120 -0
  182. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +141 -0
  183. data/lib/oci/load_balancer/models/ssl_configuration.rb +155 -0
  184. data/lib/oci/load_balancer/models/ssl_configuration_details.rb +155 -0
  185. data/lib/oci/load_balancer/models/update_backend_details.rb +178 -0
  186. data/lib/oci/load_balancer/models/update_backend_set_details.rb +165 -0
  187. data/lib/oci/load_balancer/models/update_health_checker_details.rb +222 -0
  188. data/lib/oci/load_balancer/models/update_listener_details.rb +160 -0
  189. data/lib/oci/load_balancer/models/update_load_balancer_details.rb +124 -0
  190. data/lib/oci/load_balancer/models/work_request.rb +229 -0
  191. data/lib/oci/load_balancer/models/work_request_error.rb +145 -0
  192. data/lib/oci/load_balancer/util.rb +58 -0
  193. data/lib/oci/object_storage/models/bucket.rb +216 -0
  194. data/lib/oci/object_storage/models/bucket_summary.rb +175 -0
  195. data/lib/oci/object_storage/models/commit_multipart_upload_details.rb +133 -0
  196. data/lib/oci/object_storage/models/commit_multipart_upload_part_details.rb +131 -0
  197. data/lib/oci/object_storage/models/create_bucket_details.rb +173 -0
  198. data/lib/oci/object_storage/models/create_multipart_upload_details.rb +166 -0
  199. data/lib/oci/object_storage/models/create_preauthenticated_request_details.rb +171 -0
  200. data/lib/oci/object_storage/models/list_objects.rb +146 -0
  201. data/lib/oci/object_storage/models/multipart_upload.rb +164 -0
  202. data/lib/oci/object_storage/models/multipart_upload_part_summary.rb +153 -0
  203. data/lib/oci/object_storage/models/object_summary.rb +153 -0
  204. data/lib/oci/object_storage/models/preauthenticated_request.rb +207 -0
  205. data/lib/oci/object_storage/models/preauthenticated_request_summary.rb +196 -0
  206. data/lib/oci/object_storage/models/update_bucket_details.rb +171 -0
  207. data/lib/oci/object_storage/object_storage.rb +30 -0
  208. data/lib/oci/object_storage/object_storage_client.rb +1185 -0
  209. data/lib/oci/object_storage/util.rb +1 -0
  210. data/lib/oci/regions.rb +43 -0
  211. data/lib/oci/response.rb +80 -0
  212. data/lib/oci/response_headers.rb +144 -0
  213. data/lib/oci/signer.rb +157 -0
  214. data/lib/oci/version.rb +5 -0
  215. data/lib/oci/waiter.rb +101 -0
  216. data/lib/oraclebmc.rb +3 -0
  217. metadata +375 -0
@@ -0,0 +1,160 @@
1
+ # Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ module OCI
6
+ class LoadBalancer::Models::UpdateListenerDetails
7
+ # The name of the associated backend set.
8
+ # @return [String]
9
+ attr_accessor :default_backend_set_name
10
+
11
+ # The communication port for the listener.
12
+ #
13
+ # Example: `80`
14
+ #
15
+ # @return [Integer]
16
+ attr_accessor :port
17
+
18
+ # The protocol on which the listener accepts connection requests.
19
+ # To get a list of valid protocols, use the {#list_protocols list_protocols}
20
+ # operation.
21
+ #
22
+ # Example: `HTTP`
23
+ #
24
+ # @return [String]
25
+ attr_accessor :protocol
26
+
27
+ # @return [OCI::LoadBalancer::Models::SSLConfigurationDetails]
28
+ attr_accessor :ssl_configuration
29
+
30
+
31
+ # Initializes the object
32
+ # @param [Hash] attributes Model attributes in the form of hash
33
+ def initialize(attributes = {})
34
+ return unless attributes.is_a?(Hash)
35
+
36
+ # convert string to symbol for hash key
37
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
38
+
39
+ if attributes[:'defaultBackendSetName']
40
+ self.default_backend_set_name = attributes[:'defaultBackendSetName']
41
+ end
42
+
43
+ if attributes[:'port']
44
+ self.port = attributes[:'port']
45
+ end
46
+
47
+ if attributes[:'protocol']
48
+ self.protocol = attributes[:'protocol']
49
+ end
50
+
51
+ if attributes[:'sslConfiguration']
52
+ self.ssl_configuration = attributes[:'sslConfiguration']
53
+ end
54
+
55
+ end
56
+
57
+ # Checks equality by comparing each attribute.
58
+ # @param [Object] other_object to be compared
59
+ def ==(other_object)
60
+ return true if self.equal?(other_object)
61
+ self.class == other_object.class &&
62
+ default_backend_set_name == other_object.default_backend_set_name &&
63
+ port == other_object.port &&
64
+ protocol == other_object.protocol &&
65
+ ssl_configuration == other_object.ssl_configuration
66
+ end
67
+
68
+ # @see the `==` method
69
+ # @param [Object] other_object to be compared
70
+ def eql?(other_object)
71
+ self == other_object
72
+ end
73
+
74
+ # Calculates hash code according to all attributes.
75
+ # @return [Fixnum] Hash code
76
+ def hash
77
+ [default_backend_set_name, port, protocol, ssl_configuration].hash
78
+ end
79
+
80
+ # Builds the object from hash
81
+ # @param [Hash] attributes Model attributes in the form of hash
82
+ # @return [Object] Returns the model itself
83
+ def build_from_hash(attributes)
84
+ return nil unless attributes.is_a?(Hash)
85
+ self.class.swagger_types.each_pair do |key, type|
86
+ if type =~ /^Array<(.*)>/i
87
+ # check to ensure the input is an array given that the the attribute
88
+ # is documented as an array but the input is not
89
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
90
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
91
+ end
92
+ elsif !attributes[self.class.attribute_map[key]].nil?
93
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
94
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
95
+ end
96
+
97
+ self
98
+ end
99
+
100
+ # Returns the string representation of the object
101
+ # @return [String] String presentation of the object
102
+ def to_s
103
+ to_hash.to_s
104
+ end
105
+
106
+ # Returns the object in the form of hash
107
+ # @return [Hash] Returns the object in the form of hash
108
+ def to_hash
109
+ hash = {}
110
+ self.class.attribute_map.each_pair do |attr, param|
111
+ value = self.send(attr)
112
+ next if value.nil?
113
+ hash[param] = _to_hash(value)
114
+ end
115
+ hash
116
+ end
117
+
118
+ private
119
+
120
+ # Outputs non-array value in the form of hash
121
+ # For object, use to_hash. Otherwise, just return the value
122
+ # @param [Object] value Any valid value
123
+ # @return [Hash] Returns the value in the form of hash
124
+ def _to_hash(value)
125
+ if value.is_a?(Array)
126
+ value.compact.map{ |v| _to_hash(v) }
127
+ elsif value.is_a?(Hash)
128
+ {}.tap do |hash|
129
+ value.each { |k, v| hash[k] = _to_hash(v) }
130
+ end
131
+ elsif value.respond_to? :to_hash
132
+ value.to_hash
133
+ else
134
+ value
135
+ end
136
+ end
137
+
138
+
139
+
140
+ # Attribute mapping from ruby-style variable name to JSON key.
141
+ def self.attribute_map
142
+ {
143
+ :'default_backend_set_name' => :'defaultBackendSetName',
144
+ :'port' => :'port',
145
+ :'protocol' => :'protocol',
146
+ :'ssl_configuration' => :'sslConfiguration'
147
+ }
148
+ end
149
+
150
+ # Attribute type mapping.
151
+ def self.swagger_types
152
+ {
153
+ :'default_backend_set_name' => :'String',
154
+ :'port' => :'Integer',
155
+ :'protocol' => :'String',
156
+ :'ssl_configuration' => :'OCI::LoadBalancer::Models::SSLConfigurationDetails'
157
+ }
158
+ end
159
+ end
160
+ end
@@ -0,0 +1,124 @@
1
+ # Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ module OCI
6
+ class LoadBalancer::Models::UpdateLoadBalancerDetails
7
+ # The user-friendly display name for the load balancer. It does not have to be unique, and it is changeable.
8
+ # Avoid entering confidential information.
9
+ #
10
+ # Example: `My load balancer`
11
+ #
12
+ # @return [String]
13
+ attr_accessor :display_name
14
+
15
+
16
+ # Initializes the object
17
+ # @param [Hash] attributes Model attributes in the form of hash
18
+ def initialize(attributes = {})
19
+ return unless attributes.is_a?(Hash)
20
+
21
+ # convert string to symbol for hash key
22
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
23
+
24
+ if attributes[:'displayName']
25
+ self.display_name = attributes[:'displayName']
26
+ end
27
+
28
+ end
29
+
30
+ # Checks equality by comparing each attribute.
31
+ # @param [Object] other_object to be compared
32
+ def ==(other_object)
33
+ return true if self.equal?(other_object)
34
+ self.class == other_object.class &&
35
+ display_name == other_object.display_name
36
+ end
37
+
38
+ # @see the `==` method
39
+ # @param [Object] other_object to be compared
40
+ def eql?(other_object)
41
+ self == other_object
42
+ end
43
+
44
+ # Calculates hash code according to all attributes.
45
+ # @return [Fixnum] Hash code
46
+ def hash
47
+ [display_name].hash
48
+ end
49
+
50
+ # Builds the object from hash
51
+ # @param [Hash] attributes Model attributes in the form of hash
52
+ # @return [Object] Returns the model itself
53
+ def build_from_hash(attributes)
54
+ return nil unless attributes.is_a?(Hash)
55
+ self.class.swagger_types.each_pair do |key, type|
56
+ if type =~ /^Array<(.*)>/i
57
+ # check to ensure the input is an array given that the the attribute
58
+ # is documented as an array but the input is not
59
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
60
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
61
+ end
62
+ elsif !attributes[self.class.attribute_map[key]].nil?
63
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
64
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
65
+ end
66
+
67
+ self
68
+ end
69
+
70
+ # Returns the string representation of the object
71
+ # @return [String] String presentation of the object
72
+ def to_s
73
+ to_hash.to_s
74
+ end
75
+
76
+ # Returns the object in the form of hash
77
+ # @return [Hash] Returns the object in the form of hash
78
+ def to_hash
79
+ hash = {}
80
+ self.class.attribute_map.each_pair do |attr, param|
81
+ value = self.send(attr)
82
+ next if value.nil?
83
+ hash[param] = _to_hash(value)
84
+ end
85
+ hash
86
+ end
87
+
88
+ private
89
+
90
+ # Outputs non-array value in the form of hash
91
+ # For object, use to_hash. Otherwise, just return the value
92
+ # @param [Object] value Any valid value
93
+ # @return [Hash] Returns the value in the form of hash
94
+ def _to_hash(value)
95
+ if value.is_a?(Array)
96
+ value.compact.map{ |v| _to_hash(v) }
97
+ elsif value.is_a?(Hash)
98
+ {}.tap do |hash|
99
+ value.each { |k, v| hash[k] = _to_hash(v) }
100
+ end
101
+ elsif value.respond_to? :to_hash
102
+ value.to_hash
103
+ else
104
+ value
105
+ end
106
+ end
107
+
108
+
109
+
110
+ # Attribute mapping from ruby-style variable name to JSON key.
111
+ def self.attribute_map
112
+ {
113
+ :'display_name' => :'displayName'
114
+ }
115
+ end
116
+
117
+ # Attribute type mapping.
118
+ def self.swagger_types
119
+ {
120
+ :'display_name' => :'String'
121
+ }
122
+ end
123
+ end
124
+ end
@@ -0,0 +1,229 @@
1
+ # Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ module OCI
6
+ class LoadBalancer::Models::WorkRequest
7
+
8
+ LIFECYCLE_STATE_ENUM = [LIFECYCLE_STATE_ACCEPTED = 'ACCEPTED',
9
+ LIFECYCLE_STATE_IN_PROGRESS = 'IN_PROGRESS',
10
+ LIFECYCLE_STATE_FAILED = 'FAILED',
11
+ LIFECYCLE_STATE_SUCCEEDED = 'SUCCEEDED',
12
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
13
+
14
+ # @return [Array<OCI::LoadBalancer::Models::WorkRequestError>]
15
+ attr_accessor :error_details
16
+
17
+ # The [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm) of the work request.
18
+ # @return [String]
19
+ attr_accessor :id
20
+
21
+ # @return [String]
22
+ attr_accessor :lifecycle_state
23
+
24
+ # The [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm) of the load balancer with which the work request
25
+ # is associated.
26
+ #
27
+ # @return [String]
28
+ attr_accessor :load_balancer_id
29
+
30
+ # A collection of data, related to the load balancer provisioning process, that helps with debugging in the event of failure.
31
+ # Possible data elements include:
32
+ #
33
+ # - workflow name
34
+ # - event ID
35
+ # - work request ID
36
+ # - load balancer ID
37
+ # - workflow completion message
38
+ #
39
+ # @return [String]
40
+ attr_accessor :message
41
+
42
+ # The date and time the work request was created, in the format defined by RFC3339.
43
+ #
44
+ # Example: `2016-08-25T21:10:29.600Z`
45
+ #
46
+ # @return [DateTime]
47
+ attr_accessor :time_accepted
48
+
49
+ # The date and time the work request was completed, in the format defined by RFC3339.
50
+ #
51
+ # Example: `2016-08-25T21:10:29.600Z`
52
+ #
53
+ # @return [DateTime]
54
+ attr_accessor :time_finished
55
+
56
+ # The type of action the work request represents.
57
+ #
58
+ # @return [String]
59
+ attr_accessor :type
60
+
61
+
62
+ # Initializes the object
63
+ # @param [Hash] attributes Model attributes in the form of hash
64
+ def initialize(attributes = {})
65
+ return unless attributes.is_a?(Hash)
66
+
67
+ # convert string to symbol for hash key
68
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
69
+
70
+ if attributes[:'errorDetails']
71
+ self.error_details = attributes[:'errorDetails']
72
+ end
73
+
74
+ if attributes[:'id']
75
+ self.id = attributes[:'id']
76
+ end
77
+
78
+ if attributes[:'lifecycleState']
79
+ self.lifecycle_state = attributes[:'lifecycleState']
80
+ end
81
+
82
+ if attributes[:'loadBalancerId']
83
+ self.load_balancer_id = attributes[:'loadBalancerId']
84
+ end
85
+
86
+ if attributes[:'message']
87
+ self.message = attributes[:'message']
88
+ end
89
+
90
+ if attributes[:'timeAccepted']
91
+ self.time_accepted = attributes[:'timeAccepted']
92
+ end
93
+
94
+ if attributes[:'timeFinished']
95
+ self.time_finished = attributes[:'timeFinished']
96
+ end
97
+
98
+ if attributes[:'type']
99
+ self.type = attributes[:'type']
100
+ end
101
+
102
+ end
103
+
104
+ # Custom attribute writer method checking allowed values (enum).
105
+ # @param [Object] lifecycle_state Object to be assigned
106
+ def lifecycle_state=(lifecycle_state)
107
+ if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
108
+ @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
109
+ else
110
+ @lifecycle_state = lifecycle_state
111
+ end
112
+ end
113
+
114
+ # Checks equality by comparing each attribute.
115
+ # @param [Object] other_object to be compared
116
+ def ==(other_object)
117
+ return true if self.equal?(other_object)
118
+ self.class == other_object.class &&
119
+ error_details == other_object.error_details &&
120
+ id == other_object.id &&
121
+ lifecycle_state == other_object.lifecycle_state &&
122
+ load_balancer_id == other_object.load_balancer_id &&
123
+ message == other_object.message &&
124
+ time_accepted == other_object.time_accepted &&
125
+ time_finished == other_object.time_finished &&
126
+ type == other_object.type
127
+ end
128
+
129
+ # @see the `==` method
130
+ # @param [Object] other_object to be compared
131
+ def eql?(other_object)
132
+ self == other_object
133
+ end
134
+
135
+ # Calculates hash code according to all attributes.
136
+ # @return [Fixnum] Hash code
137
+ def hash
138
+ [error_details, id, lifecycle_state, load_balancer_id, message, time_accepted, time_finished, type].hash
139
+ end
140
+
141
+ # Builds the object from hash
142
+ # @param [Hash] attributes Model attributes in the form of hash
143
+ # @return [Object] Returns the model itself
144
+ def build_from_hash(attributes)
145
+ return nil unless attributes.is_a?(Hash)
146
+ self.class.swagger_types.each_pair do |key, type|
147
+ if type =~ /^Array<(.*)>/i
148
+ # check to ensure the input is an array given that the the attribute
149
+ # is documented as an array but the input is not
150
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
151
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
152
+ end
153
+ elsif !attributes[self.class.attribute_map[key]].nil?
154
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
155
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
156
+ end
157
+
158
+ self
159
+ end
160
+
161
+ # Returns the string representation of the object
162
+ # @return [String] String presentation of the object
163
+ def to_s
164
+ to_hash.to_s
165
+ end
166
+
167
+ # Returns the object in the form of hash
168
+ # @return [Hash] Returns the object in the form of hash
169
+ def to_hash
170
+ hash = {}
171
+ self.class.attribute_map.each_pair do |attr, param|
172
+ value = self.send(attr)
173
+ next if value.nil?
174
+ hash[param] = _to_hash(value)
175
+ end
176
+ hash
177
+ end
178
+
179
+ private
180
+
181
+ # Outputs non-array value in the form of hash
182
+ # For object, use to_hash. Otherwise, just return the value
183
+ # @param [Object] value Any valid value
184
+ # @return [Hash] Returns the value in the form of hash
185
+ def _to_hash(value)
186
+ if value.is_a?(Array)
187
+ value.compact.map{ |v| _to_hash(v) }
188
+ elsif value.is_a?(Hash)
189
+ {}.tap do |hash|
190
+ value.each { |k, v| hash[k] = _to_hash(v) }
191
+ end
192
+ elsif value.respond_to? :to_hash
193
+ value.to_hash
194
+ else
195
+ value
196
+ end
197
+ end
198
+
199
+
200
+
201
+ # Attribute mapping from ruby-style variable name to JSON key.
202
+ def self.attribute_map
203
+ {
204
+ :'error_details' => :'errorDetails',
205
+ :'id' => :'id',
206
+ :'lifecycle_state' => :'lifecycleState',
207
+ :'load_balancer_id' => :'loadBalancerId',
208
+ :'message' => :'message',
209
+ :'time_accepted' => :'timeAccepted',
210
+ :'time_finished' => :'timeFinished',
211
+ :'type' => :'type'
212
+ }
213
+ end
214
+
215
+ # Attribute type mapping.
216
+ def self.swagger_types
217
+ {
218
+ :'error_details' => :'Array<OCI::LoadBalancer::Models::WorkRequestError>',
219
+ :'id' => :'String',
220
+ :'lifecycle_state' => :'String',
221
+ :'load_balancer_id' => :'String',
222
+ :'message' => :'String',
223
+ :'time_accepted' => :'DateTime',
224
+ :'time_finished' => :'DateTime',
225
+ :'type' => :'String'
226
+ }
227
+ end
228
+ end
229
+ end