Class: Google::Apis::BigtableadminV2::AppProfile

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

Overview

A configuration object describing how Cloud Bigtable should treat traffic from a particular end user application.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ AppProfile

Returns a new instance of AppProfile.


69
70
71
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 69

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

Instance Attribute Details

#descriptionString

Long form description of the use case for this AppProfile. Corresponds to the JSON property description

Returns:

  • (String)

33
34
35
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 33

def description
  @description
end

#etagString

Strongly validated etag for optimistic concurrency control. Preserve the value returned from GetAppProfile when calling UpdateAppProfile to fail the request if there has been a modification in the mean time. The update_mask of the request need not include etag for this protection to apply. See Wikipedia and RFC 7232 for more details. Corresponds to the JSON property etag

Returns:

  • (String)

45
46
47
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 45

def etag
  @etag
end

#multi_cluster_routing_use_anyGoogle::Apis::BigtableadminV2::MultiClusterRoutingUseAny

Read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability. Corresponds to the JSON property multiClusterRoutingUseAny


54
55
56
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 54

def multi_cluster_routing_use_any
  @multi_cluster_routing_use_any
end

#nameString

The unique name of the app profile. Values are of the form projects/project/instances/instance/appProfiles/_a-zA-Z0-9*. Corresponds to the JSON property name

Returns:

  • (String)

60
61
62
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 60

def name
  @name
end

#single_cluster_routingGoogle::Apis::BigtableadminV2::SingleClusterRouting

Unconditionally routes all read/write requests to a specific cluster. This option preserves read-your-writes consistency but does not improve availability. Corresponds to the JSON property singleClusterRouting


67
68
69
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 67

def single_cluster_routing
  @single_cluster_routing
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object


74
75
76
77
78
79
80
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 74

def update!(**args)
  @description = args[:description] if args.key?(:description)
  @etag = args[:etag] if args.key?(:etag)
  @multi_cluster_routing_use_any = args[:multi_cluster_routing_use_any] if args.key?(:multi_cluster_routing_use_any)
  @name = args[:name] if args.key?(:name)
  @single_cluster_routing = args[:single_cluster_routing] if args.key?(:single_cluster_routing)
end