oci 2.0.6 → 2.0.7
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.
- checksums.yaml +4 -4
- data/README.md +23 -1
- data/lib/oci.rb +4 -7
- data/lib/oci/api_client.rb +51 -6
- data/lib/oci/auth/auth.rb +5 -2
- data/lib/oci/auth/federation_client.rb +2 -2
- data/lib/oci/auth/internal/auth_token_request_signer.rb +2 -2
- data/lib/oci/auth/security_token_container.rb +2 -2
- data/lib/oci/auth/session_key_supplier.rb +3 -4
- data/lib/oci/auth/signers/instance_principals_security_token_signer.rb +30 -17
- data/lib/oci/auth/signers/security_token_signer.rb +13 -6
- data/lib/oci/auth/signers/x509_federation_client_based_security_token_signer.rb +8 -4
- data/lib/oci/auth/url_based_certificate_retriever.rb +3 -4
- data/lib/oci/auth/util.rb +6 -4
- data/lib/oci/base_signer.rb +54 -50
- data/lib/oci/config_file_loader.rb +3 -11
- data/lib/oci/core/blockstorage_client.rb +211 -0
- data/lib/oci/core/compute_client.rb +4 -2
- data/lib/oci/core/core.rb +9 -0
- data/lib/oci/core/models/attach_i_scsi_volume_details.rb +5 -1
- data/lib/oci/core/models/attach_volume_details.rb +13 -1
- data/lib/oci/core/models/create_public_ip_details.rb +186 -0
- data/lib/oci/core/models/create_vnic_details.rb +8 -2
- data/lib/oci/core/models/create_volume_backup_details.rb +27 -1
- data/lib/oci/core/models/create_volume_backup_policy_assignment_details.rb +133 -0
- data/lib/oci/core/models/create_volume_details.rb +15 -1
- data/lib/oci/core/models/get_public_ip_by_ip_address_details.rb +125 -0
- data/lib/oci/core/models/get_public_ip_by_private_ip_id_details.rb +124 -0
- data/lib/oci/core/models/i_scsi_volume_attachment.rb +5 -1
- data/lib/oci/core/models/public_ip.rb +328 -0
- data/lib/oci/core/models/update_public_ip_details.rb +140 -0
- data/lib/oci/core/models/volume_attachment.rb +13 -1
- data/lib/oci/core/models/volume_backup.rb +72 -1
- data/lib/oci/core/models/volume_backup_policy.rb +161 -0
- data/lib/oci/core/models/volume_backup_policy_assignment.rb +159 -0
- data/lib/oci/core/models/volume_backup_schedule.rb +191 -0
- data/lib/oci/core/virtual_network_client.rb +374 -4
- data/lib/oci/database/database_client.rb +3 -1
- data/lib/oci/dns/dns.rb +34 -0
- data/lib/oci/dns/dns_client.rb +985 -0
- data/lib/oci/dns/models/create_zone_details.rb +174 -0
- data/lib/oci/dns/models/external_master.rb +145 -0
- data/lib/oci/dns/models/patch_domain_records_details.rb +120 -0
- data/lib/oci/dns/models/patch_rr_set_details.rb +120 -0
- data/lib/oci/dns/models/patch_zone_records_details.rb +120 -0
- data/lib/oci/dns/models/record.rb +204 -0
- data/lib/oci/dns/models/record_collection.rb +121 -0
- data/lib/oci/dns/models/record_details.rb +204 -0
- data/lib/oci/dns/models/record_operation.rb +253 -0
- data/lib/oci/dns/models/rr_set.rb +123 -0
- data/lib/oci/dns/models/sort_order.rb +12 -0
- data/lib/oci/dns/models/tsig.rb +149 -0
- data/lib/oci/dns/models/update_domain_records_details.rb +120 -0
- data/lib/oci/dns/models/update_rr_set_details.rb +120 -0
- data/lib/oci/dns/models/update_zone_details.rb +122 -0
- data/lib/oci/dns/models/update_zone_records_details.rb +120 -0
- data/lib/oci/dns/models/zone.rb +272 -0
- data/lib/oci/dns/models/zone_summary.rb +230 -0
- data/lib/oci/dns/util.rb +2 -0
- data/lib/oci/errors.rb +20 -0
- data/lib/oci/identity/identity_client.rb +1 -0
- data/lib/oci/identity/models/create_dynamic_group_details.rb +4 -2
- data/lib/oci/identity/models/dynamic_group.rb +9 -6
- data/lib/oci/identity/models/update_dynamic_group_details.rb +4 -2
- data/lib/oci/load_balancer/load_balancer.rb +6 -0
- data/lib/oci/load_balancer/load_balancer_client.rb +219 -0
- data/lib/oci/load_balancer/models/create_listener_details.rb +17 -1
- data/lib/oci/load_balancer/models/create_load_balancer_details.rb +12 -1
- data/lib/oci/load_balancer/models/create_path_route_set_details.rb +138 -0
- data/lib/oci/load_balancer/models/listener.rb +17 -1
- data/lib/oci/load_balancer/models/listener_details.rb +17 -1
- data/lib/oci/load_balancer/models/load_balancer.rb +12 -1
- data/lib/oci/load_balancer/models/path_match_type.rb +153 -0
- data/lib/oci/load_balancer/models/path_route.rb +161 -0
- data/lib/oci/load_balancer/models/path_route_set.rb +139 -0
- data/lib/oci/load_balancer/models/path_route_set_details.rb +122 -0
- data/lib/oci/load_balancer/models/update_listener_details.rb +17 -1
- data/lib/oci/load_balancer/models/update_path_route_set_details.rb +122 -0
- data/lib/oci/load_balancer/util.rb +1 -3
- data/lib/oci/object_storage/transfer/multipart/internal/file_part_io_wrapper.rb +111 -0
- data/lib/oci/object_storage/transfer/multipart/internal/multipart_upload_parts_collection.rb +41 -0
- data/lib/oci/object_storage/transfer/multipart/internal/seekable_non_file_part_io_wrapper.rb +48 -0
- data/lib/oci/object_storage/transfer/multipart/internal/stdin_part_io_wrapper.rb +54 -0
- data/lib/oci/object_storage/transfer/multipart/multipart_object_assembler.rb +545 -0
- data/lib/oci/object_storage/transfer/transfer.rb +31 -0
- data/lib/oci/object_storage/transfer/upload_manager.rb +212 -0
- data/lib/oci/object_storage/transfer/upload_manager_config.rb +60 -0
- data/lib/oci/regions.rb +3 -1
- data/lib/oci/response.rb +1 -3
- data/lib/oci/version.rb +1 -1
- data/lib/oci/waiter.rb +16 -11
- data/lib/oraclebmc.rb +1 -1
- metadata +46 -2
|
@@ -45,6 +45,9 @@ module OCI
|
|
|
45
45
|
# @return [Hash<String, OCI::LoadBalancer::Models::ListenerDetails>]
|
|
46
46
|
attr_accessor :listeners
|
|
47
47
|
|
|
48
|
+
# @return [Hash<String, OCI::LoadBalancer::Models::PathRouteSetDetails>]
|
|
49
|
+
attr_accessor :path_route_sets
|
|
50
|
+
|
|
48
51
|
# **[Required]** A template that determines the total pre-provisioned bandwidth (ingress plus egress).
|
|
49
52
|
# To get a list of available shapes, use the {#list_shapes list_shapes}
|
|
50
53
|
# operation.
|
|
@@ -67,6 +70,7 @@ module OCI
|
|
|
67
70
|
# @option attributes [String] :displayName The value to assign to the {#display_name} property
|
|
68
71
|
# @option attributes [BOOLEAN] :isPrivate The value to assign to the {#is_private} property
|
|
69
72
|
# @option attributes [Hash<String, OCI::LoadBalancer::Models::ListenerDetails>] :listeners The value to assign to the {#listeners} property
|
|
73
|
+
# @option attributes [Hash<String, OCI::LoadBalancer::Models::PathRouteSetDetails>] :pathRouteSets The value to assign to the {#path_route_sets} property
|
|
70
74
|
# @option attributes [String] :shapeName The value to assign to the {#shape_name} property
|
|
71
75
|
# @option attributes [Array<String>] :subnetIds The value to assign to the {#subnet_ids} property
|
|
72
76
|
def initialize(attributes = {})
|
|
@@ -101,6 +105,10 @@ module OCI
|
|
|
101
105
|
self.listeners = attributes[:'listeners']
|
|
102
106
|
end
|
|
103
107
|
|
|
108
|
+
if attributes[:'pathRouteSets']
|
|
109
|
+
self.path_route_sets = attributes[:'pathRouteSets']
|
|
110
|
+
end
|
|
111
|
+
|
|
104
112
|
if attributes[:'shapeName']
|
|
105
113
|
self.shape_name = attributes[:'shapeName']
|
|
106
114
|
end
|
|
@@ -122,6 +130,7 @@ module OCI
|
|
|
122
130
|
display_name == other_object.display_name &&
|
|
123
131
|
is_private == other_object.is_private &&
|
|
124
132
|
listeners == other_object.listeners &&
|
|
133
|
+
path_route_sets == other_object.path_route_sets &&
|
|
125
134
|
shape_name == other_object.shape_name &&
|
|
126
135
|
subnet_ids == other_object.subnet_ids
|
|
127
136
|
end
|
|
@@ -135,7 +144,7 @@ module OCI
|
|
|
135
144
|
# Calculates hash code according to all attributes.
|
|
136
145
|
# @return [Fixnum] Hash code
|
|
137
146
|
def hash
|
|
138
|
-
[backend_sets, certificates, compartment_id, display_name, is_private, listeners, shape_name, subnet_ids].hash
|
|
147
|
+
[backend_sets, certificates, compartment_id, display_name, is_private, listeners, path_route_sets, shape_name, subnet_ids].hash
|
|
139
148
|
end
|
|
140
149
|
|
|
141
150
|
# Builds the object from hash
|
|
@@ -207,6 +216,7 @@ module OCI
|
|
|
207
216
|
:'display_name' => :'displayName',
|
|
208
217
|
:'is_private' => :'isPrivate',
|
|
209
218
|
:'listeners' => :'listeners',
|
|
219
|
+
:'path_route_sets' => :'pathRouteSets',
|
|
210
220
|
:'shape_name' => :'shapeName',
|
|
211
221
|
:'subnet_ids' => :'subnetIds'
|
|
212
222
|
}
|
|
@@ -221,6 +231,7 @@ module OCI
|
|
|
221
231
|
:'display_name' => :'String',
|
|
222
232
|
:'is_private' => :'BOOLEAN',
|
|
223
233
|
:'listeners' => :'Hash<String, OCI::LoadBalancer::Models::ListenerDetails>',
|
|
234
|
+
:'path_route_sets' => :'Hash<String, OCI::LoadBalancer::Models::PathRouteSetDetails>',
|
|
224
235
|
:'shape_name' => :'String',
|
|
225
236
|
:'subnet_ids' => :'Array<String>'
|
|
226
237
|
}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
# Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
|
|
2
|
+
|
|
3
|
+
require 'date'
|
|
4
|
+
|
|
5
|
+
module OCI
|
|
6
|
+
# A named set of path route rules to add to the load balancer.
|
|
7
|
+
class LoadBalancer::Models::CreatePathRouteSetDetails
|
|
8
|
+
# **[Required]** The name for this set of path route rules. It must be unique and it cannot be changed. Avoid entering
|
|
9
|
+
# confidential information.
|
|
10
|
+
#
|
|
11
|
+
# Example: `path-route-set-001`
|
|
12
|
+
#
|
|
13
|
+
# @return [String]
|
|
14
|
+
attr_accessor :name
|
|
15
|
+
|
|
16
|
+
# **[Required]** The set of path route rules.
|
|
17
|
+
# @return [Array<OCI::LoadBalancer::Models::PathRoute>]
|
|
18
|
+
attr_accessor :path_routes
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
# Initializes the object
|
|
22
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
23
|
+
# @option attributes [String] :name The value to assign to the {#name} property
|
|
24
|
+
# @option attributes [Array<OCI::LoadBalancer::Models::PathRoute>] :pathRoutes The value to assign to the {#path_routes} property
|
|
25
|
+
def initialize(attributes = {})
|
|
26
|
+
return unless attributes.is_a?(Hash)
|
|
27
|
+
|
|
28
|
+
# convert string to symbol for hash key
|
|
29
|
+
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
|
30
|
+
|
|
31
|
+
if attributes[:'name']
|
|
32
|
+
self.name = attributes[:'name']
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
if attributes[:'pathRoutes']
|
|
36
|
+
self.path_routes = attributes[:'pathRoutes']
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
# Checks equality by comparing each attribute.
|
|
42
|
+
# @param [Object] other_object to be compared
|
|
43
|
+
def ==(other_object)
|
|
44
|
+
return true if self.equal?(other_object)
|
|
45
|
+
self.class == other_object.class &&
|
|
46
|
+
name == other_object.name &&
|
|
47
|
+
path_routes == other_object.path_routes
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# @see the `==` method
|
|
51
|
+
# @param [Object] other_object to be compared
|
|
52
|
+
def eql?(other_object)
|
|
53
|
+
self == other_object
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
# Calculates hash code according to all attributes.
|
|
57
|
+
# @return [Fixnum] Hash code
|
|
58
|
+
def hash
|
|
59
|
+
[name, path_routes].hash
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# Builds the object from hash
|
|
63
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
64
|
+
# @return [Object] Returns the model itself
|
|
65
|
+
def build_from_hash(attributes)
|
|
66
|
+
return nil unless attributes.is_a?(Hash)
|
|
67
|
+
self.class.swagger_types.each_pair do |key, type|
|
|
68
|
+
if type =~ /^Array<(.*)>/i
|
|
69
|
+
# check to ensure the input is an array given that the the attribute
|
|
70
|
+
# is documented as an array but the input is not
|
|
71
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
72
|
+
self.public_method("#{key}=").call(attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
|
|
73
|
+
end
|
|
74
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
75
|
+
self.public_method("#{key}=").call(OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
|
|
76
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
self
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
# Returns the string representation of the object
|
|
83
|
+
# @return [String] String presentation of the object
|
|
84
|
+
def to_s
|
|
85
|
+
to_hash.to_s
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# Returns the object in the form of hash
|
|
89
|
+
# @return [Hash] Returns the object in the form of hash
|
|
90
|
+
def to_hash
|
|
91
|
+
hash = {}
|
|
92
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
93
|
+
value = public_method(attr).call
|
|
94
|
+
next if value.nil? && !instance_variable_defined?("@#{attr}")
|
|
95
|
+
hash[param] = _to_hash(value)
|
|
96
|
+
end
|
|
97
|
+
hash
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
private
|
|
101
|
+
|
|
102
|
+
# Outputs non-array value in the form of hash
|
|
103
|
+
# For object, use to_hash. Otherwise, just return the value
|
|
104
|
+
# @param [Object] value Any valid value
|
|
105
|
+
# @return [Hash] Returns the value in the form of hash
|
|
106
|
+
def _to_hash(value)
|
|
107
|
+
if value.is_a?(Array)
|
|
108
|
+
value.compact.map{ |v| _to_hash(v) }
|
|
109
|
+
elsif value.is_a?(Hash)
|
|
110
|
+
{}.tap do |hash|
|
|
111
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
112
|
+
end
|
|
113
|
+
elsif value.respond_to? :to_hash
|
|
114
|
+
value.to_hash
|
|
115
|
+
else
|
|
116
|
+
value
|
|
117
|
+
end
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
123
|
+
def self.attribute_map
|
|
124
|
+
{
|
|
125
|
+
:'name' => :'name',
|
|
126
|
+
:'path_routes' => :'pathRoutes'
|
|
127
|
+
}
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
# Attribute type mapping.
|
|
131
|
+
def self.swagger_types
|
|
132
|
+
{
|
|
133
|
+
:'name' => :'String',
|
|
134
|
+
:'path_routes' => :'Array<OCI::LoadBalancer::Models::PathRoute>'
|
|
135
|
+
}
|
|
136
|
+
end
|
|
137
|
+
end
|
|
138
|
+
end
|
|
@@ -25,6 +25,14 @@ module OCI
|
|
|
25
25
|
# @return [String]
|
|
26
26
|
attr_accessor :name
|
|
27
27
|
|
|
28
|
+
# The name of the set of path-based routing rules, {PathRouteSet},
|
|
29
|
+
# applied to this listener's traffic.
|
|
30
|
+
#
|
|
31
|
+
# Example: `path-route-set-001`
|
|
32
|
+
#
|
|
33
|
+
# @return [String]
|
|
34
|
+
attr_accessor :path_route_set_name
|
|
35
|
+
|
|
28
36
|
# **[Required]** The communication port for the listener.
|
|
29
37
|
#
|
|
30
38
|
# Example: `80`
|
|
@@ -50,6 +58,7 @@ module OCI
|
|
|
50
58
|
# @option attributes [OCI::LoadBalancer::Models::ConnectionConfiguration] :connectionConfiguration The value to assign to the {#connection_configuration} property
|
|
51
59
|
# @option attributes [String] :defaultBackendSetName The value to assign to the {#default_backend_set_name} property
|
|
52
60
|
# @option attributes [String] :name The value to assign to the {#name} property
|
|
61
|
+
# @option attributes [String] :pathRouteSetName The value to assign to the {#path_route_set_name} property
|
|
53
62
|
# @option attributes [Integer] :port The value to assign to the {#port} property
|
|
54
63
|
# @option attributes [String] :protocol The value to assign to the {#protocol} property
|
|
55
64
|
# @option attributes [OCI::LoadBalancer::Models::SSLConfiguration] :sslConfiguration The value to assign to the {#ssl_configuration} property
|
|
@@ -71,6 +80,10 @@ module OCI
|
|
|
71
80
|
self.name = attributes[:'name']
|
|
72
81
|
end
|
|
73
82
|
|
|
83
|
+
if attributes[:'pathRouteSetName']
|
|
84
|
+
self.path_route_set_name = attributes[:'pathRouteSetName']
|
|
85
|
+
end
|
|
86
|
+
|
|
74
87
|
if attributes[:'port']
|
|
75
88
|
self.port = attributes[:'port']
|
|
76
89
|
end
|
|
@@ -93,6 +106,7 @@ module OCI
|
|
|
93
106
|
connection_configuration == other_object.connection_configuration &&
|
|
94
107
|
default_backend_set_name == other_object.default_backend_set_name &&
|
|
95
108
|
name == other_object.name &&
|
|
109
|
+
path_route_set_name == other_object.path_route_set_name &&
|
|
96
110
|
port == other_object.port &&
|
|
97
111
|
protocol == other_object.protocol &&
|
|
98
112
|
ssl_configuration == other_object.ssl_configuration
|
|
@@ -107,7 +121,7 @@ module OCI
|
|
|
107
121
|
# Calculates hash code according to all attributes.
|
|
108
122
|
# @return [Fixnum] Hash code
|
|
109
123
|
def hash
|
|
110
|
-
[connection_configuration, default_backend_set_name, name, port, protocol, ssl_configuration].hash
|
|
124
|
+
[connection_configuration, default_backend_set_name, name, path_route_set_name, port, protocol, ssl_configuration].hash
|
|
111
125
|
end
|
|
112
126
|
|
|
113
127
|
# Builds the object from hash
|
|
@@ -176,6 +190,7 @@ module OCI
|
|
|
176
190
|
:'connection_configuration' => :'connectionConfiguration',
|
|
177
191
|
:'default_backend_set_name' => :'defaultBackendSetName',
|
|
178
192
|
:'name' => :'name',
|
|
193
|
+
:'path_route_set_name' => :'pathRouteSetName',
|
|
179
194
|
:'port' => :'port',
|
|
180
195
|
:'protocol' => :'protocol',
|
|
181
196
|
:'ssl_configuration' => :'sslConfiguration'
|
|
@@ -188,6 +203,7 @@ module OCI
|
|
|
188
203
|
:'connection_configuration' => :'OCI::LoadBalancer::Models::ConnectionConfiguration',
|
|
189
204
|
:'default_backend_set_name' => :'String',
|
|
190
205
|
:'name' => :'String',
|
|
206
|
+
:'path_route_set_name' => :'String',
|
|
191
207
|
:'port' => :'Integer',
|
|
192
208
|
:'protocol' => :'String',
|
|
193
209
|
:'ssl_configuration' => :'OCI::LoadBalancer::Models::SSLConfiguration'
|
|
@@ -15,6 +15,14 @@ module OCI
|
|
|
15
15
|
# @return [String]
|
|
16
16
|
attr_accessor :default_backend_set_name
|
|
17
17
|
|
|
18
|
+
# The name of the set of path-based routing rules, {PathRouteSet},
|
|
19
|
+
# applied to this listener's traffic.
|
|
20
|
+
#
|
|
21
|
+
# Example: `path-route-set-001`
|
|
22
|
+
#
|
|
23
|
+
# @return [String]
|
|
24
|
+
attr_accessor :path_route_set_name
|
|
25
|
+
|
|
18
26
|
# **[Required]** The communication port for the listener.
|
|
19
27
|
#
|
|
20
28
|
# Example: `80`
|
|
@@ -39,6 +47,7 @@ module OCI
|
|
|
39
47
|
# @param [Hash] attributes Model attributes in the form of hash
|
|
40
48
|
# @option attributes [OCI::LoadBalancer::Models::ConnectionConfiguration] :connectionConfiguration The value to assign to the {#connection_configuration} property
|
|
41
49
|
# @option attributes [String] :defaultBackendSetName The value to assign to the {#default_backend_set_name} property
|
|
50
|
+
# @option attributes [String] :pathRouteSetName The value to assign to the {#path_route_set_name} property
|
|
42
51
|
# @option attributes [Integer] :port The value to assign to the {#port} property
|
|
43
52
|
# @option attributes [String] :protocol The value to assign to the {#protocol} property
|
|
44
53
|
# @option attributes [OCI::LoadBalancer::Models::SSLConfigurationDetails] :sslConfiguration The value to assign to the {#ssl_configuration} property
|
|
@@ -56,6 +65,10 @@ module OCI
|
|
|
56
65
|
self.default_backend_set_name = attributes[:'defaultBackendSetName']
|
|
57
66
|
end
|
|
58
67
|
|
|
68
|
+
if attributes[:'pathRouteSetName']
|
|
69
|
+
self.path_route_set_name = attributes[:'pathRouteSetName']
|
|
70
|
+
end
|
|
71
|
+
|
|
59
72
|
if attributes[:'port']
|
|
60
73
|
self.port = attributes[:'port']
|
|
61
74
|
end
|
|
@@ -77,6 +90,7 @@ module OCI
|
|
|
77
90
|
self.class == other_object.class &&
|
|
78
91
|
connection_configuration == other_object.connection_configuration &&
|
|
79
92
|
default_backend_set_name == other_object.default_backend_set_name &&
|
|
93
|
+
path_route_set_name == other_object.path_route_set_name &&
|
|
80
94
|
port == other_object.port &&
|
|
81
95
|
protocol == other_object.protocol &&
|
|
82
96
|
ssl_configuration == other_object.ssl_configuration
|
|
@@ -91,7 +105,7 @@ module OCI
|
|
|
91
105
|
# Calculates hash code according to all attributes.
|
|
92
106
|
# @return [Fixnum] Hash code
|
|
93
107
|
def hash
|
|
94
|
-
[connection_configuration, default_backend_set_name, port, protocol, ssl_configuration].hash
|
|
108
|
+
[connection_configuration, default_backend_set_name, path_route_set_name, port, protocol, ssl_configuration].hash
|
|
95
109
|
end
|
|
96
110
|
|
|
97
111
|
# Builds the object from hash
|
|
@@ -159,6 +173,7 @@ module OCI
|
|
|
159
173
|
{
|
|
160
174
|
:'connection_configuration' => :'connectionConfiguration',
|
|
161
175
|
:'default_backend_set_name' => :'defaultBackendSetName',
|
|
176
|
+
:'path_route_set_name' => :'pathRouteSetName',
|
|
162
177
|
:'port' => :'port',
|
|
163
178
|
:'protocol' => :'protocol',
|
|
164
179
|
:'ssl_configuration' => :'sslConfiguration'
|
|
@@ -170,6 +185,7 @@ module OCI
|
|
|
170
185
|
{
|
|
171
186
|
:'connection_configuration' => :'OCI::LoadBalancer::Models::ConnectionConfiguration',
|
|
172
187
|
:'default_backend_set_name' => :'String',
|
|
188
|
+
:'path_route_set_name' => :'String',
|
|
173
189
|
:'port' => :'Integer',
|
|
174
190
|
:'protocol' => :'String',
|
|
175
191
|
:'ssl_configuration' => :'OCI::LoadBalancer::Models::SSLConfigurationDetails'
|
|
@@ -74,6 +74,9 @@ module OCI
|
|
|
74
74
|
# @return [Hash<String, OCI::LoadBalancer::Models::Listener>]
|
|
75
75
|
attr_accessor :listeners
|
|
76
76
|
|
|
77
|
+
# @return [Hash<String, OCI::LoadBalancer::Models::PathRouteSet>]
|
|
78
|
+
attr_accessor :path_route_sets
|
|
79
|
+
|
|
77
80
|
# **[Required]** A template that determines the total pre-provisioned bandwidth (ingress plus egress).
|
|
78
81
|
# To get a list of available shapes, use the {#list_shapes list_shapes}
|
|
79
82
|
# operation.
|
|
@@ -106,6 +109,7 @@ module OCI
|
|
|
106
109
|
# @option attributes [BOOLEAN] :isPrivate The value to assign to the {#is_private} property
|
|
107
110
|
# @option attributes [String] :lifecycleState The value to assign to the {#lifecycle_state} property
|
|
108
111
|
# @option attributes [Hash<String, OCI::LoadBalancer::Models::Listener>] :listeners The value to assign to the {#listeners} property
|
|
112
|
+
# @option attributes [Hash<String, OCI::LoadBalancer::Models::PathRouteSet>] :pathRouteSets The value to assign to the {#path_route_sets} property
|
|
109
113
|
# @option attributes [String] :shapeName The value to assign to the {#shape_name} property
|
|
110
114
|
# @option attributes [Array<String>] :subnetIds The value to assign to the {#subnet_ids} property
|
|
111
115
|
# @option attributes [DateTime] :timeCreated The value to assign to the {#time_created} property
|
|
@@ -151,6 +155,10 @@ module OCI
|
|
|
151
155
|
self.listeners = attributes[:'listeners']
|
|
152
156
|
end
|
|
153
157
|
|
|
158
|
+
if attributes[:'pathRouteSets']
|
|
159
|
+
self.path_route_sets = attributes[:'pathRouteSets']
|
|
160
|
+
end
|
|
161
|
+
|
|
154
162
|
if attributes[:'shapeName']
|
|
155
163
|
self.shape_name = attributes[:'shapeName']
|
|
156
164
|
end
|
|
@@ -189,6 +197,7 @@ module OCI
|
|
|
189
197
|
is_private == other_object.is_private &&
|
|
190
198
|
lifecycle_state == other_object.lifecycle_state &&
|
|
191
199
|
listeners == other_object.listeners &&
|
|
200
|
+
path_route_sets == other_object.path_route_sets &&
|
|
192
201
|
shape_name == other_object.shape_name &&
|
|
193
202
|
subnet_ids == other_object.subnet_ids &&
|
|
194
203
|
time_created == other_object.time_created
|
|
@@ -203,7 +212,7 @@ module OCI
|
|
|
203
212
|
# Calculates hash code according to all attributes.
|
|
204
213
|
# @return [Fixnum] Hash code
|
|
205
214
|
def hash
|
|
206
|
-
[backend_sets, certificates, compartment_id, display_name, id, ip_addresses, is_private, lifecycle_state, listeners, shape_name, subnet_ids, time_created].hash
|
|
215
|
+
[backend_sets, certificates, compartment_id, display_name, id, ip_addresses, is_private, lifecycle_state, listeners, path_route_sets, shape_name, subnet_ids, time_created].hash
|
|
207
216
|
end
|
|
208
217
|
|
|
209
218
|
# Builds the object from hash
|
|
@@ -278,6 +287,7 @@ module OCI
|
|
|
278
287
|
:'is_private' => :'isPrivate',
|
|
279
288
|
:'lifecycle_state' => :'lifecycleState',
|
|
280
289
|
:'listeners' => :'listeners',
|
|
290
|
+
:'path_route_sets' => :'pathRouteSets',
|
|
281
291
|
:'shape_name' => :'shapeName',
|
|
282
292
|
:'subnet_ids' => :'subnetIds',
|
|
283
293
|
:'time_created' => :'timeCreated'
|
|
@@ -296,6 +306,7 @@ module OCI
|
|
|
296
306
|
:'is_private' => :'BOOLEAN',
|
|
297
307
|
:'lifecycle_state' => :'String',
|
|
298
308
|
:'listeners' => :'Hash<String, OCI::LoadBalancer::Models::Listener>',
|
|
309
|
+
:'path_route_sets' => :'Hash<String, OCI::LoadBalancer::Models::PathRouteSet>',
|
|
299
310
|
:'shape_name' => :'String',
|
|
300
311
|
:'subnet_ids' => :'Array<String>',
|
|
301
312
|
:'time_created' => :'DateTime'
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
# Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
|
|
2
|
+
|
|
3
|
+
require 'date'
|
|
4
|
+
|
|
5
|
+
module OCI
|
|
6
|
+
# The type of matching to apply to incoming URIs.
|
|
7
|
+
class LoadBalancer::Models::PathMatchType
|
|
8
|
+
|
|
9
|
+
MATCH_TYPE_ENUM = [MATCH_TYPE_EXACT_MATCH = 'EXACT_MATCH',
|
|
10
|
+
MATCH_TYPE_FORCE_LONGEST_PREFIX_MATCH = 'FORCE_LONGEST_PREFIX_MATCH',
|
|
11
|
+
MATCH_TYPE_PREFIX_MATCH = 'PREFIX_MATCH',
|
|
12
|
+
MATCH_TYPE_SUFFIX_MATCH = 'SUFFIX_MATCH',
|
|
13
|
+
MATCH_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
|
|
14
|
+
|
|
15
|
+
# **[Required]** Specifies how the load balancing service compares a {#path_route path_route}
|
|
16
|
+
# object's `path` string against the incoming URI.
|
|
17
|
+
#
|
|
18
|
+
# * **EXACT_MATCH** - Looks for a `path` string that exactly matches the incoming URI path.
|
|
19
|
+
#
|
|
20
|
+
# * **FORCE_LONGEST_PREFIX_MATCH** - Looks for the `path` string with the best, longest match of the beginning
|
|
21
|
+
# portion of the incoming URI path.
|
|
22
|
+
#
|
|
23
|
+
# * **PREFIX_MATCH** - Looks for a `path` string that matches the beginning portion of the incoming URI path.
|
|
24
|
+
#
|
|
25
|
+
# * **SUFFIX_MATCH** - Looks for a `path` string that matches the ending portion of the incoming URI path.
|
|
26
|
+
#
|
|
27
|
+
# For a full description of how the system handles `matchType` in a path route set containing multiple rules, see
|
|
28
|
+
# [Managing Request Routing](https://docs.us-phoenix-1.oraclecloud.com/Content/Balance/Tasks/managingrequest.htm).
|
|
29
|
+
#
|
|
30
|
+
# @return [String]
|
|
31
|
+
attr_accessor :match_type
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
# Initializes the object
|
|
35
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
36
|
+
# @option attributes [String] :matchType The value to assign to the {#match_type} property
|
|
37
|
+
def initialize(attributes = {})
|
|
38
|
+
return unless attributes.is_a?(Hash)
|
|
39
|
+
|
|
40
|
+
# convert string to symbol for hash key
|
|
41
|
+
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
|
42
|
+
|
|
43
|
+
if attributes[:'matchType']
|
|
44
|
+
self.match_type = attributes[:'matchType']
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
# Custom attribute writer method checking allowed values (enum).
|
|
50
|
+
# @param [Object] match_type Object to be assigned
|
|
51
|
+
def match_type=(match_type)
|
|
52
|
+
if match_type && !MATCH_TYPE_ENUM.include?(match_type)
|
|
53
|
+
@match_type = MATCH_TYPE_UNKNOWN_ENUM_VALUE
|
|
54
|
+
else
|
|
55
|
+
@match_type = match_type
|
|
56
|
+
end
|
|
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
|
+
match_type == other_object.match_type
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
# @see the `==` method
|
|
68
|
+
# @param [Object] other_object to be compared
|
|
69
|
+
def eql?(other_object)
|
|
70
|
+
self == other_object
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
# Calculates hash code according to all attributes.
|
|
74
|
+
# @return [Fixnum] Hash code
|
|
75
|
+
def hash
|
|
76
|
+
[match_type].hash
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
# Builds the object from hash
|
|
80
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
81
|
+
# @return [Object] Returns the model itself
|
|
82
|
+
def build_from_hash(attributes)
|
|
83
|
+
return nil unless attributes.is_a?(Hash)
|
|
84
|
+
self.class.swagger_types.each_pair do |key, type|
|
|
85
|
+
if type =~ /^Array<(.*)>/i
|
|
86
|
+
# check to ensure the input is an array given that the the attribute
|
|
87
|
+
# is documented as an array but the input is not
|
|
88
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
89
|
+
self.public_method("#{key}=").call(attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
|
|
90
|
+
end
|
|
91
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
92
|
+
self.public_method("#{key}=").call(OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
|
|
93
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
self
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
# Returns the string representation of the object
|
|
100
|
+
# @return [String] String presentation of the object
|
|
101
|
+
def to_s
|
|
102
|
+
to_hash.to_s
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
# Returns the object in the form of hash
|
|
106
|
+
# @return [Hash] Returns the object in the form of hash
|
|
107
|
+
def to_hash
|
|
108
|
+
hash = {}
|
|
109
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
110
|
+
value = public_method(attr).call
|
|
111
|
+
next if value.nil? && !instance_variable_defined?("@#{attr}")
|
|
112
|
+
hash[param] = _to_hash(value)
|
|
113
|
+
end
|
|
114
|
+
hash
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
private
|
|
118
|
+
|
|
119
|
+
# Outputs non-array value in the form of hash
|
|
120
|
+
# For object, use to_hash. Otherwise, just return the value
|
|
121
|
+
# @param [Object] value Any valid value
|
|
122
|
+
# @return [Hash] Returns the value in the form of hash
|
|
123
|
+
def _to_hash(value)
|
|
124
|
+
if value.is_a?(Array)
|
|
125
|
+
value.compact.map{ |v| _to_hash(v) }
|
|
126
|
+
elsif value.is_a?(Hash)
|
|
127
|
+
{}.tap do |hash|
|
|
128
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
129
|
+
end
|
|
130
|
+
elsif value.respond_to? :to_hash
|
|
131
|
+
value.to_hash
|
|
132
|
+
else
|
|
133
|
+
value
|
|
134
|
+
end
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
140
|
+
def self.attribute_map
|
|
141
|
+
{
|
|
142
|
+
:'match_type' => :'matchType'
|
|
143
|
+
}
|
|
144
|
+
end
|
|
145
|
+
|
|
146
|
+
# Attribute type mapping.
|
|
147
|
+
def self.swagger_types
|
|
148
|
+
{
|
|
149
|
+
:'match_type' => :'String'
|
|
150
|
+
}
|
|
151
|
+
end
|
|
152
|
+
end
|
|
153
|
+
end
|