public static final class Billing.Builder extends com.google.protobuf.GeneratedMessage.Builder<Billing.Builder> implements BillingOrBuilder
Billing related configuration of the service.
The following example shows how to configure metrics for billing:
metrics:
- name: library.googleapis.com/read_calls
metric_kind: DELTA
value_type: INT64
- name: library.googleapis.com/write_calls
metric_kind: DELTA
value_type: INT64
billing:
metrics:
- library.googleapis.com/read_calls
- library.googleapis.com/write_calls
The next example shows how to enable billing status check and customize the
check behavior. It makes sure billing status check is included in the `Check`
method of [Service Control API](https://cloud.google.com/service-control/).
In the example, "google.storage.Get" method can be served when the billing
status is either `current` or `delinquent`, while "google.storage.Write"
method can only be served when the billing status is `current`:
billing:
rules:
- selector: google.storage.Get
allowed_statuses:
- current
- delinquent
- selector: google.storage.Write
allowed_statuses: current
Mostly services should only allow `current` status when serving requests.
In addition, services can choose to allow both `current` and `delinquent`
statuses when serving read-only requests to resources. If there's no
matching selector for operation, no billing status check will be performed.
Protobuf type google.api.Billing| Modifier and Type | Method and Description |
|---|---|
Billing.Builder |
addAllMetrics(java.lang.Iterable<java.lang.String> values)
Names of the metrics to report to billing.
|
Billing.Builder |
addAllRules(java.lang.Iterable<? extends BillingStatusRule> values)
A list of billing status rules for configuring billing status check.
|
Billing.Builder |
addMetrics(java.lang.String value)
Names of the metrics to report to billing.
|
Billing.Builder |
addMetricsBytes(com.google.protobuf.ByteString value)
Names of the metrics to report to billing.
|
Billing.Builder |
addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) |
Billing.Builder |
addRules(BillingStatusRule.Builder builderForValue)
A list of billing status rules for configuring billing status check.
|
Billing.Builder |
addRules(BillingStatusRule value)
A list of billing status rules for configuring billing status check.
|
Billing.Builder |
addRules(int index,
BillingStatusRule.Builder builderForValue)
A list of billing status rules for configuring billing status check.
|
Billing.Builder |
addRules(int index,
BillingStatusRule value)
A list of billing status rules for configuring billing status check.
|
BillingStatusRule.Builder |
addRulesBuilder()
A list of billing status rules for configuring billing status check.
|
BillingStatusRule.Builder |
addRulesBuilder(int index)
A list of billing status rules for configuring billing status check.
|
Billing |
build() |
Billing |
buildPartial() |
Billing.Builder |
clear() |
Billing.Builder |
clearField(com.google.protobuf.Descriptors.FieldDescriptor field) |
Billing.Builder |
clearMetrics()
Names of the metrics to report to billing.
|
Billing.Builder |
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) |
Billing.Builder |
clearRules()
A list of billing status rules for configuring billing status check.
|
Billing.Builder |
clone() |
Billing |
getDefaultInstanceForType() |
static com.google.protobuf.Descriptors.Descriptor |
getDescriptor() |
com.google.protobuf.Descriptors.Descriptor |
getDescriptorForType() |
java.lang.String |
getMetrics(int index)
Names of the metrics to report to billing.
|
com.google.protobuf.ByteString |
getMetricsBytes(int index)
Names of the metrics to report to billing.
|
int |
getMetricsCount()
Names of the metrics to report to billing.
|
com.google.protobuf.ProtocolStringList |
getMetricsList()
Names of the metrics to report to billing.
|
BillingStatusRule |
getRules(int index)
A list of billing status rules for configuring billing status check.
|
BillingStatusRule.Builder |
getRulesBuilder(int index)
A list of billing status rules for configuring billing status check.
|
java.util.List<BillingStatusRule.Builder> |
getRulesBuilderList()
A list of billing status rules for configuring billing status check.
|
int |
getRulesCount()
A list of billing status rules for configuring billing status check.
|
java.util.List<BillingStatusRule> |
getRulesList()
A list of billing status rules for configuring billing status check.
|
BillingStatusRuleOrBuilder |
getRulesOrBuilder(int index)
A list of billing status rules for configuring billing status check.
|
java.util.List<? extends BillingStatusRuleOrBuilder> |
getRulesOrBuilderList()
A list of billing status rules for configuring billing status check.
|
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable |
internalGetFieldAccessorTable() |
boolean |
isInitialized() |
Billing.Builder |
mergeFrom(Billing other) |
Billing.Builder |
mergeFrom(com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
Billing.Builder |
mergeFrom(com.google.protobuf.Message other) |
Billing.Builder |
mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) |
Billing.Builder |
removeRules(int index)
A list of billing status rules for configuring billing status check.
|
Billing.Builder |
setField(com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) |
Billing.Builder |
setMetrics(int index,
java.lang.String value)
Names of the metrics to report to billing.
|
Billing.Builder |
setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field,
int index,
java.lang.Object value) |
Billing.Builder |
setRules(int index,
BillingStatusRule.Builder builderForValue)
A list of billing status rules for configuring billing status check.
|
Billing.Builder |
setRules(int index,
BillingStatusRule value)
A list of billing status rules for configuring billing status check.
|
Billing.Builder |
setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) |
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, newBuilderForField, onBuilt, onChanged, parseUnknownFieldfindInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringaddAll, mergeFrom, newUninitializedMessageExceptionequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitpublic static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public Billing.Builder clear()
clear in interface com.google.protobuf.Message.Builderclear in interface com.google.protobuf.MessageLite.Builderclear in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
getDescriptorForType in interface com.google.protobuf.Message.BuildergetDescriptorForType in interface com.google.protobuf.MessageOrBuildergetDescriptorForType in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public Billing getDefaultInstanceForType()
getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuildergetDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilderpublic Billing build()
build in interface com.google.protobuf.Message.Builderbuild in interface com.google.protobuf.MessageLite.Builderpublic Billing buildPartial()
buildPartial in interface com.google.protobuf.Message.BuilderbuildPartial in interface com.google.protobuf.MessageLite.Builderpublic Billing.Builder clone()
clone in interface com.google.protobuf.Message.Builderclone in interface com.google.protobuf.MessageLite.Builderclone in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public Billing.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
setField in interface com.google.protobuf.Message.BuildersetField in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public Billing.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
clearField in interface com.google.protobuf.Message.BuilderclearField in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public Billing.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
clearOneof in interface com.google.protobuf.Message.BuilderclearOneof in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public Billing.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)
setRepeatedField in interface com.google.protobuf.Message.BuildersetRepeatedField in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public Billing.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)
addRepeatedField in interface com.google.protobuf.Message.BuilderaddRepeatedField in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public Billing.Builder mergeFrom(com.google.protobuf.Message other)
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<Billing.Builder>public Billing.Builder mergeFrom(Billing other)
public final boolean isInitialized()
isInitialized in interface com.google.protobuf.MessageLiteOrBuilderisInitialized in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public Billing.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in interface com.google.protobuf.MessageLite.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<Billing.Builder>java.io.IOExceptionpublic com.google.protobuf.ProtocolStringList getMetricsList()
Names of the metrics to report to billing. Each name must be defined in [Service.metrics][google.api.Service.metrics] section.
repeated string metrics = 1;getMetricsList in interface BillingOrBuilderpublic int getMetricsCount()
Names of the metrics to report to billing. Each name must be defined in [Service.metrics][google.api.Service.metrics] section.
repeated string metrics = 1;getMetricsCount in interface BillingOrBuilderpublic java.lang.String getMetrics(int index)
Names of the metrics to report to billing. Each name must be defined in [Service.metrics][google.api.Service.metrics] section.
repeated string metrics = 1;getMetrics in interface BillingOrBuilderpublic com.google.protobuf.ByteString getMetricsBytes(int index)
Names of the metrics to report to billing. Each name must be defined in [Service.metrics][google.api.Service.metrics] section.
repeated string metrics = 1;getMetricsBytes in interface BillingOrBuilderpublic Billing.Builder setMetrics(int index, java.lang.String value)
Names of the metrics to report to billing. Each name must be defined in [Service.metrics][google.api.Service.metrics] section.
repeated string metrics = 1;public Billing.Builder addMetrics(java.lang.String value)
Names of the metrics to report to billing. Each name must be defined in [Service.metrics][google.api.Service.metrics] section.
repeated string metrics = 1;public Billing.Builder addAllMetrics(java.lang.Iterable<java.lang.String> values)
Names of the metrics to report to billing. Each name must be defined in [Service.metrics][google.api.Service.metrics] section.
repeated string metrics = 1;public Billing.Builder clearMetrics()
Names of the metrics to report to billing. Each name must be defined in [Service.metrics][google.api.Service.metrics] section.
repeated string metrics = 1;public Billing.Builder addMetricsBytes(com.google.protobuf.ByteString value)
Names of the metrics to report to billing. Each name must be defined in [Service.metrics][google.api.Service.metrics] section.
repeated string metrics = 1;public java.util.List<BillingStatusRule> getRulesList()
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;getRulesList in interface BillingOrBuilderpublic int getRulesCount()
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;getRulesCount in interface BillingOrBuilderpublic BillingStatusRule getRules(int index)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;getRules in interface BillingOrBuilderpublic Billing.Builder setRules(int index, BillingStatusRule value)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public Billing.Builder setRules(int index, BillingStatusRule.Builder builderForValue)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public Billing.Builder addRules(BillingStatusRule value)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public Billing.Builder addRules(int index, BillingStatusRule value)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public Billing.Builder addRules(BillingStatusRule.Builder builderForValue)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public Billing.Builder addRules(int index, BillingStatusRule.Builder builderForValue)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public Billing.Builder addAllRules(java.lang.Iterable<? extends BillingStatusRule> values)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public Billing.Builder clearRules()
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public Billing.Builder removeRules(int index)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public BillingStatusRule.Builder getRulesBuilder(int index)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public BillingStatusRuleOrBuilder getRulesOrBuilder(int index)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;getRulesOrBuilder in interface BillingOrBuilderpublic java.util.List<? extends BillingStatusRuleOrBuilder> getRulesOrBuilderList()
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;getRulesOrBuilderList in interface BillingOrBuilderpublic BillingStatusRule.Builder addRulesBuilder()
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public BillingStatusRule.Builder addRulesBuilder(int index)
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public java.util.List<BillingStatusRule.Builder> getRulesBuilderList()
A list of billing status rules for configuring billing status check.
repeated .google.api.BillingStatusRule rules = 5;public final Billing.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
setUnknownFields in interface com.google.protobuf.Message.BuildersetUnknownFields in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>public final Billing.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
mergeUnknownFields in interface com.google.protobuf.Message.BuildermergeUnknownFields in class com.google.protobuf.GeneratedMessage.Builder<Billing.Builder>