Class: Google::Apis::TrafficdirectorV3::SocketAddress
- Inherits:
-
Object
- Object
- Google::Apis::TrafficdirectorV3::SocketAddress
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/trafficdirector_v3/classes.rb,
lib/google/apis/trafficdirector_v3/representations.rb,
lib/google/apis/trafficdirector_v3/representations.rb
Overview
[#next-free-field: 7]
Instance Attribute Summary collapse
-
#address ⇒ String
The address for this socket.
-
#ipv4_compat ⇒ Boolean
(also: #ipv4_compat?)
When binding to an IPv6 address above, this enables
IPv4 compatibility_. -
#named_port ⇒ String
This is only valid if :ref:
resolver_nameis specified below and the named resolver is capable of named port resolution. -
#port_value ⇒ Fixnum
Corresponds to the JSON property
portValue. -
#protocol ⇒ String
Corresponds to the JSON property
protocol. -
#resolver_name ⇒ String
The name of the custom resolver.
Instance Method Summary collapse
-
#initialize(**args) ⇒ SocketAddress
constructor
A new instance of SocketAddress.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ SocketAddress
Returns a new instance of SocketAddress.
1413 1414 1415 |
# File 'lib/google/apis/trafficdirector_v3/classes.rb', line 1413 def initialize(**args) update!(**args) end |
Instance Attribute Details
#address ⇒ String
The address for this socket. :ref:Listeners will bind to the address. An
empty address is not allowed. Specify 0.0.0.0 or :: to bind to any
address. [#comment:TODO(zuercher) reinstate when implemented: It is possible
to distinguish a Listener address via the prefix/suffix matching in :ref:
FilterChainMatch.] When used within an upstream :ref:BindConfig, the
address controls the source address of outbound connections. For :ref:
clusters, the cluster type determines whether the address must be an IP (
STATIC or EDS clusters) or a hostname resolved by DNS (STRICT_DNS or
LOGICAL_DNS clusters). Address resolution can be customized via :ref:
resolver_name.
Corresponds to the JSON property address
1378 1379 1380 |
# File 'lib/google/apis/trafficdirector_v3/classes.rb', line 1378 def address @address end |
#ipv4_compat ⇒ Boolean Also known as: ipv4_compat?
When binding to an IPv6 address above, this enables IPv4 compatibility_.
Binding to :: will allow both IPv4 and IPv6 connections, with peer IPv4
addresses mapped into IPv6 space as ::FFFF:.
Corresponds to the JSON property ipv4Compat
1385 1386 1387 |
# File 'lib/google/apis/trafficdirector_v3/classes.rb', line 1385 def ipv4_compat @ipv4_compat end |
#named_port ⇒ String
This is only valid if :ref:resolver_name is specified below and the named
resolver is capable of named port resolution.
Corresponds to the JSON property namedPort
1392 1393 1394 |
# File 'lib/google/apis/trafficdirector_v3/classes.rb', line 1392 def named_port @named_port end |
#port_value ⇒ Fixnum
Corresponds to the JSON property portValue
1397 1398 1399 |
# File 'lib/google/apis/trafficdirector_v3/classes.rb', line 1397 def port_value @port_value end |
#protocol ⇒ String
Corresponds to the JSON property protocol
1402 1403 1404 |
# File 'lib/google/apis/trafficdirector_v3/classes.rb', line 1402 def protocol @protocol end |
#resolver_name ⇒ String
The name of the custom resolver. This must have been registered with Envoy. If
this is empty, a context dependent default applies. If the address is a
concrete IP address, no resolution will occur. If address is a hostname this
should be set for resolution other than DNS. Specifying a custom resolver with
STRICT_DNS or LOGICAL_DNS will generate an error at runtime.
Corresponds to the JSON property resolverName
1411 1412 1413 |
# File 'lib/google/apis/trafficdirector_v3/classes.rb', line 1411 def resolver_name @resolver_name end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1418 1419 1420 1421 1422 1423 1424 1425 |
# File 'lib/google/apis/trafficdirector_v3/classes.rb', line 1418 def update!(**args) @address = args[:address] if args.key?(:address) @ipv4_compat = args[:ipv4_compat] if args.key?(:ipv4_compat) @named_port = args[:named_port] if args.key?(:named_port) @port_value = args[:port_value] if args.key?(:port_value) @protocol = args[:protocol] if args.key?(:protocol) @resolver_name = args[:resolver_name] if args.key?(:resolver_name) end |