Class: Google::Apis::DnsV1::RrSetRoutingPolicyGeoPolicy

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dns_v1/classes.rb,
lib/google/apis/dns_v1/representations.rb,
lib/google/apis/dns_v1/representations.rb

Overview

Configures a RRSetRoutingPolicy that routes based on the geo location of the querying user.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RrSetRoutingPolicyGeoPolicy

Returns a new instance of RrSetRoutingPolicyGeoPolicy.



2050
2051
2052
# File 'lib/google/apis/dns_v1/classes.rb', line 2050

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#enable_fencingBoolean Also known as: enable_fencing?

Without fencing, if health check fails for all configured items in the current geo bucket, we failover to the next nearest geo bucket. With fencing, if health checking is enabled, as long as some targets in the current geo bucket are healthy, we return only the healthy targets. However, if all targets are unhealthy, we don't failover to the next nearest bucket; instead, we return all the items in the current bucket even when all targets are unhealthy. Corresponds to the JSON property enableFencing

Returns:

  • (Boolean)


2036
2037
2038
# File 'lib/google/apis/dns_v1/classes.rb', line 2036

def enable_fencing
  @enable_fencing
end

#itemsArray<Google::Apis::DnsV1::RrSetRoutingPolicyGeoPolicyGeoPolicyItem>

The primary geo routing configuration. If there are multiple items with the same location, an error is returned instead. Corresponds to the JSON property items



2043
2044
2045
# File 'lib/google/apis/dns_v1/classes.rb', line 2043

def items
  @items
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


2048
2049
2050
# File 'lib/google/apis/dns_v1/classes.rb', line 2048

def kind
  @kind
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2055
2056
2057
2058
2059
# File 'lib/google/apis/dns_v1/classes.rb', line 2055

def update!(**args)
  @enable_fencing = args[:enable_fencing] if args.key?(:enable_fencing)
  @items = args[:items] if args.key?(:items)
  @kind = args[:kind] if args.key?(:kind)
end