Class: Google::Apis::ServicecontrolV1::QuotaOperation
- Inherits:
-
Object
- Object
- Google::Apis::ServicecontrolV1::QuotaOperation
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/servicecontrol_v1/classes.rb,
generated/google/apis/servicecontrol_v1/representations.rb,
generated/google/apis/servicecontrol_v1/representations.rb
Overview
Represents information regarding a quota operation.
Instance Attribute Summary collapse
-
#consumer_id ⇒ String
Identity of the consumer for whom this quota operation is being performed.
-
#labels ⇒ Hash<String,String>
Labels describing the operation.
-
#method_name ⇒ String
Fully qualified name of the API method for which this quota operation is requested.
-
#operation_id ⇒ String
Identity of the operation.
-
#quota_metrics ⇒ Array<Google::Apis::ServicecontrolV1::MetricValueSet>
Represents information about this operation.
-
#quota_mode ⇒ String
Quota mode for this operation.
Instance Method Summary collapse
-
#initialize(**args) ⇒ QuotaOperation
constructor
A new instance of QuotaOperation.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ QuotaOperation
Returns a new instance of QuotaOperation
1274 1275 1276 |
# File 'generated/google/apis/servicecontrol_v1/classes.rb', line 1274 def initialize(**args) update!(**args) end |
Instance Attribute Details
#consumer_id ⇒ String
Identity of the consumer for whom this quota operation is being performed.
This can be in one of the following formats:
project:consumerId
1225 1226 1227 |
# File 'generated/google/apis/servicecontrol_v1/classes.rb', line 1225 def consumer_id @consumer_id end |
#labels ⇒ Hash<String,String>
Labels describing the operation.
Corresponds to the JSON property labels
1230 1231 1232 |
# File 'generated/google/apis/servicecontrol_v1/classes.rb', line 1230 def labels @labels end |
#method_name ⇒ String
Fully qualified name of the API method for which this quota operation is
requested. This name is used for matching quota rules or metric rules and
billing status rules defined in service configuration.
This field should not be set if any of the following is true:
(1) the quota operation is performed on non-API resources.
(2) quota_metrics is set because the caller is doing quota override.
Example of an RPC method name:
google.example.library.v1.LibraryService.CreateShelf
Corresponds to the JSON property methodName
1242 1243 1244 |
# File 'generated/google/apis/servicecontrol_v1/classes.rb', line 1242 def method_name @method_name end |
#operation_id ⇒ String
Identity of the operation. This is expected to be unique within the scope
of the service that generated the operation, and guarantees idempotency in
case of retries.
UUID version 4 is recommended, though not required. In scenarios where an
operation is computed from existing information and an idempotent id is
desirable for deduplication purpose, UUID version 5 is recommended. See
RFC 4122 for details.
Corresponds to the JSON property operationId
1253 1254 1255 |
# File 'generated/google/apis/servicecontrol_v1/classes.rb', line 1253 def operation_id @operation_id end |
#quota_metrics ⇒ Array<Google::Apis::ServicecontrolV1::MetricValueSet>
Represents information about this operation. Each MetricValueSet
corresponds to a metric defined in the service configuration.
The data type used in the MetricValueSet must agree with
the data type specified in the metric definition.
Within a single operation, it is not allowed to have more than one
MetricValue instances that have the same metric names and identical
label value combinations. If a request has such duplicated MetricValue
instances, the entire request is rejected with
an invalid argument error.
This field is mutually exclusive with method_name.
Corresponds to the JSON property quotaMetrics
1267 1268 1269 |
# File 'generated/google/apis/servicecontrol_v1/classes.rb', line 1267 def quota_metrics @quota_metrics end |
#quota_mode ⇒ String
Quota mode for this operation.
Corresponds to the JSON property quotaMode
1272 1273 1274 |
# File 'generated/google/apis/servicecontrol_v1/classes.rb', line 1272 def quota_mode @quota_mode end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1279 1280 1281 1282 1283 1284 1285 1286 |
# File 'generated/google/apis/servicecontrol_v1/classes.rb', line 1279 def update!(**args) @consumer_id = args[:consumer_id] if args.key?(:consumer_id) @labels = args[:labels] if args.key?(:labels) @method_name = args[:method_name] if args.key?(:method_name) @operation_id = args[:operation_id] if args.key?(:operation_id) @quota_metrics = args[:quota_metrics] if args.key?(:quota_metrics) @quota_mode = args[:quota_mode] if args.key?(:quota_mode) end |