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.



2147
2148
2149
# File 'lib/google/apis/dns_v1/classes.rb', line 2147

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)


2133
2134
2135
# File 'lib/google/apis/dns_v1/classes.rb', line 2133

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



2140
2141
2142
# File 'lib/google/apis/dns_v1/classes.rb', line 2140

def items
  @items
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


2145
2146
2147
# File 'lib/google/apis/dns_v1/classes.rb', line 2145

def kind
  @kind
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2152
2153
2154
2155
2156
# File 'lib/google/apis/dns_v1/classes.rb', line 2152

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