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.



2077
2078
2079
# File 'lib/google/apis/dns_v1/classes.rb', line 2077

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)


2063
2064
2065
# File 'lib/google/apis/dns_v1/classes.rb', line 2063

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



2070
2071
2072
# File 'lib/google/apis/dns_v1/classes.rb', line 2070

def items
  @items
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


2075
2076
2077
# File 'lib/google/apis/dns_v1/classes.rb', line 2075

def kind
  @kind
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2082
2083
2084
2085
2086
# File 'lib/google/apis/dns_v1/classes.rb', line 2082

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