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.
- checksums.yaml +7 -0
- data/LICENSE.txt +82 -0
- data/README.md +262 -0
- data/lib/oci.rb +25 -0
- data/lib/oci/api_client.rb +389 -0
- data/lib/oci/config.rb +118 -0
- data/lib/oci/config_file_loader.rb +96 -0
- data/lib/oci/core/blockstorage_client.rb +462 -0
- data/lib/oci/core/compute_client.rb +1415 -0
- data/lib/oci/core/core.rb +114 -0
- data/lib/oci/core/models/attach_i_scsi_volume_details.rb +137 -0
- data/lib/oci/core/models/attach_vnic_details.rb +144 -0
- data/lib/oci/core/models/attach_volume_details.rb +165 -0
- data/lib/oci/core/models/capture_console_history_details.rb +120 -0
- data/lib/oci/core/models/console_history.rb +213 -0
- data/lib/oci/core/models/cpe.rb +169 -0
- data/lib/oci/core/models/create_cpe_details.rb +145 -0
- data/lib/oci/core/models/create_cross_connect_details.rb +204 -0
- data/lib/oci/core/models/create_cross_connect_group_details.rb +133 -0
- data/lib/oci/core/models/create_dhcp_details.rb +153 -0
- data/lib/oci/core/models/create_drg_attachment_details.rb +142 -0
- data/lib/oci/core/models/create_drg_details.rb +131 -0
- data/lib/oci/core/models/create_image_details.rb +159 -0
- data/lib/oci/core/models/create_instance_console_connection_details.rb +131 -0
- data/lib/oci/core/models/create_internet_gateway_details.rb +153 -0
- data/lib/oci/core/models/create_ip_sec_connection_details.rb +168 -0
- data/lib/oci/core/models/create_private_ip_details.rb +173 -0
- data/lib/oci/core/models/create_route_table_details.rb +153 -0
- data/lib/oci/core/models/create_security_list_details.rb +164 -0
- data/lib/oci/core/models/create_subnet_details.rb +257 -0
- data/lib/oci/core/models/create_vcn_details.rb +171 -0
- data/lib/oci/core/models/create_virtual_circuit_details.rb +260 -0
- data/lib/oci/core/models/create_vnic_details.rb +214 -0
- data/lib/oci/core/models/create_volume_backup_details.rb +133 -0
- data/lib/oci/core/models/create_volume_details.rb +170 -0
- data/lib/oci/core/models/cross_connect.rb +235 -0
- data/lib/oci/core/models/cross_connect_group.rb +187 -0
- data/lib/oci/core/models/cross_connect_location.rb +134 -0
- data/lib/oci/core/models/cross_connect_mapping.rb +190 -0
- data/lib/oci/core/models/cross_connect_port_speed_shape.rb +137 -0
- data/lib/oci/core/models/cross_connect_status.rb +200 -0
- data/lib/oci/core/models/dhcp_dns_option.rb +171 -0
- data/lib/oci/core/models/dhcp_option.rb +135 -0
- data/lib/oci/core/models/dhcp_options.rb +208 -0
- data/lib/oci/core/models/dhcp_search_domain_option.rb +141 -0
- data/lib/oci/core/models/drg.rb +186 -0
- data/lib/oci/core/models/drg_attachment.rb +208 -0
- data/lib/oci/core/models/egress_security_rule.rb +198 -0
- data/lib/oci/core/models/export_image_details.rb +134 -0
- data/lib/oci/core/models/export_image_via_object_storage_tuple_details.rb +150 -0
- data/lib/oci/core/models/export_image_via_object_storage_uri_details.rb +130 -0
- data/lib/oci/core/models/fast_connect_provider_service.rb +145 -0
- data/lib/oci/core/models/i_scsi_volume_attachment.rb +212 -0
- data/lib/oci/core/models/icmp_options.rb +131 -0
- data/lib/oci/core/models/image.rb +245 -0
- data/lib/oci/core/models/image_source_details.rb +134 -0
- data/lib/oci/core/models/image_source_via_object_storage_tuple_details.rb +150 -0
- data/lib/oci/core/models/image_source_via_object_storage_uri_details.rb +128 -0
- data/lib/oci/core/models/ingress_security_rule.rb +198 -0
- data/lib/oci/core/models/instance.rb +307 -0
- data/lib/oci/core/models/instance_console_connection.rb +193 -0
- data/lib/oci/core/models/instance_credentials.rb +131 -0
- data/lib/oci/core/models/internet_gateway.rb +210 -0
- data/lib/oci/core/models/ip_sec_connection.rb +223 -0
- data/lib/oci/core/models/ip_sec_connection_device_config.rb +153 -0
- data/lib/oci/core/models/ip_sec_connection_device_status.rb +156 -0
- data/lib/oci/core/models/launch_instance_details.rb +336 -0
- data/lib/oci/core/models/letter_of_authority.rb +194 -0
- data/lib/oci/core/models/port_range.rb +133 -0
- data/lib/oci/core/models/private_ip.rb +248 -0
- data/lib/oci/core/models/route_rule.rb +135 -0
- data/lib/oci/core/models/route_table.rb +208 -0
- data/lib/oci/core/models/security_list.rb +219 -0
- data/lib/oci/core/models/shape.rb +122 -0
- data/lib/oci/core/models/subnet.rb +351 -0
- data/lib/oci/core/models/tcp_options.rb +135 -0
- data/lib/oci/core/models/tunnel_config.rb +151 -0
- data/lib/oci/core/models/tunnel_status.rb +178 -0
- data/lib/oci/core/models/udp_options.rb +135 -0
- data/lib/oci/core/models/update_cpe_details.rb +122 -0
- data/lib/oci/core/models/update_cross_connect_details.rb +138 -0
- data/lib/oci/core/models/update_cross_connect_group_details.rb +122 -0
- data/lib/oci/core/models/update_dhcp_details.rb +132 -0
- data/lib/oci/core/models/update_drg_attachment_details.rb +122 -0
- data/lib/oci/core/models/update_drg_details.rb +122 -0
- data/lib/oci/core/models/update_image_details.rb +124 -0
- data/lib/oci/core/models/update_instance_details.rb +124 -0
- data/lib/oci/core/models/update_internet_gateway_details.rb +133 -0
- data/lib/oci/core/models/update_ip_sec_connection_details.rb +122 -0
- data/lib/oci/core/models/update_private_ip_details.rb +157 -0
- data/lib/oci/core/models/update_route_table_details.rb +133 -0
- data/lib/oci/core/models/update_security_list_details.rb +144 -0
- data/lib/oci/core/models/update_subnet_details.rb +122 -0
- data/lib/oci/core/models/update_vcn_details.rb +122 -0
- data/lib/oci/core/models/update_virtual_circuit_details.rb +240 -0
- data/lib/oci/core/models/update_vnic_details.rb +144 -0
- data/lib/oci/core/models/update_volume_backup_details.rb +122 -0
- data/lib/oci/core/models/update_volume_details.rb +122 -0
- data/lib/oci/core/models/vcn.rb +276 -0
- data/lib/oci/core/models/virtual_circuit.rb +395 -0
- data/lib/oci/core/models/virtual_circuit_bandwidth_shape.rb +137 -0
- data/lib/oci/core/models/vnic.rb +287 -0
- data/lib/oci/core/models/vnic_attachment.rb +250 -0
- data/lib/oci/core/models/volume.rb +210 -0
- data/lib/oci/core/models/volume_attachment.rb +246 -0
- data/lib/oci/core/models/volume_backup.rb +235 -0
- data/lib/oci/core/util.rb +1 -0
- data/lib/oci/core/virtual_network_client.rb +3421 -0
- data/lib/oci/errors.rb +78 -0
- data/lib/oci/global_context.rb +20 -0
- data/lib/oci/identity/identity.rb +55 -0
- data/lib/oci/identity/identity_client.rb +2148 -0
- data/lib/oci/identity/models/add_user_to_group_details.rb +131 -0
- data/lib/oci/identity/models/api_key.rb +211 -0
- data/lib/oci/identity/models/availability_domain.rb +131 -0
- data/lib/oci/identity/models/compartment.rb +211 -0
- data/lib/oci/identity/models/create_api_key_details.rb +120 -0
- data/lib/oci/identity/models/create_compartment_details.rb +145 -0
- data/lib/oci/identity/models/create_customer_secret_key_details.rb +121 -0
- data/lib/oci/identity/models/create_group_details.rb +144 -0
- data/lib/oci/identity/models/create_identity_provider_details.rb +215 -0
- data/lib/oci/identity/models/create_idp_group_mapping_details.rb +133 -0
- data/lib/oci/identity/models/create_policy_details.rb +173 -0
- data/lib/oci/identity/models/create_region_subscription_details.rb +128 -0
- data/lib/oci/identity/models/create_saml2_identity_provider_details.rb +154 -0
- data/lib/oci/identity/models/create_swift_password_details.rb +121 -0
- data/lib/oci/identity/models/create_user_details.rb +144 -0
- data/lib/oci/identity/models/customer_secret_key.rb +225 -0
- data/lib/oci/identity/models/customer_secret_key_summary.rb +213 -0
- data/lib/oci/identity/models/group.rb +211 -0
- data/lib/oci/identity/models/identity_provider.rb +261 -0
- data/lib/oci/identity/models/idp_group_mapping.rb +220 -0
- data/lib/oci/identity/models/policy.rb +237 -0
- data/lib/oci/identity/models/region.rb +143 -0
- data/lib/oci/identity/models/region_subscription.rb +180 -0
- data/lib/oci/identity/models/saml2_identity_provider.rb +180 -0
- data/lib/oci/identity/models/swift_password.rb +226 -0
- data/lib/oci/identity/models/tenancy.rb +159 -0
- data/lib/oci/identity/models/ui_password.rb +187 -0
- data/lib/oci/identity/models/update_compartment_details.rb +132 -0
- data/lib/oci/identity/models/update_customer_secret_key_details.rb +120 -0
- data/lib/oci/identity/models/update_group_details.rb +120 -0
- data/lib/oci/identity/models/update_identity_provider_details.rb +160 -0
- data/lib/oci/identity/models/update_idp_group_mapping_details.rb +131 -0
- data/lib/oci/identity/models/update_policy_details.rb +148 -0
- data/lib/oci/identity/models/update_saml2_identity_provider_details.rb +145 -0
- data/lib/oci/identity/models/update_state_details.rb +121 -0
- data/lib/oci/identity/models/update_swift_password_details.rb +120 -0
- data/lib/oci/identity/models/update_user_details.rb +120 -0
- data/lib/oci/identity/models/user.rb +217 -0
- data/lib/oci/identity/models/user_group_membership.rb +209 -0
- data/lib/oci/identity/util.rb +1 -0
- data/lib/oci/internal/internal.rb +10 -0
- data/lib/oci/internal/util.rb +69 -0
- data/lib/oci/load_balancer/load_balancer.rb +51 -0
- data/lib/oci/load_balancer/load_balancer_client.rb +1449 -0
- data/lib/oci/load_balancer/models/backend.rb +220 -0
- data/lib/oci/load_balancer/models/backend_details.rb +206 -0
- data/lib/oci/load_balancer/models/backend_health.rb +158 -0
- data/lib/oci/load_balancer/models/backend_set.rb +182 -0
- data/lib/oci/load_balancer/models/backend_set_details.rb +165 -0
- data/lib/oci/load_balancer/models/backend_set_health.rb +207 -0
- data/lib/oci/load_balancer/models/certificate.rb +169 -0
- data/lib/oci/load_balancer/models/certificate_details.rb +205 -0
- data/lib/oci/load_balancer/models/create_backend_details.rb +206 -0
- data/lib/oci/load_balancer/models/create_backend_set_details.rb +181 -0
- data/lib/oci/load_balancer/models/create_certificate_details.rb +205 -0
- data/lib/oci/load_balancer/models/create_listener_details.rb +175 -0
- data/lib/oci/load_balancer/models/create_load_balancer_details.rb +220 -0
- data/lib/oci/load_balancer/models/health_check_result.rb +183 -0
- data/lib/oci/load_balancer/models/health_checker.rb +224 -0
- data/lib/oci/load_balancer/models/health_checker_details.rb +223 -0
- data/lib/oci/load_balancer/models/ip_address.rb +139 -0
- data/lib/oci/load_balancer/models/listener.rb +174 -0
- data/lib/oci/load_balancer/models/listener_details.rb +160 -0
- data/lib/oci/load_balancer/models/load_balancer.rb +280 -0
- data/lib/oci/load_balancer/models/load_balancer_health.rb +215 -0
- data/lib/oci/load_balancer/models/load_balancer_health_summary.rb +168 -0
- data/lib/oci/load_balancer/models/load_balancer_policy.rb +120 -0
- data/lib/oci/load_balancer/models/load_balancer_protocol.rb +120 -0
- data/lib/oci/load_balancer/models/load_balancer_shape.rb +120 -0
- data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +141 -0
- data/lib/oci/load_balancer/models/ssl_configuration.rb +155 -0
- data/lib/oci/load_balancer/models/ssl_configuration_details.rb +155 -0
- data/lib/oci/load_balancer/models/update_backend_details.rb +178 -0
- data/lib/oci/load_balancer/models/update_backend_set_details.rb +165 -0
- data/lib/oci/load_balancer/models/update_health_checker_details.rb +222 -0
- data/lib/oci/load_balancer/models/update_listener_details.rb +160 -0
- data/lib/oci/load_balancer/models/update_load_balancer_details.rb +124 -0
- data/lib/oci/load_balancer/models/work_request.rb +229 -0
- data/lib/oci/load_balancer/models/work_request_error.rb +145 -0
- data/lib/oci/load_balancer/util.rb +58 -0
- data/lib/oci/object_storage/models/bucket.rb +216 -0
- data/lib/oci/object_storage/models/bucket_summary.rb +175 -0
- data/lib/oci/object_storage/models/commit_multipart_upload_details.rb +133 -0
- data/lib/oci/object_storage/models/commit_multipart_upload_part_details.rb +131 -0
- data/lib/oci/object_storage/models/create_bucket_details.rb +173 -0
- data/lib/oci/object_storage/models/create_multipart_upload_details.rb +166 -0
- data/lib/oci/object_storage/models/create_preauthenticated_request_details.rb +171 -0
- data/lib/oci/object_storage/models/list_objects.rb +146 -0
- data/lib/oci/object_storage/models/multipart_upload.rb +164 -0
- data/lib/oci/object_storage/models/multipart_upload_part_summary.rb +153 -0
- data/lib/oci/object_storage/models/object_summary.rb +153 -0
- data/lib/oci/object_storage/models/preauthenticated_request.rb +207 -0
- data/lib/oci/object_storage/models/preauthenticated_request_summary.rb +196 -0
- data/lib/oci/object_storage/models/update_bucket_details.rb +171 -0
- data/lib/oci/object_storage/object_storage.rb +30 -0
- data/lib/oci/object_storage/object_storage_client.rb +1185 -0
- data/lib/oci/object_storage/util.rb +1 -0
- data/lib/oci/regions.rb +43 -0
- data/lib/oci/response.rb +80 -0
- data/lib/oci/response_headers.rb +144 -0
- data/lib/oci/signer.rb +157 -0
- data/lib/oci/version.rb +5 -0
- data/lib/oci/waiter.rb +101 -0
- data/lib/oraclebmc.rb +3 -0
- metadata +375 -0
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
# Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
|
|
2
|
+
|
|
3
|
+
require 'date'
|
|
4
|
+
|
|
5
|
+
module OCI
|
|
6
|
+
class Core::Models::CreateSubnetDetails
|
|
7
|
+
# The Availability Domain to contain the subnet.
|
|
8
|
+
#
|
|
9
|
+
# Example: `Uocm:PHX-AD-1`
|
|
10
|
+
#
|
|
11
|
+
# @return [String]
|
|
12
|
+
attr_accessor :availability_domain
|
|
13
|
+
|
|
14
|
+
# The CIDR IP address range of the subnet.
|
|
15
|
+
#
|
|
16
|
+
# Example: `172.16.1.0/24`
|
|
17
|
+
#
|
|
18
|
+
# @return [String]
|
|
19
|
+
attr_accessor :cidr_block
|
|
20
|
+
|
|
21
|
+
# The OCID of the compartment to contain the subnet.
|
|
22
|
+
# @return [String]
|
|
23
|
+
attr_accessor :compartment_id
|
|
24
|
+
|
|
25
|
+
# The OCID of the set of DHCP options the subnet will use. If you don't
|
|
26
|
+
# provide a value, the subnet will use the VCN's default set of DHCP options.
|
|
27
|
+
#
|
|
28
|
+
# @return [String]
|
|
29
|
+
attr_accessor :dhcp_options_id
|
|
30
|
+
|
|
31
|
+
# A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
|
|
32
|
+
# @return [String]
|
|
33
|
+
attr_accessor :display_name
|
|
34
|
+
|
|
35
|
+
# A DNS label for the subnet, used in conjunction with the VNIC's hostname and
|
|
36
|
+
# VCN's DNS label to form a fully qualified domain name (FQDN) for each VNIC
|
|
37
|
+
# within this subnet (for example, `bminstance-1.subnet123.vcn1.oraclevcn.com`).
|
|
38
|
+
# Must be an alphanumeric string that begins with a letter and is unique within the VCN.
|
|
39
|
+
# The value cannot be changed.
|
|
40
|
+
#
|
|
41
|
+
# This value must be set if you want to use the Internet and VCN Resolver to resolve the
|
|
42
|
+
# hostnames of instances in the subnet. It can only be set if the VCN itself
|
|
43
|
+
# was created with a DNS label.
|
|
44
|
+
#
|
|
45
|
+
# For more information, see
|
|
46
|
+
# [DNS in Your Virtual Cloud Network](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/dns.htm).
|
|
47
|
+
#
|
|
48
|
+
# Example: `subnet123`
|
|
49
|
+
#
|
|
50
|
+
# @return [String]
|
|
51
|
+
attr_accessor :dns_label
|
|
52
|
+
|
|
53
|
+
# Whether VNICs within this subnet can have public IP addresses.
|
|
54
|
+
# Defaults to false, which means VNICs created in this subnet will
|
|
55
|
+
# automatically be assigned public IP addresses unless specified
|
|
56
|
+
# otherwise during instance launch or VNIC creation (with the
|
|
57
|
+
# `assignPublicIp` flag in {CreateVnicDetails}).
|
|
58
|
+
# If `prohibitPublicIpOnVnic` is set to true, VNICs created in this
|
|
59
|
+
# subnet cannot have public IP addresses (that is, it's a private
|
|
60
|
+
# subnet).
|
|
61
|
+
#
|
|
62
|
+
# Example: `true`
|
|
63
|
+
#
|
|
64
|
+
# @return [BOOLEAN]
|
|
65
|
+
attr_accessor :prohibit_public_ip_on_vnic
|
|
66
|
+
|
|
67
|
+
# The OCID of the route table the subnet will use. If you don't provide a value,
|
|
68
|
+
# the subnet will use the VCN's default route table.
|
|
69
|
+
#
|
|
70
|
+
# @return [String]
|
|
71
|
+
attr_accessor :route_table_id
|
|
72
|
+
|
|
73
|
+
# OCIDs for the security lists to associate with the subnet. If you don't
|
|
74
|
+
# provide a value, the VCN's default security list will be associated with
|
|
75
|
+
# the subnet. Remember that security lists are associated at the subnet
|
|
76
|
+
# level, but the rules are applied to the individual VNICs in the subnet.
|
|
77
|
+
#
|
|
78
|
+
# @return [Array<String>]
|
|
79
|
+
attr_accessor :security_list_ids
|
|
80
|
+
|
|
81
|
+
# The OCID of the VCN to contain the subnet.
|
|
82
|
+
# @return [String]
|
|
83
|
+
attr_accessor :vcn_id
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
# Initializes the object
|
|
87
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
88
|
+
def initialize(attributes = {})
|
|
89
|
+
return unless attributes.is_a?(Hash)
|
|
90
|
+
|
|
91
|
+
# convert string to symbol for hash key
|
|
92
|
+
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
|
93
|
+
|
|
94
|
+
if attributes[:'availabilityDomain']
|
|
95
|
+
self.availability_domain = attributes[:'availabilityDomain']
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
if attributes[:'cidrBlock']
|
|
99
|
+
self.cidr_block = attributes[:'cidrBlock']
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
if attributes[:'compartmentId']
|
|
103
|
+
self.compartment_id = attributes[:'compartmentId']
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
if attributes[:'dhcpOptionsId']
|
|
107
|
+
self.dhcp_options_id = attributes[:'dhcpOptionsId']
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
if attributes[:'displayName']
|
|
111
|
+
self.display_name = attributes[:'displayName']
|
|
112
|
+
end
|
|
113
|
+
|
|
114
|
+
if attributes[:'dnsLabel']
|
|
115
|
+
self.dns_label = attributes[:'dnsLabel']
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
if attributes[:'prohibitPublicIpOnVnic']
|
|
119
|
+
self.prohibit_public_ip_on_vnic = attributes[:'prohibitPublicIpOnVnic']
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
if attributes[:'routeTableId']
|
|
123
|
+
self.route_table_id = attributes[:'routeTableId']
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
if attributes[:'securityListIds']
|
|
127
|
+
self.security_list_ids = attributes[:'securityListIds']
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
if attributes[:'vcnId']
|
|
131
|
+
self.vcn_id = attributes[:'vcnId']
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
# Checks equality by comparing each attribute.
|
|
137
|
+
# @param [Object] other_object to be compared
|
|
138
|
+
def ==(other_object)
|
|
139
|
+
return true if self.equal?(other_object)
|
|
140
|
+
self.class == other_object.class &&
|
|
141
|
+
availability_domain == other_object.availability_domain &&
|
|
142
|
+
cidr_block == other_object.cidr_block &&
|
|
143
|
+
compartment_id == other_object.compartment_id &&
|
|
144
|
+
dhcp_options_id == other_object.dhcp_options_id &&
|
|
145
|
+
display_name == other_object.display_name &&
|
|
146
|
+
dns_label == other_object.dns_label &&
|
|
147
|
+
prohibit_public_ip_on_vnic == other_object.prohibit_public_ip_on_vnic &&
|
|
148
|
+
route_table_id == other_object.route_table_id &&
|
|
149
|
+
security_list_ids == other_object.security_list_ids &&
|
|
150
|
+
vcn_id == other_object.vcn_id
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
# @see the `==` method
|
|
154
|
+
# @param [Object] other_object to be compared
|
|
155
|
+
def eql?(other_object)
|
|
156
|
+
self == other_object
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
# Calculates hash code according to all attributes.
|
|
160
|
+
# @return [Fixnum] Hash code
|
|
161
|
+
def hash
|
|
162
|
+
[availability_domain, cidr_block, compartment_id, dhcp_options_id, display_name, dns_label, prohibit_public_ip_on_vnic, route_table_id, security_list_ids, vcn_id].hash
|
|
163
|
+
end
|
|
164
|
+
|
|
165
|
+
# Builds the object from hash
|
|
166
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
167
|
+
# @return [Object] Returns the model itself
|
|
168
|
+
def build_from_hash(attributes)
|
|
169
|
+
return nil unless attributes.is_a?(Hash)
|
|
170
|
+
self.class.swagger_types.each_pair do |key, type|
|
|
171
|
+
if type =~ /^Array<(.*)>/i
|
|
172
|
+
# check to ensure the input is an array given that the the attribute
|
|
173
|
+
# is documented as an array but the input is not
|
|
174
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
175
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
|
|
176
|
+
end
|
|
177
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
178
|
+
self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
|
|
179
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
self
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
# Returns the string representation of the object
|
|
186
|
+
# @return [String] String presentation of the object
|
|
187
|
+
def to_s
|
|
188
|
+
to_hash.to_s
|
|
189
|
+
end
|
|
190
|
+
|
|
191
|
+
# Returns the object in the form of hash
|
|
192
|
+
# @return [Hash] Returns the object in the form of hash
|
|
193
|
+
def to_hash
|
|
194
|
+
hash = {}
|
|
195
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
196
|
+
value = self.send(attr)
|
|
197
|
+
next if value.nil?
|
|
198
|
+
hash[param] = _to_hash(value)
|
|
199
|
+
end
|
|
200
|
+
hash
|
|
201
|
+
end
|
|
202
|
+
|
|
203
|
+
private
|
|
204
|
+
|
|
205
|
+
# Outputs non-array value in the form of hash
|
|
206
|
+
# For object, use to_hash. Otherwise, just return the value
|
|
207
|
+
# @param [Object] value Any valid value
|
|
208
|
+
# @return [Hash] Returns the value in the form of hash
|
|
209
|
+
def _to_hash(value)
|
|
210
|
+
if value.is_a?(Array)
|
|
211
|
+
value.compact.map{ |v| _to_hash(v) }
|
|
212
|
+
elsif value.is_a?(Hash)
|
|
213
|
+
{}.tap do |hash|
|
|
214
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
215
|
+
end
|
|
216
|
+
elsif value.respond_to? :to_hash
|
|
217
|
+
value.to_hash
|
|
218
|
+
else
|
|
219
|
+
value
|
|
220
|
+
end
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
226
|
+
def self.attribute_map
|
|
227
|
+
{
|
|
228
|
+
:'availability_domain' => :'availabilityDomain',
|
|
229
|
+
:'cidr_block' => :'cidrBlock',
|
|
230
|
+
:'compartment_id' => :'compartmentId',
|
|
231
|
+
:'dhcp_options_id' => :'dhcpOptionsId',
|
|
232
|
+
:'display_name' => :'displayName',
|
|
233
|
+
:'dns_label' => :'dnsLabel',
|
|
234
|
+
:'prohibit_public_ip_on_vnic' => :'prohibitPublicIpOnVnic',
|
|
235
|
+
:'route_table_id' => :'routeTableId',
|
|
236
|
+
:'security_list_ids' => :'securityListIds',
|
|
237
|
+
:'vcn_id' => :'vcnId'
|
|
238
|
+
}
|
|
239
|
+
end
|
|
240
|
+
|
|
241
|
+
# Attribute type mapping.
|
|
242
|
+
def self.swagger_types
|
|
243
|
+
{
|
|
244
|
+
:'availability_domain' => :'String',
|
|
245
|
+
:'cidr_block' => :'String',
|
|
246
|
+
:'compartment_id' => :'String',
|
|
247
|
+
:'dhcp_options_id' => :'String',
|
|
248
|
+
:'display_name' => :'String',
|
|
249
|
+
:'dns_label' => :'String',
|
|
250
|
+
:'prohibit_public_ip_on_vnic' => :'BOOLEAN',
|
|
251
|
+
:'route_table_id' => :'String',
|
|
252
|
+
:'security_list_ids' => :'Array<String>',
|
|
253
|
+
:'vcn_id' => :'String'
|
|
254
|
+
}
|
|
255
|
+
end
|
|
256
|
+
end
|
|
257
|
+
end
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
# Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
|
|
2
|
+
|
|
3
|
+
require 'date'
|
|
4
|
+
|
|
5
|
+
module OCI
|
|
6
|
+
class Core::Models::CreateVcnDetails
|
|
7
|
+
# The CIDR IP address block of the VCN.
|
|
8
|
+
#
|
|
9
|
+
# Example: `172.16.0.0/16`
|
|
10
|
+
#
|
|
11
|
+
# @return [String]
|
|
12
|
+
attr_accessor :cidr_block
|
|
13
|
+
|
|
14
|
+
# The OCID of the compartment to contain the VCN.
|
|
15
|
+
# @return [String]
|
|
16
|
+
attr_accessor :compartment_id
|
|
17
|
+
|
|
18
|
+
# A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
|
|
19
|
+
# @return [String]
|
|
20
|
+
attr_accessor :display_name
|
|
21
|
+
|
|
22
|
+
# A DNS label for the VCN, used in conjunction with the VNIC's hostname and
|
|
23
|
+
# subnet's DNS label to form a fully qualified domain name (FQDN) for each VNIC
|
|
24
|
+
# within this subnet (for example, `bminstance-1.subnet123.vcn1.oraclevcn.com`).
|
|
25
|
+
# Not required to be unique, but it's a best practice to set unique DNS labels
|
|
26
|
+
# for VCNs in your tenancy. Must be an alphanumeric string that begins with a letter.
|
|
27
|
+
# The value cannot be changed.
|
|
28
|
+
#
|
|
29
|
+
# You must set this value if you want instances to be able to use hostnames to
|
|
30
|
+
# resolve other instances in the VCN. Otherwise the Internet and VCN Resolver
|
|
31
|
+
# will not work.
|
|
32
|
+
#
|
|
33
|
+
# For more information, see
|
|
34
|
+
# [DNS in Your Virtual Cloud Network](https://docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/dns.htm).
|
|
35
|
+
#
|
|
36
|
+
# Example: `vcn1`
|
|
37
|
+
#
|
|
38
|
+
# @return [String]
|
|
39
|
+
attr_accessor :dns_label
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
# Initializes the object
|
|
43
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
44
|
+
def initialize(attributes = {})
|
|
45
|
+
return unless attributes.is_a?(Hash)
|
|
46
|
+
|
|
47
|
+
# convert string to symbol for hash key
|
|
48
|
+
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
|
49
|
+
|
|
50
|
+
if attributes[:'cidrBlock']
|
|
51
|
+
self.cidr_block = attributes[:'cidrBlock']
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
if attributes[:'compartmentId']
|
|
55
|
+
self.compartment_id = attributes[:'compartmentId']
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
if attributes[:'displayName']
|
|
59
|
+
self.display_name = attributes[:'displayName']
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
if attributes[:'dnsLabel']
|
|
63
|
+
self.dns_label = attributes[:'dnsLabel']
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
# Checks equality by comparing each attribute.
|
|
69
|
+
# @param [Object] other_object to be compared
|
|
70
|
+
def ==(other_object)
|
|
71
|
+
return true if self.equal?(other_object)
|
|
72
|
+
self.class == other_object.class &&
|
|
73
|
+
cidr_block == other_object.cidr_block &&
|
|
74
|
+
compartment_id == other_object.compartment_id &&
|
|
75
|
+
display_name == other_object.display_name &&
|
|
76
|
+
dns_label == other_object.dns_label
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
# @see the `==` method
|
|
80
|
+
# @param [Object] other_object to be compared
|
|
81
|
+
def eql?(other_object)
|
|
82
|
+
self == other_object
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
# Calculates hash code according to all attributes.
|
|
86
|
+
# @return [Fixnum] Hash code
|
|
87
|
+
def hash
|
|
88
|
+
[cidr_block, compartment_id, display_name, dns_label].hash
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
# Builds the object from hash
|
|
92
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
93
|
+
# @return [Object] Returns the model itself
|
|
94
|
+
def build_from_hash(attributes)
|
|
95
|
+
return nil unless attributes.is_a?(Hash)
|
|
96
|
+
self.class.swagger_types.each_pair do |key, type|
|
|
97
|
+
if type =~ /^Array<(.*)>/i
|
|
98
|
+
# check to ensure the input is an array given that the the attribute
|
|
99
|
+
# is documented as an array but the input is not
|
|
100
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
101
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
|
|
102
|
+
end
|
|
103
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
104
|
+
self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
|
|
105
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
self
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
# Returns the string representation of the object
|
|
112
|
+
# @return [String] String presentation of the object
|
|
113
|
+
def to_s
|
|
114
|
+
to_hash.to_s
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
# Returns the object in the form of hash
|
|
118
|
+
# @return [Hash] Returns the object in the form of hash
|
|
119
|
+
def to_hash
|
|
120
|
+
hash = {}
|
|
121
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
122
|
+
value = self.send(attr)
|
|
123
|
+
next if value.nil?
|
|
124
|
+
hash[param] = _to_hash(value)
|
|
125
|
+
end
|
|
126
|
+
hash
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
private
|
|
130
|
+
|
|
131
|
+
# Outputs non-array value in the form of hash
|
|
132
|
+
# For object, use to_hash. Otherwise, just return the value
|
|
133
|
+
# @param [Object] value Any valid value
|
|
134
|
+
# @return [Hash] Returns the value in the form of hash
|
|
135
|
+
def _to_hash(value)
|
|
136
|
+
if value.is_a?(Array)
|
|
137
|
+
value.compact.map{ |v| _to_hash(v) }
|
|
138
|
+
elsif value.is_a?(Hash)
|
|
139
|
+
{}.tap do |hash|
|
|
140
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
141
|
+
end
|
|
142
|
+
elsif value.respond_to? :to_hash
|
|
143
|
+
value.to_hash
|
|
144
|
+
else
|
|
145
|
+
value
|
|
146
|
+
end
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
152
|
+
def self.attribute_map
|
|
153
|
+
{
|
|
154
|
+
:'cidr_block' => :'cidrBlock',
|
|
155
|
+
:'compartment_id' => :'compartmentId',
|
|
156
|
+
:'display_name' => :'displayName',
|
|
157
|
+
:'dns_label' => :'dnsLabel'
|
|
158
|
+
}
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
# Attribute type mapping.
|
|
162
|
+
def self.swagger_types
|
|
163
|
+
{
|
|
164
|
+
:'cidr_block' => :'String',
|
|
165
|
+
:'compartment_id' => :'String',
|
|
166
|
+
:'display_name' => :'String',
|
|
167
|
+
:'dns_label' => :'String'
|
|
168
|
+
}
|
|
169
|
+
end
|
|
170
|
+
end
|
|
171
|
+
end
|
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
# Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
|
|
2
|
+
|
|
3
|
+
require 'date'
|
|
4
|
+
|
|
5
|
+
module OCI
|
|
6
|
+
class Core::Models::CreateVirtualCircuitDetails
|
|
7
|
+
|
|
8
|
+
TYPE_ENUM = [TYPE_PUBLIC = 'PUBLIC',
|
|
9
|
+
TYPE_PRIVATE = 'PRIVATE']
|
|
10
|
+
|
|
11
|
+
# The provisioned data rate of the connection. To get a list of the
|
|
12
|
+
# available bandwidth levels (that is, shapes), see
|
|
13
|
+
# {#list_virtual_circuit_bandwidth_shapes list_virtual_circuit_bandwidth_shapes}.
|
|
14
|
+
#
|
|
15
|
+
# Example: `10 Gbps`
|
|
16
|
+
#
|
|
17
|
+
# @return [String]
|
|
18
|
+
attr_accessor :bandwidth_shape_name
|
|
19
|
+
|
|
20
|
+
# The OCID of the compartment to contain the virtual circuit.
|
|
21
|
+
#
|
|
22
|
+
# @return [String]
|
|
23
|
+
attr_accessor :compartment_id
|
|
24
|
+
|
|
25
|
+
# Create a `CrossConnectMapping` for each cross-connect or cross-connect
|
|
26
|
+
# group this virtual circuit will run on.
|
|
27
|
+
#
|
|
28
|
+
# @return [Array<OCI::Core::Models::CrossConnectMapping>]
|
|
29
|
+
attr_accessor :cross_connect_mappings
|
|
30
|
+
|
|
31
|
+
# Your BGP ASN (either public or private). Provide this value only if
|
|
32
|
+
# there's a BGP session that goes from your edge router to Oracle.
|
|
33
|
+
# Otherwise, leave this empty or null.
|
|
34
|
+
#
|
|
35
|
+
# @return [Integer]
|
|
36
|
+
attr_accessor :customer_bgp_asn
|
|
37
|
+
|
|
38
|
+
# A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
|
|
39
|
+
#
|
|
40
|
+
# @return [String]
|
|
41
|
+
attr_accessor :display_name
|
|
42
|
+
|
|
43
|
+
# The OCID of the {Drg}
|
|
44
|
+
# that this virtual circuit uses.
|
|
45
|
+
#
|
|
46
|
+
# @return [String]
|
|
47
|
+
attr_accessor :gateway_id
|
|
48
|
+
|
|
49
|
+
# The name of the provider (if you're connecting via a provider).
|
|
50
|
+
# To get a list of the provider names, see
|
|
51
|
+
# {#list_fast_connect_provider_services list_fast_connect_provider_services}.
|
|
52
|
+
#
|
|
53
|
+
# @return [String]
|
|
54
|
+
attr_accessor :provider_name
|
|
55
|
+
|
|
56
|
+
# The name of the service offered by the provider (if you're connecting
|
|
57
|
+
# via a provider). To get a list of the available service offerings, see
|
|
58
|
+
# {#list_fast_connect_provider_services list_fast_connect_provider_services}.
|
|
59
|
+
#
|
|
60
|
+
# @return [String]
|
|
61
|
+
attr_accessor :provider_service_name
|
|
62
|
+
|
|
63
|
+
# The Oracle Bare Metal Cloud Services region where this virtual
|
|
64
|
+
# circuit is located.
|
|
65
|
+
#
|
|
66
|
+
# Example: `phx`
|
|
67
|
+
#
|
|
68
|
+
# @return [String]
|
|
69
|
+
attr_accessor :region
|
|
70
|
+
|
|
71
|
+
# The type of IP addresses used in this virtual circuit. PRIVATE
|
|
72
|
+
# means [RFC 1918](https://tools.ietf.org/html/rfc1918) addresses
|
|
73
|
+
# (10.0.0.0/8, 172.16/12, and 192.168/16). Only PRIVATE is supported.
|
|
74
|
+
#
|
|
75
|
+
# @return [String]
|
|
76
|
+
attr_accessor :type
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
# Initializes the object
|
|
80
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
81
|
+
def initialize(attributes = {})
|
|
82
|
+
return unless attributes.is_a?(Hash)
|
|
83
|
+
|
|
84
|
+
# convert string to symbol for hash key
|
|
85
|
+
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
|
86
|
+
|
|
87
|
+
if attributes[:'bandwidthShapeName']
|
|
88
|
+
self.bandwidth_shape_name = attributes[:'bandwidthShapeName']
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
if attributes[:'compartmentId']
|
|
92
|
+
self.compartment_id = attributes[:'compartmentId']
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
if attributes[:'crossConnectMappings']
|
|
96
|
+
self.cross_connect_mappings = attributes[:'crossConnectMappings']
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
if attributes[:'customerBgpAsn']
|
|
100
|
+
self.customer_bgp_asn = attributes[:'customerBgpAsn']
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
if attributes[:'displayName']
|
|
104
|
+
self.display_name = attributes[:'displayName']
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
if attributes[:'gatewayId']
|
|
108
|
+
self.gateway_id = attributes[:'gatewayId']
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
if attributes[:'providerName']
|
|
112
|
+
self.provider_name = attributes[:'providerName']
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
if attributes[:'providerServiceName']
|
|
116
|
+
self.provider_service_name = attributes[:'providerServiceName']
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
if attributes[:'region']
|
|
120
|
+
self.region = attributes[:'region']
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
if attributes[:'type']
|
|
124
|
+
self.type = attributes[:'type']
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
# Custom attribute writer method checking allowed values (enum).
|
|
130
|
+
# @param [Object] type Object to be assigned
|
|
131
|
+
def type=(type)
|
|
132
|
+
if type && !TYPE_ENUM.include?(type)
|
|
133
|
+
fail "Invalid value for 'type': this must be one of the values in TYPE_ENUM."
|
|
134
|
+
else
|
|
135
|
+
@type = type
|
|
136
|
+
end
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
# Checks equality by comparing each attribute.
|
|
140
|
+
# @param [Object] other_object to be compared
|
|
141
|
+
def ==(other_object)
|
|
142
|
+
return true if self.equal?(other_object)
|
|
143
|
+
self.class == other_object.class &&
|
|
144
|
+
bandwidth_shape_name == other_object.bandwidth_shape_name &&
|
|
145
|
+
compartment_id == other_object.compartment_id &&
|
|
146
|
+
cross_connect_mappings == other_object.cross_connect_mappings &&
|
|
147
|
+
customer_bgp_asn == other_object.customer_bgp_asn &&
|
|
148
|
+
display_name == other_object.display_name &&
|
|
149
|
+
gateway_id == other_object.gateway_id &&
|
|
150
|
+
provider_name == other_object.provider_name &&
|
|
151
|
+
provider_service_name == other_object.provider_service_name &&
|
|
152
|
+
region == other_object.region &&
|
|
153
|
+
type == other_object.type
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
# @see the `==` method
|
|
157
|
+
# @param [Object] other_object to be compared
|
|
158
|
+
def eql?(other_object)
|
|
159
|
+
self == other_object
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
# Calculates hash code according to all attributes.
|
|
163
|
+
# @return [Fixnum] Hash code
|
|
164
|
+
def hash
|
|
165
|
+
[bandwidth_shape_name, compartment_id, cross_connect_mappings, customer_bgp_asn, display_name, gateway_id, provider_name, provider_service_name, region, type].hash
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
# Builds the object from hash
|
|
169
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
170
|
+
# @return [Object] Returns the model itself
|
|
171
|
+
def build_from_hash(attributes)
|
|
172
|
+
return nil unless attributes.is_a?(Hash)
|
|
173
|
+
self.class.swagger_types.each_pair do |key, type|
|
|
174
|
+
if type =~ /^Array<(.*)>/i
|
|
175
|
+
# check to ensure the input is an array given that the the attribute
|
|
176
|
+
# is documented as an array but the input is not
|
|
177
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
178
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
|
|
179
|
+
end
|
|
180
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
181
|
+
self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
|
|
182
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
self
|
|
186
|
+
end
|
|
187
|
+
|
|
188
|
+
# Returns the string representation of the object
|
|
189
|
+
# @return [String] String presentation of the object
|
|
190
|
+
def to_s
|
|
191
|
+
to_hash.to_s
|
|
192
|
+
end
|
|
193
|
+
|
|
194
|
+
# Returns the object in the form of hash
|
|
195
|
+
# @return [Hash] Returns the object in the form of hash
|
|
196
|
+
def to_hash
|
|
197
|
+
hash = {}
|
|
198
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
199
|
+
value = self.send(attr)
|
|
200
|
+
next if value.nil?
|
|
201
|
+
hash[param] = _to_hash(value)
|
|
202
|
+
end
|
|
203
|
+
hash
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
private
|
|
207
|
+
|
|
208
|
+
# Outputs non-array value in the form of hash
|
|
209
|
+
# For object, use to_hash. Otherwise, just return the value
|
|
210
|
+
# @param [Object] value Any valid value
|
|
211
|
+
# @return [Hash] Returns the value in the form of hash
|
|
212
|
+
def _to_hash(value)
|
|
213
|
+
if value.is_a?(Array)
|
|
214
|
+
value.compact.map{ |v| _to_hash(v) }
|
|
215
|
+
elsif value.is_a?(Hash)
|
|
216
|
+
{}.tap do |hash|
|
|
217
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
218
|
+
end
|
|
219
|
+
elsif value.respond_to? :to_hash
|
|
220
|
+
value.to_hash
|
|
221
|
+
else
|
|
222
|
+
value
|
|
223
|
+
end
|
|
224
|
+
end
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
229
|
+
def self.attribute_map
|
|
230
|
+
{
|
|
231
|
+
:'bandwidth_shape_name' => :'bandwidthShapeName',
|
|
232
|
+
:'compartment_id' => :'compartmentId',
|
|
233
|
+
:'cross_connect_mappings' => :'crossConnectMappings',
|
|
234
|
+
:'customer_bgp_asn' => :'customerBgpAsn',
|
|
235
|
+
:'display_name' => :'displayName',
|
|
236
|
+
:'gateway_id' => :'gatewayId',
|
|
237
|
+
:'provider_name' => :'providerName',
|
|
238
|
+
:'provider_service_name' => :'providerServiceName',
|
|
239
|
+
:'region' => :'region',
|
|
240
|
+
:'type' => :'type'
|
|
241
|
+
}
|
|
242
|
+
end
|
|
243
|
+
|
|
244
|
+
# Attribute type mapping.
|
|
245
|
+
def self.swagger_types
|
|
246
|
+
{
|
|
247
|
+
:'bandwidth_shape_name' => :'String',
|
|
248
|
+
:'compartment_id' => :'String',
|
|
249
|
+
:'cross_connect_mappings' => :'Array<OCI::Core::Models::CrossConnectMapping>',
|
|
250
|
+
:'customer_bgp_asn' => :'Integer',
|
|
251
|
+
:'display_name' => :'String',
|
|
252
|
+
:'gateway_id' => :'String',
|
|
253
|
+
:'provider_name' => :'String',
|
|
254
|
+
:'provider_service_name' => :'String',
|
|
255
|
+
:'region' => :'String',
|
|
256
|
+
:'type' => :'String'
|
|
257
|
+
}
|
|
258
|
+
end
|
|
259
|
+
end
|
|
260
|
+
end
|