Class: Google::Apis::BigtableadminV2::AppProfile
- Inherits:
-
Object
- Object
- Google::Apis::BigtableadminV2::AppProfile
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/bigtableadmin_v2/classes.rb,
lib/google/apis/bigtableadmin_v2/representations.rb,
lib/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
-
#description ⇒ String
Long form description of the use case for this AppProfile.
-
#etag ⇒ String
Strongly validated etag for optimistic concurrency control.
-
#multi_cluster_routing_use_any ⇒ Google::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.
-
#name ⇒ String
The unique name of the app profile.
-
#priority ⇒ String
This field has been deprecated in favor of
standard_isolation.priority. -
#single_cluster_routing ⇒ Google::Apis::BigtableadminV2::SingleClusterRouting
Unconditionally routes all read/write requests to a specific cluster.
-
#standard_isolation ⇒ Google::Apis::BigtableadminV2::StandardIsolation
Standard options for isolating this app profile's traffic from other use cases.
Instance Method Summary collapse
-
#initialize(**args) ⇒ AppProfile
constructor
A new instance of AppProfile.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ AppProfile
Returns a new instance of AppProfile.
79 80 81 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 79 def initialize(**args) update!(**args) end |
Instance Attribute Details
#description ⇒ String
Long form description of the use case for this AppProfile.
Corresponds to the JSON property description
33 34 35 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 33 def description @description end |
#etag ⇒ String
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
43 44 45 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 43 def etag @etag end |
#multi_cluster_routing_use_any ⇒ Google::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 'lib/google/apis/bigtableadmin_v2/classes.rb', line 52 def multi_cluster_routing_use_any @multi_cluster_routing_use_any end |
#name ⇒ String
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
58 59 60 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 58 def name @name end |
#priority ⇒ String
This field has been deprecated in favor of standard_isolation.priority. If
you set this field, standard_isolation.priority will be set instead. The
priority of requests sent using this app profile.
Corresponds to the JSON property priority
65 66 67 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 65 def priority @priority end |
#single_cluster_routing ⇒ Google::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
72 73 74 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 72 def single_cluster_routing @single_cluster_routing end |
#standard_isolation ⇒ Google::Apis::BigtableadminV2::StandardIsolation
Standard options for isolating this app profile's traffic from other use cases.
Corresponds to the JSON property standardIsolation
77 78 79 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 77 def standard_isolation @standard_isolation end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
84 85 86 87 88 89 90 91 92 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 84 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) @priority = args[:priority] if args.key?(:priority) @single_cluster_routing = args[:single_cluster_routing] if args.key?(:single_cluster_routing) @standard_isolation = args[:standard_isolation] if args.key?(:standard_isolation) end |