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,178 @@
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::UpdateBackendDetails
7
+ # Whether the load balancer should treat this server as a backup unit. If `true`, the load balancer forwards no ingress
8
+ # traffic to this backend server unless all other backend servers not marked as \"backup\" fail the health check policy.
9
+ #
10
+ # Example: `true`
11
+ #
12
+ # @return [BOOLEAN]
13
+ attr_accessor :backup
14
+
15
+ # Whether the load balancer should drain this server. Servers marked \"drain\" receive no new
16
+ # incoming traffic.
17
+ #
18
+ # Example: `true`
19
+ #
20
+ # @return [BOOLEAN]
21
+ attr_accessor :drain
22
+
23
+ # Whether the load balancer should treat this server as offline. Offline servers receive no incoming
24
+ # traffic.
25
+ #
26
+ # Example: `true`
27
+ #
28
+ # @return [BOOLEAN]
29
+ attr_accessor :offline
30
+
31
+ # The load balancing policy weight assigned to the server. Backend servers with a higher weight receive a larger
32
+ # proportion of incoming traffic. For example, a server weighted '3' receives 3 times the number of new connections
33
+ # as a server weighted '1'.
34
+ # For more information on load balancing policies, see
35
+ # [How Load Balancing Policies Work](https://docs.us-phoenix-1.oraclecloud.com/Content/Balance/Reference/lbpolicies.htm).
36
+ #
37
+ # Example: `3`
38
+ #
39
+ # @return [Integer]
40
+ attr_accessor :weight
41
+
42
+
43
+ # Initializes the object
44
+ # @param [Hash] attributes Model attributes in the form of hash
45
+ def initialize(attributes = {})
46
+ return unless attributes.is_a?(Hash)
47
+
48
+ # convert string to symbol for hash key
49
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
50
+
51
+ if attributes[:'backup']
52
+ self.backup = attributes[:'backup']
53
+ else
54
+ self.backup = false
55
+ end
56
+
57
+ if attributes[:'drain']
58
+ self.drain = attributes[:'drain']
59
+ else
60
+ self.drain = false
61
+ end
62
+
63
+ if attributes[:'offline']
64
+ self.offline = attributes[:'offline']
65
+ else
66
+ self.offline = false
67
+ end
68
+
69
+ if attributes[:'weight']
70
+ self.weight = attributes[:'weight']
71
+ end
72
+
73
+ end
74
+
75
+ # Checks equality by comparing each attribute.
76
+ # @param [Object] other_object to be compared
77
+ def ==(other_object)
78
+ return true if self.equal?(other_object)
79
+ self.class == other_object.class &&
80
+ backup == other_object.backup &&
81
+ drain == other_object.drain &&
82
+ offline == other_object.offline &&
83
+ weight == other_object.weight
84
+ end
85
+
86
+ # @see the `==` method
87
+ # @param [Object] other_object to be compared
88
+ def eql?(other_object)
89
+ self == other_object
90
+ end
91
+
92
+ # Calculates hash code according to all attributes.
93
+ # @return [Fixnum] Hash code
94
+ def hash
95
+ [backup, drain, offline, weight].hash
96
+ end
97
+
98
+ # Builds the object from hash
99
+ # @param [Hash] attributes Model attributes in the form of hash
100
+ # @return [Object] Returns the model itself
101
+ def build_from_hash(attributes)
102
+ return nil unless attributes.is_a?(Hash)
103
+ self.class.swagger_types.each_pair do |key, type|
104
+ if type =~ /^Array<(.*)>/i
105
+ # check to ensure the input is an array given that the the attribute
106
+ # is documented as an array but the input is not
107
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
108
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
109
+ end
110
+ elsif !attributes[self.class.attribute_map[key]].nil?
111
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
112
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
113
+ end
114
+
115
+ self
116
+ end
117
+
118
+ # Returns the string representation of the object
119
+ # @return [String] String presentation of the object
120
+ def to_s
121
+ to_hash.to_s
122
+ end
123
+
124
+ # Returns the object in the form of hash
125
+ # @return [Hash] Returns the object in the form of hash
126
+ def to_hash
127
+ hash = {}
128
+ self.class.attribute_map.each_pair do |attr, param|
129
+ value = self.send(attr)
130
+ next if value.nil?
131
+ hash[param] = _to_hash(value)
132
+ end
133
+ hash
134
+ end
135
+
136
+ private
137
+
138
+ # Outputs non-array value in the form of hash
139
+ # For object, use to_hash. Otherwise, just return the value
140
+ # @param [Object] value Any valid value
141
+ # @return [Hash] Returns the value in the form of hash
142
+ def _to_hash(value)
143
+ if value.is_a?(Array)
144
+ value.compact.map{ |v| _to_hash(v) }
145
+ elsif value.is_a?(Hash)
146
+ {}.tap do |hash|
147
+ value.each { |k, v| hash[k] = _to_hash(v) }
148
+ end
149
+ elsif value.respond_to? :to_hash
150
+ value.to_hash
151
+ else
152
+ value
153
+ end
154
+ end
155
+
156
+
157
+
158
+ # Attribute mapping from ruby-style variable name to JSON key.
159
+ def self.attribute_map
160
+ {
161
+ :'backup' => :'backup',
162
+ :'drain' => :'drain',
163
+ :'offline' => :'offline',
164
+ :'weight' => :'weight'
165
+ }
166
+ end
167
+
168
+ # Attribute type mapping.
169
+ def self.swagger_types
170
+ {
171
+ :'backup' => :'BOOLEAN',
172
+ :'drain' => :'BOOLEAN',
173
+ :'offline' => :'BOOLEAN',
174
+ :'weight' => :'Integer'
175
+ }
176
+ end
177
+ end
178
+ end
@@ -0,0 +1,165 @@
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::UpdateBackendSetDetails
7
+ # @return [Array<OCI::LoadBalancer::Models::BackendDetails>]
8
+ attr_accessor :backends
9
+
10
+ # @return [OCI::LoadBalancer::Models::HealthCheckerDetails]
11
+ attr_accessor :health_checker
12
+
13
+ # The load balancer policy for the backend set. The default load balancing policy is 'ROUND_ROBIN'
14
+ # To get a list of available policies, use the {#list_policies list_policies}
15
+ # operation.
16
+ #
17
+ # Example: `LEAST_CONNECTIONS`
18
+ #
19
+ # @return [String]
20
+ attr_accessor :policy
21
+
22
+ # @return [OCI::LoadBalancer::Models::SessionPersistenceConfigurationDetails]
23
+ attr_accessor :session_persistence_configuration
24
+
25
+ # @return [OCI::LoadBalancer::Models::SSLConfigurationDetails]
26
+ attr_accessor :ssl_configuration
27
+
28
+
29
+ # Initializes the object
30
+ # @param [Hash] attributes Model attributes in the form of hash
31
+ def initialize(attributes = {})
32
+ return unless attributes.is_a?(Hash)
33
+
34
+ # convert string to symbol for hash key
35
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
36
+
37
+ if attributes[:'backends']
38
+ self.backends = attributes[:'backends']
39
+ end
40
+
41
+ if attributes[:'healthChecker']
42
+ self.health_checker = attributes[:'healthChecker']
43
+ end
44
+
45
+ if attributes[:'policy']
46
+ self.policy = attributes[:'policy']
47
+ end
48
+
49
+ if attributes[:'sessionPersistenceConfiguration']
50
+ self.session_persistence_configuration = attributes[:'sessionPersistenceConfiguration']
51
+ end
52
+
53
+ if attributes[:'sslConfiguration']
54
+ self.ssl_configuration = attributes[:'sslConfiguration']
55
+ end
56
+
57
+ end
58
+
59
+ # Checks equality by comparing each attribute.
60
+ # @param [Object] other_object to be compared
61
+ def ==(other_object)
62
+ return true if self.equal?(other_object)
63
+ self.class == other_object.class &&
64
+ backends == other_object.backends &&
65
+ health_checker == other_object.health_checker &&
66
+ policy == other_object.policy &&
67
+ session_persistence_configuration == other_object.session_persistence_configuration &&
68
+ ssl_configuration == other_object.ssl_configuration
69
+ end
70
+
71
+ # @see the `==` method
72
+ # @param [Object] other_object to be compared
73
+ def eql?(other_object)
74
+ self == other_object
75
+ end
76
+
77
+ # Calculates hash code according to all attributes.
78
+ # @return [Fixnum] Hash code
79
+ def hash
80
+ [backends, health_checker, policy, session_persistence_configuration, ssl_configuration].hash
81
+ end
82
+
83
+ # Builds the object from hash
84
+ # @param [Hash] attributes Model attributes in the form of hash
85
+ # @return [Object] Returns the model itself
86
+ def build_from_hash(attributes)
87
+ return nil unless attributes.is_a?(Hash)
88
+ self.class.swagger_types.each_pair do |key, type|
89
+ if type =~ /^Array<(.*)>/i
90
+ # check to ensure the input is an array given that the the attribute
91
+ # is documented as an array but the input is not
92
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
93
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
94
+ end
95
+ elsif !attributes[self.class.attribute_map[key]].nil?
96
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
97
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
98
+ end
99
+
100
+ self
101
+ end
102
+
103
+ # Returns the string representation of the object
104
+ # @return [String] String presentation of the object
105
+ def to_s
106
+ to_hash.to_s
107
+ end
108
+
109
+ # Returns the object in the form of hash
110
+ # @return [Hash] Returns the object in the form of hash
111
+ def to_hash
112
+ hash = {}
113
+ self.class.attribute_map.each_pair do |attr, param|
114
+ value = self.send(attr)
115
+ next if value.nil?
116
+ hash[param] = _to_hash(value)
117
+ end
118
+ hash
119
+ end
120
+
121
+ private
122
+
123
+ # Outputs non-array value in the form of hash
124
+ # For object, use to_hash. Otherwise, just return the value
125
+ # @param [Object] value Any valid value
126
+ # @return [Hash] Returns the value in the form of hash
127
+ def _to_hash(value)
128
+ if value.is_a?(Array)
129
+ value.compact.map{ |v| _to_hash(v) }
130
+ elsif value.is_a?(Hash)
131
+ {}.tap do |hash|
132
+ value.each { |k, v| hash[k] = _to_hash(v) }
133
+ end
134
+ elsif value.respond_to? :to_hash
135
+ value.to_hash
136
+ else
137
+ value
138
+ end
139
+ end
140
+
141
+
142
+
143
+ # Attribute mapping from ruby-style variable name to JSON key.
144
+ def self.attribute_map
145
+ {
146
+ :'backends' => :'backends',
147
+ :'health_checker' => :'healthChecker',
148
+ :'policy' => :'policy',
149
+ :'session_persistence_configuration' => :'sessionPersistenceConfiguration',
150
+ :'ssl_configuration' => :'sslConfiguration'
151
+ }
152
+ end
153
+
154
+ # Attribute type mapping.
155
+ def self.swagger_types
156
+ {
157
+ :'backends' => :'Array<OCI::LoadBalancer::Models::BackendDetails>',
158
+ :'health_checker' => :'OCI::LoadBalancer::Models::HealthCheckerDetails',
159
+ :'policy' => :'String',
160
+ :'session_persistence_configuration' => :'OCI::LoadBalancer::Models::SessionPersistenceConfigurationDetails',
161
+ :'ssl_configuration' => :'OCI::LoadBalancer::Models::SSLConfigurationDetails'
162
+ }
163
+ end
164
+ end
165
+ end
@@ -0,0 +1,222 @@
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::UpdateHealthCheckerDetails
7
+ # The interval between health checks, in milliseconds.
8
+ #
9
+ # Example: `30000`
10
+ #
11
+ # @return [Integer]
12
+ attr_accessor :interval_in_millis
13
+
14
+ # The backend server port against which to run the health check.
15
+ #
16
+ # Example: `8080`
17
+ #
18
+ # @return [Integer]
19
+ attr_accessor :port
20
+
21
+ # The protocol the health check must use; either HTTP or TCP.
22
+ #
23
+ # Example: `HTTP`
24
+ #
25
+ # @return [String]
26
+ attr_accessor :protocol
27
+
28
+ # A regular expression for parsing the response body from the backend server.
29
+ #
30
+ # Example: `^(500|40[1348])$`
31
+ #
32
+ # @return [String]
33
+ attr_accessor :response_body_regex
34
+
35
+ # The number of retries to attempt before a backend server is considered \"unhealthy\".
36
+ #
37
+ # Example: `3`
38
+ #
39
+ # @return [Integer]
40
+ attr_accessor :retries
41
+
42
+ # The status code a healthy backend server should return.
43
+ #
44
+ # Example: `200`
45
+ #
46
+ # @return [Integer]
47
+ attr_accessor :return_code
48
+
49
+ # The maximum time, in milliseconds, to wait for a reply to a health check. A health check is successful only if a reply
50
+ # returns within this timeout period.
51
+ #
52
+ # Example: `6000`
53
+ #
54
+ # @return [Integer]
55
+ attr_accessor :timeout_in_millis
56
+
57
+ # The path against which to run the health check.
58
+ #
59
+ # Example: `/healthcheck`
60
+ #
61
+ # @return [String]
62
+ attr_accessor :url_path
63
+
64
+
65
+ # Initializes the object
66
+ # @param [Hash] attributes Model attributes in the form of hash
67
+ def initialize(attributes = {})
68
+ return unless attributes.is_a?(Hash)
69
+
70
+ # convert string to symbol for hash key
71
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
72
+
73
+ if attributes[:'intervalInMillis']
74
+ self.interval_in_millis = attributes[:'intervalInMillis']
75
+ end
76
+
77
+ if attributes[:'port']
78
+ self.port = attributes[:'port']
79
+ end
80
+
81
+ if attributes[:'protocol']
82
+ self.protocol = attributes[:'protocol']
83
+ end
84
+
85
+ if attributes[:'responseBodyRegex']
86
+ self.response_body_regex = attributes[:'responseBodyRegex']
87
+ end
88
+
89
+ if attributes[:'retries']
90
+ self.retries = attributes[:'retries']
91
+ end
92
+
93
+ if attributes[:'returnCode']
94
+ self.return_code = attributes[:'returnCode']
95
+ end
96
+
97
+ if attributes[:'timeoutInMillis']
98
+ self.timeout_in_millis = attributes[:'timeoutInMillis']
99
+ end
100
+
101
+ if attributes[:'urlPath']
102
+ self.url_path = attributes[:'urlPath']
103
+ end
104
+
105
+ end
106
+
107
+ # Checks equality by comparing each attribute.
108
+ # @param [Object] other_object to be compared
109
+ def ==(other_object)
110
+ return true if self.equal?(other_object)
111
+ self.class == other_object.class &&
112
+ interval_in_millis == other_object.interval_in_millis &&
113
+ port == other_object.port &&
114
+ protocol == other_object.protocol &&
115
+ response_body_regex == other_object.response_body_regex &&
116
+ retries == other_object.retries &&
117
+ return_code == other_object.return_code &&
118
+ timeout_in_millis == other_object.timeout_in_millis &&
119
+ url_path == other_object.url_path
120
+ end
121
+
122
+ # @see the `==` method
123
+ # @param [Object] other_object to be compared
124
+ def eql?(other_object)
125
+ self == other_object
126
+ end
127
+
128
+ # Calculates hash code according to all attributes.
129
+ # @return [Fixnum] Hash code
130
+ def hash
131
+ [interval_in_millis, port, protocol, response_body_regex, retries, return_code, timeout_in_millis, url_path].hash
132
+ end
133
+
134
+ # Builds the object from hash
135
+ # @param [Hash] attributes Model attributes in the form of hash
136
+ # @return [Object] Returns the model itself
137
+ def build_from_hash(attributes)
138
+ return nil unless attributes.is_a?(Hash)
139
+ self.class.swagger_types.each_pair do |key, type|
140
+ if type =~ /^Array<(.*)>/i
141
+ # check to ensure the input is an array given that the the attribute
142
+ # is documented as an array but the input is not
143
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
144
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
145
+ end
146
+ elsif !attributes[self.class.attribute_map[key]].nil?
147
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
148
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
149
+ end
150
+
151
+ self
152
+ end
153
+
154
+ # Returns the string representation of the object
155
+ # @return [String] String presentation of the object
156
+ def to_s
157
+ to_hash.to_s
158
+ end
159
+
160
+ # Returns the object in the form of hash
161
+ # @return [Hash] Returns the object in the form of hash
162
+ def to_hash
163
+ hash = {}
164
+ self.class.attribute_map.each_pair do |attr, param|
165
+ value = self.send(attr)
166
+ next if value.nil?
167
+ hash[param] = _to_hash(value)
168
+ end
169
+ hash
170
+ end
171
+
172
+ private
173
+
174
+ # Outputs non-array value in the form of hash
175
+ # For object, use to_hash. Otherwise, just return the value
176
+ # @param [Object] value Any valid value
177
+ # @return [Hash] Returns the value in the form of hash
178
+ def _to_hash(value)
179
+ if value.is_a?(Array)
180
+ value.compact.map{ |v| _to_hash(v) }
181
+ elsif value.is_a?(Hash)
182
+ {}.tap do |hash|
183
+ value.each { |k, v| hash[k] = _to_hash(v) }
184
+ end
185
+ elsif value.respond_to? :to_hash
186
+ value.to_hash
187
+ else
188
+ value
189
+ end
190
+ end
191
+
192
+
193
+
194
+ # Attribute mapping from ruby-style variable name to JSON key.
195
+ def self.attribute_map
196
+ {
197
+ :'interval_in_millis' => :'intervalInMillis',
198
+ :'port' => :'port',
199
+ :'protocol' => :'protocol',
200
+ :'response_body_regex' => :'responseBodyRegex',
201
+ :'retries' => :'retries',
202
+ :'return_code' => :'returnCode',
203
+ :'timeout_in_millis' => :'timeoutInMillis',
204
+ :'url_path' => :'urlPath'
205
+ }
206
+ end
207
+
208
+ # Attribute type mapping.
209
+ def self.swagger_types
210
+ {
211
+ :'interval_in_millis' => :'Integer',
212
+ :'port' => :'Integer',
213
+ :'protocol' => :'String',
214
+ :'response_body_regex' => :'String',
215
+ :'retries' => :'Integer',
216
+ :'return_code' => :'Integer',
217
+ :'timeout_in_millis' => :'Integer',
218
+ :'url_path' => :'String'
219
+ }
220
+ end
221
+ end
222
+ end