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

Optional 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 may be routed to any cluster in the instance, and will fail over to another cluster in the event of transient errors or delays. Choosing this option sacrifices read-your-writes consistency to improve availability. Corresponds to the JSON property multiClusterRoutingUseAny



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

def multi_cluster_routing_use_any
  @multi_cluster_routing_use_any
end

#nameString

(OutputOnly) 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