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

Constructor Details

#initialize(**args) ⇒ AppProfile

Returns a new instance of AppProfile.



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

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)


43
44
45
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 43

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



52
53
54
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 52

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)


58
59
60
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 58

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



65
66
67
# File 'generated/google/apis/bigtableadmin_v2/classes.rb', line 65

def single_cluster_routing
  @single_cluster_routing
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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