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,141 @@
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::SessionPersistenceConfigurationDetails
7
+ # The name of the cookie used to detect a session initiated by the backend server. Use '*' to specify
8
+ # that any cookie set by the backend causes the session to persist.
9
+ #
10
+ # Example: `myCookieName`
11
+ #
12
+ # @return [String]
13
+ attr_accessor :cookie_name
14
+
15
+ # Whether the load balancer is prevented from directing traffic from a persistent session client to
16
+ # a different backend server if the original server is unavailable. Defaults to false.
17
+ #
18
+ # Example: `true`
19
+ #
20
+ # @return [BOOLEAN]
21
+ attr_accessor :disable_fallback
22
+
23
+
24
+ # Initializes the object
25
+ # @param [Hash] attributes Model attributes in the form of hash
26
+ def initialize(attributes = {})
27
+ return unless attributes.is_a?(Hash)
28
+
29
+ # convert string to symbol for hash key
30
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
31
+
32
+ if attributes[:'cookieName']
33
+ self.cookie_name = attributes[:'cookieName']
34
+ end
35
+
36
+ if attributes[:'disableFallback']
37
+ self.disable_fallback = attributes[:'disableFallback']
38
+ else
39
+ self.disable_fallback = false
40
+ end
41
+
42
+ end
43
+
44
+ # Checks equality by comparing each attribute.
45
+ # @param [Object] other_object to be compared
46
+ def ==(other_object)
47
+ return true if self.equal?(other_object)
48
+ self.class == other_object.class &&
49
+ cookie_name == other_object.cookie_name &&
50
+ disable_fallback == other_object.disable_fallback
51
+ end
52
+
53
+ # @see the `==` method
54
+ # @param [Object] other_object to be compared
55
+ def eql?(other_object)
56
+ self == other_object
57
+ end
58
+
59
+ # Calculates hash code according to all attributes.
60
+ # @return [Fixnum] Hash code
61
+ def hash
62
+ [cookie_name, disable_fallback].hash
63
+ end
64
+
65
+ # Builds the object from hash
66
+ # @param [Hash] attributes Model attributes in the form of hash
67
+ # @return [Object] Returns the model itself
68
+ def build_from_hash(attributes)
69
+ return nil unless attributes.is_a?(Hash)
70
+ self.class.swagger_types.each_pair do |key, type|
71
+ if type =~ /^Array<(.*)>/i
72
+ # check to ensure the input is an array given that the the attribute
73
+ # is documented as an array but the input is not
74
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
75
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
76
+ end
77
+ elsif !attributes[self.class.attribute_map[key]].nil?
78
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
79
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
80
+ end
81
+
82
+ self
83
+ end
84
+
85
+ # Returns the string representation of the object
86
+ # @return [String] String presentation of the object
87
+ def to_s
88
+ to_hash.to_s
89
+ end
90
+
91
+ # Returns the object in the form of hash
92
+ # @return [Hash] Returns the object in the form of hash
93
+ def to_hash
94
+ hash = {}
95
+ self.class.attribute_map.each_pair do |attr, param|
96
+ value = self.send(attr)
97
+ next if value.nil?
98
+ hash[param] = _to_hash(value)
99
+ end
100
+ hash
101
+ end
102
+
103
+ private
104
+
105
+ # Outputs non-array value in the form of hash
106
+ # For object, use to_hash. Otherwise, just return the value
107
+ # @param [Object] value Any valid value
108
+ # @return [Hash] Returns the value in the form of hash
109
+ def _to_hash(value)
110
+ if value.is_a?(Array)
111
+ value.compact.map{ |v| _to_hash(v) }
112
+ elsif value.is_a?(Hash)
113
+ {}.tap do |hash|
114
+ value.each { |k, v| hash[k] = _to_hash(v) }
115
+ end
116
+ elsif value.respond_to? :to_hash
117
+ value.to_hash
118
+ else
119
+ value
120
+ end
121
+ end
122
+
123
+
124
+
125
+ # Attribute mapping from ruby-style variable name to JSON key.
126
+ def self.attribute_map
127
+ {
128
+ :'cookie_name' => :'cookieName',
129
+ :'disable_fallback' => :'disableFallback'
130
+ }
131
+ end
132
+
133
+ # Attribute type mapping.
134
+ def self.swagger_types
135
+ {
136
+ :'cookie_name' => :'String',
137
+ :'disable_fallback' => :'BOOLEAN'
138
+ }
139
+ end
140
+ end
141
+ end
@@ -0,0 +1,155 @@
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::SSLConfiguration
7
+ # A friendly name for the certificate bundle. It must be unique and it cannot be changed.
8
+ # Valid certificate bundle names include only alphanumeric characters, dashes, and underscores.
9
+ # Certificate bundle names cannot contain spaces. Avoid entering confidential information.
10
+ #
11
+ # Example: `My_certificate_bundle`
12
+ #
13
+ # @return [String]
14
+ attr_accessor :certificate_name
15
+
16
+ # The maximum depth for peer certificate chain verification.
17
+ #
18
+ # Example: `3`
19
+ #
20
+ # @return [Integer]
21
+ attr_accessor :verify_depth
22
+
23
+ # Whether the load balancer listener should verify peer certificates.
24
+ #
25
+ # Example: `true`
26
+ #
27
+ # @return [BOOLEAN]
28
+ attr_accessor :verify_peer_certificate
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[:'certificateName']
40
+ self.certificate_name = attributes[:'certificateName']
41
+ end
42
+
43
+ if attributes[:'verifyDepth']
44
+ self.verify_depth = attributes[:'verifyDepth']
45
+ end
46
+
47
+ if attributes[:'verifyPeerCertificate']
48
+ self.verify_peer_certificate = attributes[:'verifyPeerCertificate']
49
+ else
50
+ self.verify_peer_certificate = false
51
+ end
52
+
53
+ end
54
+
55
+ # Checks equality by comparing each attribute.
56
+ # @param [Object] other_object to be compared
57
+ def ==(other_object)
58
+ return true if self.equal?(other_object)
59
+ self.class == other_object.class &&
60
+ certificate_name == other_object.certificate_name &&
61
+ verify_depth == other_object.verify_depth &&
62
+ verify_peer_certificate == other_object.verify_peer_certificate
63
+ end
64
+
65
+ # @see the `==` method
66
+ # @param [Object] other_object to be compared
67
+ def eql?(other_object)
68
+ self == other_object
69
+ end
70
+
71
+ # Calculates hash code according to all attributes.
72
+ # @return [Fixnum] Hash code
73
+ def hash
74
+ [certificate_name, verify_depth, verify_peer_certificate].hash
75
+ end
76
+
77
+ # Builds the object from hash
78
+ # @param [Hash] attributes Model attributes in the form of hash
79
+ # @return [Object] Returns the model itself
80
+ def build_from_hash(attributes)
81
+ return nil unless attributes.is_a?(Hash)
82
+ self.class.swagger_types.each_pair do |key, type|
83
+ if type =~ /^Array<(.*)>/i
84
+ # check to ensure the input is an array given that the the attribute
85
+ # is documented as an array but the input is not
86
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
87
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
88
+ end
89
+ elsif !attributes[self.class.attribute_map[key]].nil?
90
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
91
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
92
+ end
93
+
94
+ self
95
+ end
96
+
97
+ # Returns the string representation of the object
98
+ # @return [String] String presentation of the object
99
+ def to_s
100
+ to_hash.to_s
101
+ end
102
+
103
+ # Returns the object in the form of hash
104
+ # @return [Hash] Returns the object in the form of hash
105
+ def to_hash
106
+ hash = {}
107
+ self.class.attribute_map.each_pair do |attr, param|
108
+ value = self.send(attr)
109
+ next if value.nil?
110
+ hash[param] = _to_hash(value)
111
+ end
112
+ hash
113
+ end
114
+
115
+ private
116
+
117
+ # Outputs non-array value in the form of hash
118
+ # For object, use to_hash. Otherwise, just return the value
119
+ # @param [Object] value Any valid value
120
+ # @return [Hash] Returns the value in the form of hash
121
+ def _to_hash(value)
122
+ if value.is_a?(Array)
123
+ value.compact.map{ |v| _to_hash(v) }
124
+ elsif value.is_a?(Hash)
125
+ {}.tap do |hash|
126
+ value.each { |k, v| hash[k] = _to_hash(v) }
127
+ end
128
+ elsif value.respond_to? :to_hash
129
+ value.to_hash
130
+ else
131
+ value
132
+ end
133
+ end
134
+
135
+
136
+
137
+ # Attribute mapping from ruby-style variable name to JSON key.
138
+ def self.attribute_map
139
+ {
140
+ :'certificate_name' => :'certificateName',
141
+ :'verify_depth' => :'verifyDepth',
142
+ :'verify_peer_certificate' => :'verifyPeerCertificate'
143
+ }
144
+ end
145
+
146
+ # Attribute type mapping.
147
+ def self.swagger_types
148
+ {
149
+ :'certificate_name' => :'String',
150
+ :'verify_depth' => :'Integer',
151
+ :'verify_peer_certificate' => :'BOOLEAN'
152
+ }
153
+ end
154
+ end
155
+ end
@@ -0,0 +1,155 @@
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::SSLConfigurationDetails
7
+ # A friendly name for the certificate bundle. It must be unique and it cannot be changed.
8
+ # Valid certificate bundle names include only alphanumeric characters, dashes, and underscores.
9
+ # Certificate bundle names cannot contain spaces. Avoid entering confidential information.
10
+ #
11
+ # Example: `My_certificate_bundle`
12
+ #
13
+ # @return [String]
14
+ attr_accessor :certificate_name
15
+
16
+ # The maximum depth for peer certificate chain verification.
17
+ #
18
+ # Example: `3`
19
+ #
20
+ # @return [Integer]
21
+ attr_accessor :verify_depth
22
+
23
+ # Whether the load balancer listener should verify peer certificates.
24
+ #
25
+ # Example: `true`
26
+ #
27
+ # @return [BOOLEAN]
28
+ attr_accessor :verify_peer_certificate
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[:'certificateName']
40
+ self.certificate_name = attributes[:'certificateName']
41
+ end
42
+
43
+ if attributes[:'verifyDepth']
44
+ self.verify_depth = attributes[:'verifyDepth']
45
+ end
46
+
47
+ if attributes[:'verifyPeerCertificate']
48
+ self.verify_peer_certificate = attributes[:'verifyPeerCertificate']
49
+ else
50
+ self.verify_peer_certificate = false
51
+ end
52
+
53
+ end
54
+
55
+ # Checks equality by comparing each attribute.
56
+ # @param [Object] other_object to be compared
57
+ def ==(other_object)
58
+ return true if self.equal?(other_object)
59
+ self.class == other_object.class &&
60
+ certificate_name == other_object.certificate_name &&
61
+ verify_depth == other_object.verify_depth &&
62
+ verify_peer_certificate == other_object.verify_peer_certificate
63
+ end
64
+
65
+ # @see the `==` method
66
+ # @param [Object] other_object to be compared
67
+ def eql?(other_object)
68
+ self == other_object
69
+ end
70
+
71
+ # Calculates hash code according to all attributes.
72
+ # @return [Fixnum] Hash code
73
+ def hash
74
+ [certificate_name, verify_depth, verify_peer_certificate].hash
75
+ end
76
+
77
+ # Builds the object from hash
78
+ # @param [Hash] attributes Model attributes in the form of hash
79
+ # @return [Object] Returns the model itself
80
+ def build_from_hash(attributes)
81
+ return nil unless attributes.is_a?(Hash)
82
+ self.class.swagger_types.each_pair do |key, type|
83
+ if type =~ /^Array<(.*)>/i
84
+ # check to ensure the input is an array given that the the attribute
85
+ # is documented as an array but the input is not
86
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
87
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
88
+ end
89
+ elsif !attributes[self.class.attribute_map[key]].nil?
90
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
91
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
92
+ end
93
+
94
+ self
95
+ end
96
+
97
+ # Returns the string representation of the object
98
+ # @return [String] String presentation of the object
99
+ def to_s
100
+ to_hash.to_s
101
+ end
102
+
103
+ # Returns the object in the form of hash
104
+ # @return [Hash] Returns the object in the form of hash
105
+ def to_hash
106
+ hash = {}
107
+ self.class.attribute_map.each_pair do |attr, param|
108
+ value = self.send(attr)
109
+ next if value.nil?
110
+ hash[param] = _to_hash(value)
111
+ end
112
+ hash
113
+ end
114
+
115
+ private
116
+
117
+ # Outputs non-array value in the form of hash
118
+ # For object, use to_hash. Otherwise, just return the value
119
+ # @param [Object] value Any valid value
120
+ # @return [Hash] Returns the value in the form of hash
121
+ def _to_hash(value)
122
+ if value.is_a?(Array)
123
+ value.compact.map{ |v| _to_hash(v) }
124
+ elsif value.is_a?(Hash)
125
+ {}.tap do |hash|
126
+ value.each { |k, v| hash[k] = _to_hash(v) }
127
+ end
128
+ elsif value.respond_to? :to_hash
129
+ value.to_hash
130
+ else
131
+ value
132
+ end
133
+ end
134
+
135
+
136
+
137
+ # Attribute mapping from ruby-style variable name to JSON key.
138
+ def self.attribute_map
139
+ {
140
+ :'certificate_name' => :'certificateName',
141
+ :'verify_depth' => :'verifyDepth',
142
+ :'verify_peer_certificate' => :'verifyPeerCertificate'
143
+ }
144
+ end
145
+
146
+ # Attribute type mapping.
147
+ def self.swagger_types
148
+ {
149
+ :'certificate_name' => :'String',
150
+ :'verify_depth' => :'Integer',
151
+ :'verify_peer_certificate' => :'BOOLEAN'
152
+ }
153
+ end
154
+ end
155
+ end