Class: Google::Apis::DomainsV1::GeoPolicy

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/domains_v1/classes.rb,
lib/google/apis/domains_v1/representations.rb,
lib/google/apis/domains_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) ⇒ GeoPolicy

Returns a new instance of GeoPolicy.



738
739
740
# File 'lib/google/apis/domains_v1/classes.rb', line 738

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)


729
730
731
# File 'lib/google/apis/domains_v1/classes.rb', line 729

def enable_fencing
  @enable_fencing
end

#itemArray<Google::Apis::DomainsV1::GeoPolicyItem>

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



736
737
738
# File 'lib/google/apis/domains_v1/classes.rb', line 736

def item
  @item
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



743
744
745
746
# File 'lib/google/apis/domains_v1/classes.rb', line 743

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