public static final class AllUpdatesRule.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder> implements AllUpdatesRuleOrBuilder
AllUpdatesRule defines notifications that are sent based on budget spend and thresholds.Protobuf type
google.cloud.billing.budgets.v1beta1.AllUpdatesRulegetAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setUnknownFieldSetBuilder, setUnknownFieldsProto3findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringaddAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, newUninitializedMessageExceptionequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitpublic static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>public AllUpdatesRule.Builder clear()
clear in interface com.google.protobuf.Message.Builderclear in interface com.google.protobuf.MessageLite.Builderclear in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.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.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>public AllUpdatesRule getDefaultInstanceForType()
getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuildergetDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilderpublic AllUpdatesRule build()
build in interface com.google.protobuf.Message.Builderbuild in interface com.google.protobuf.MessageLite.Builderpublic AllUpdatesRule buildPartial()
buildPartial in interface com.google.protobuf.Message.BuilderbuildPartial in interface com.google.protobuf.MessageLite.Builderpublic AllUpdatesRule.Builder clone()
clone in interface com.google.protobuf.Message.Builderclone in interface com.google.protobuf.MessageLite.Builderclone in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>public AllUpdatesRule.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
setField in interface com.google.protobuf.Message.BuildersetField in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>public AllUpdatesRule.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
clearField in interface com.google.protobuf.Message.BuilderclearField in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>public AllUpdatesRule.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
clearOneof in interface com.google.protobuf.Message.BuilderclearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>public AllUpdatesRule.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
setRepeatedField in interface com.google.protobuf.Message.BuildersetRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>public AllUpdatesRule.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
addRepeatedField in interface com.google.protobuf.Message.BuilderaddRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>public AllUpdatesRule.Builder mergeFrom(com.google.protobuf.Message other)
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<AllUpdatesRule.Builder>public AllUpdatesRule.Builder mergeFrom(AllUpdatesRule other)
public final boolean isInitialized()
isInitialized in interface com.google.protobuf.MessageLiteOrBuilderisInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>public AllUpdatesRule.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in interface com.google.protobuf.MessageLite.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<AllUpdatesRule.Builder>IOExceptionpublic String getPubsubTopic()
Optional. The name of the Pub/Sub topic where budget related messages will
be published, in the form `projects/{project_id}/topics/{topic_id}`.
Updates are sent at regular intervals to the topic. The topic needs to be
created before the budget is created; see
https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications
for more details.
Caller is expected to have
`pubsub.topics.setIamPolicy` permission on the topic when it's set for a
budget, otherwise, the API call will fail with PERMISSION_DENIED. See
https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#permissions_required_for_this_task
for more details on Pub/Sub roles and permissions.
string pubsub_topic = 1 [(.google.api.field_behavior) = OPTIONAL];getPubsubTopic in interface AllUpdatesRuleOrBuilderpublic com.google.protobuf.ByteString getPubsubTopicBytes()
Optional. The name of the Pub/Sub topic where budget related messages will
be published, in the form `projects/{project_id}/topics/{topic_id}`.
Updates are sent at regular intervals to the topic. The topic needs to be
created before the budget is created; see
https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications
for more details.
Caller is expected to have
`pubsub.topics.setIamPolicy` permission on the topic when it's set for a
budget, otherwise, the API call will fail with PERMISSION_DENIED. See
https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#permissions_required_for_this_task
for more details on Pub/Sub roles and permissions.
string pubsub_topic = 1 [(.google.api.field_behavior) = OPTIONAL];getPubsubTopicBytes in interface AllUpdatesRuleOrBuilderpublic AllUpdatesRule.Builder setPubsubTopic(String value)
Optional. The name of the Pub/Sub topic where budget related messages will
be published, in the form `projects/{project_id}/topics/{topic_id}`.
Updates are sent at regular intervals to the topic. The topic needs to be
created before the budget is created; see
https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications
for more details.
Caller is expected to have
`pubsub.topics.setIamPolicy` permission on the topic when it's set for a
budget, otherwise, the API call will fail with PERMISSION_DENIED. See
https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#permissions_required_for_this_task
for more details on Pub/Sub roles and permissions.
string pubsub_topic = 1 [(.google.api.field_behavior) = OPTIONAL];value - The pubsubTopic to set.public AllUpdatesRule.Builder clearPubsubTopic()
Optional. The name of the Pub/Sub topic where budget related messages will
be published, in the form `projects/{project_id}/topics/{topic_id}`.
Updates are sent at regular intervals to the topic. The topic needs to be
created before the budget is created; see
https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications
for more details.
Caller is expected to have
`pubsub.topics.setIamPolicy` permission on the topic when it's set for a
budget, otherwise, the API call will fail with PERMISSION_DENIED. See
https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#permissions_required_for_this_task
for more details on Pub/Sub roles and permissions.
string pubsub_topic = 1 [(.google.api.field_behavior) = OPTIONAL];public AllUpdatesRule.Builder setPubsubTopicBytes(com.google.protobuf.ByteString value)
Optional. The name of the Pub/Sub topic where budget related messages will
be published, in the form `projects/{project_id}/topics/{topic_id}`.
Updates are sent at regular intervals to the topic. The topic needs to be
created before the budget is created; see
https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications
for more details.
Caller is expected to have
`pubsub.topics.setIamPolicy` permission on the topic when it's set for a
budget, otherwise, the API call will fail with PERMISSION_DENIED. See
https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#permissions_required_for_this_task
for more details on Pub/Sub roles and permissions.
string pubsub_topic = 1 [(.google.api.field_behavior) = OPTIONAL];value - The bytes for pubsubTopic to set.public String getSchemaVersion()
Optional. Required when [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic] is set. The schema version of the notification sent to [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic]. Only "1.0" is accepted. It represents the JSON schema as defined in https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format.
string schema_version = 2 [(.google.api.field_behavior) = OPTIONAL];getSchemaVersion in interface AllUpdatesRuleOrBuilderpublic com.google.protobuf.ByteString getSchemaVersionBytes()
Optional. Required when [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic] is set. The schema version of the notification sent to [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic]. Only "1.0" is accepted. It represents the JSON schema as defined in https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format.
string schema_version = 2 [(.google.api.field_behavior) = OPTIONAL];getSchemaVersionBytes in interface AllUpdatesRuleOrBuilderpublic AllUpdatesRule.Builder setSchemaVersion(String value)
Optional. Required when [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic] is set. The schema version of the notification sent to [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic]. Only "1.0" is accepted. It represents the JSON schema as defined in https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format.
string schema_version = 2 [(.google.api.field_behavior) = OPTIONAL];value - The schemaVersion to set.public AllUpdatesRule.Builder clearSchemaVersion()
Optional. Required when [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic] is set. The schema version of the notification sent to [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic]. Only "1.0" is accepted. It represents the JSON schema as defined in https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format.
string schema_version = 2 [(.google.api.field_behavior) = OPTIONAL];public AllUpdatesRule.Builder setSchemaVersionBytes(com.google.protobuf.ByteString value)
Optional. Required when [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic] is set. The schema version of the notification sent to [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic]. Only "1.0" is accepted. It represents the JSON schema as defined in https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format.
string schema_version = 2 [(.google.api.field_behavior) = OPTIONAL];value - The bytes for schemaVersion to set.public com.google.protobuf.ProtocolStringList getMonitoringNotificationChannelsList()
Optional. Targets to send notifications to when a threshold is exceeded.
This is in addition to default recipients who have billing account IAM
roles. The value is the full REST resource name of a monitoring
notification channel with the form
`projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5
channels are allowed. See
https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients
for more details.
repeated string monitoring_notification_channels = 3 [(.google.api.field_behavior) = OPTIONAL];
getMonitoringNotificationChannelsList in interface AllUpdatesRuleOrBuilderpublic int getMonitoringNotificationChannelsCount()
Optional. Targets to send notifications to when a threshold is exceeded.
This is in addition to default recipients who have billing account IAM
roles. The value is the full REST resource name of a monitoring
notification channel with the form
`projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5
channels are allowed. See
https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients
for more details.
repeated string monitoring_notification_channels = 3 [(.google.api.field_behavior) = OPTIONAL];
getMonitoringNotificationChannelsCount in interface AllUpdatesRuleOrBuilderpublic String getMonitoringNotificationChannels(int index)
Optional. Targets to send notifications to when a threshold is exceeded.
This is in addition to default recipients who have billing account IAM
roles. The value is the full REST resource name of a monitoring
notification channel with the form
`projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5
channels are allowed. See
https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients
for more details.
repeated string monitoring_notification_channels = 3 [(.google.api.field_behavior) = OPTIONAL];
getMonitoringNotificationChannels in interface AllUpdatesRuleOrBuilderindex - The index of the element to return.public com.google.protobuf.ByteString getMonitoringNotificationChannelsBytes(int index)
Optional. Targets to send notifications to when a threshold is exceeded.
This is in addition to default recipients who have billing account IAM
roles. The value is the full REST resource name of a monitoring
notification channel with the form
`projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5
channels are allowed. See
https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients
for more details.
repeated string monitoring_notification_channels = 3 [(.google.api.field_behavior) = OPTIONAL];
getMonitoringNotificationChannelsBytes in interface AllUpdatesRuleOrBuilderindex - The index of the value to return.public AllUpdatesRule.Builder setMonitoringNotificationChannels(int index, String value)
Optional. Targets to send notifications to when a threshold is exceeded.
This is in addition to default recipients who have billing account IAM
roles. The value is the full REST resource name of a monitoring
notification channel with the form
`projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5
channels are allowed. See
https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients
for more details.
repeated string monitoring_notification_channels = 3 [(.google.api.field_behavior) = OPTIONAL];
index - The index to set the value at.value - The monitoringNotificationChannels to set.public AllUpdatesRule.Builder addMonitoringNotificationChannels(String value)
Optional. Targets to send notifications to when a threshold is exceeded.
This is in addition to default recipients who have billing account IAM
roles. The value is the full REST resource name of a monitoring
notification channel with the form
`projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5
channels are allowed. See
https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients
for more details.
repeated string monitoring_notification_channels = 3 [(.google.api.field_behavior) = OPTIONAL];
value - The monitoringNotificationChannels to add.public AllUpdatesRule.Builder addAllMonitoringNotificationChannels(Iterable<String> values)
Optional. Targets to send notifications to when a threshold is exceeded.
This is in addition to default recipients who have billing account IAM
roles. The value is the full REST resource name of a monitoring
notification channel with the form
`projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5
channels are allowed. See
https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients
for more details.
repeated string monitoring_notification_channels = 3 [(.google.api.field_behavior) = OPTIONAL];
values - The monitoringNotificationChannels to add.public AllUpdatesRule.Builder clearMonitoringNotificationChannels()
Optional. Targets to send notifications to when a threshold is exceeded.
This is in addition to default recipients who have billing account IAM
roles. The value is the full REST resource name of a monitoring
notification channel with the form
`projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5
channels are allowed. See
https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients
for more details.
repeated string monitoring_notification_channels = 3 [(.google.api.field_behavior) = OPTIONAL];
public AllUpdatesRule.Builder addMonitoringNotificationChannelsBytes(com.google.protobuf.ByteString value)
Optional. Targets to send notifications to when a threshold is exceeded.
This is in addition to default recipients who have billing account IAM
roles. The value is the full REST resource name of a monitoring
notification channel with the form
`projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5
channels are allowed. See
https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients
for more details.
repeated string monitoring_notification_channels = 3 [(.google.api.field_behavior) = OPTIONAL];
value - The bytes of the monitoringNotificationChannels to add.public boolean getDisableDefaultIamRecipients()
Optional. When set to true, disables default notifications sent when a threshold is exceeded. Default notifications are sent to those with Billing Account Administrator and Billing Account User IAM roles for the target account.
bool disable_default_iam_recipients = 4 [(.google.api.field_behavior) = OPTIONAL];
getDisableDefaultIamRecipients in interface AllUpdatesRuleOrBuilderpublic AllUpdatesRule.Builder setDisableDefaultIamRecipients(boolean value)
Optional. When set to true, disables default notifications sent when a threshold is exceeded. Default notifications are sent to those with Billing Account Administrator and Billing Account User IAM roles for the target account.
bool disable_default_iam_recipients = 4 [(.google.api.field_behavior) = OPTIONAL];
value - The disableDefaultIamRecipients to set.public AllUpdatesRule.Builder clearDisableDefaultIamRecipients()
Optional. When set to true, disables default notifications sent when a threshold is exceeded. Default notifications are sent to those with Billing Account Administrator and Billing Account User IAM roles for the target account.
bool disable_default_iam_recipients = 4 [(.google.api.field_behavior) = OPTIONAL];
public boolean getEnableProjectLevelRecipients()
Optional. When set to true, and when the budget has a single project configured, notifications will be sent to project level recipients of that project. This field will be ignored if the budget has multiple or no project configured. Currently, project level recipients are the users with `Owner` role on a cloud project.
bool enable_project_level_recipients = 5 [(.google.api.field_behavior) = OPTIONAL];
getEnableProjectLevelRecipients in interface AllUpdatesRuleOrBuilderpublic AllUpdatesRule.Builder setEnableProjectLevelRecipients(boolean value)
Optional. When set to true, and when the budget has a single project configured, notifications will be sent to project level recipients of that project. This field will be ignored if the budget has multiple or no project configured. Currently, project level recipients are the users with `Owner` role on a cloud project.
bool enable_project_level_recipients = 5 [(.google.api.field_behavior) = OPTIONAL];
value - The enableProjectLevelRecipients to set.public AllUpdatesRule.Builder clearEnableProjectLevelRecipients()
Optional. When set to true, and when the budget has a single project configured, notifications will be sent to project level recipients of that project. This field will be ignored if the budget has multiple or no project configured. Currently, project level recipients are the users with `Owner` role on a cloud project.
bool enable_project_level_recipients = 5 [(.google.api.field_behavior) = OPTIONAL];
public final AllUpdatesRule.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
setUnknownFields in interface com.google.protobuf.Message.BuildersetUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>public final AllUpdatesRule.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
mergeUnknownFields in interface com.google.protobuf.Message.BuildermergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<AllUpdatesRule.Builder>Copyright © 2024 Google LLC. All rights reserved.