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.



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

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)


2033
2034
2035
# File 'lib/google/apis/dns_v1/classes.rb', line 2033

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



2040
2041
2042
# File 'lib/google/apis/dns_v1/classes.rb', line 2040

def items
  @items
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


2045
2046
2047
# File 'lib/google/apis/dns_v1/classes.rb', line 2045

def kind
  @kind
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2052
2053
2054
2055
2056
# File 'lib/google/apis/dns_v1/classes.rb', line 2052

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