Class PricingExpression.Builder (2.35.0)

public static final class PricingExpression.Builder extends GeneratedMessageV3.Builder<PricingExpression.Builder> implements PricingExpressionOrBuilder

Expresses a mathematical pricing formula. For Example:-

usage_unit: GBy tiered_rates: [start_usage_amount: 20, unit_price: $10] [start_usage_amount: 100, unit_price: $5]

The above expresses a pricing formula where the first 20GB is free, the next 80GB is priced at $10 per GB followed by $5 per GB for additional usage.

Protobuf type google.cloud.billing.v1.PricingExpression

Static Methods

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
TypeDescription
Descriptor

Methods

addAllTieredRates(Iterable<? extends PricingExpression.TierRate> values)

public PricingExpression.Builder addAllTieredRates(Iterable<? extends PricingExpression.TierRate> values)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameter
NameDescription
valuesIterable<? extends com.google.cloud.billing.v1.PricingExpression.TierRate>
Returns
TypeDescription
PricingExpression.Builder

addRepeatedField(Descriptors.FieldDescriptor field, Object value)

public PricingExpression.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
PricingExpression.Builder
Overrides

addTieredRates(PricingExpression.TierRate value)

public PricingExpression.Builder addTieredRates(PricingExpression.TierRate value)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameter
NameDescription
valuePricingExpression.TierRate
Returns
TypeDescription
PricingExpression.Builder

addTieredRates(PricingExpression.TierRate.Builder builderForValue)

public PricingExpression.Builder addTieredRates(PricingExpression.TierRate.Builder builderForValue)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameter
NameDescription
builderForValuePricingExpression.TierRate.Builder
Returns
TypeDescription
PricingExpression.Builder

addTieredRates(int index, PricingExpression.TierRate value)

public PricingExpression.Builder addTieredRates(int index, PricingExpression.TierRate value)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameters
NameDescription
indexint
valuePricingExpression.TierRate
Returns
TypeDescription
PricingExpression.Builder

addTieredRates(int index, PricingExpression.TierRate.Builder builderForValue)

public PricingExpression.Builder addTieredRates(int index, PricingExpression.TierRate.Builder builderForValue)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameters
NameDescription
indexint
builderForValuePricingExpression.TierRate.Builder
Returns
TypeDescription
PricingExpression.Builder

addTieredRatesBuilder()

public PricingExpression.TierRate.Builder addTieredRatesBuilder()

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Returns
TypeDescription
PricingExpression.TierRate.Builder

addTieredRatesBuilder(int index)

public PricingExpression.TierRate.Builder addTieredRatesBuilder(int index)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameter
NameDescription
indexint
Returns
TypeDescription
PricingExpression.TierRate.Builder

build()

public PricingExpression build()
Returns
TypeDescription
PricingExpression

buildPartial()

public PricingExpression buildPartial()
Returns
TypeDescription
PricingExpression

clear()

public PricingExpression.Builder clear()
Returns
TypeDescription
PricingExpression.Builder
Overrides

clearBaseUnit()

public PricingExpression.Builder clearBaseUnit()

The base unit for the SKU which is the unit used in usage exports. Example: "By"

string base_unit = 5;

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

clearBaseUnitConversionFactor()

public PricingExpression.Builder clearBaseUnitConversionFactor()

Conversion factor for converting from price per usage_unit to price per base_unit, and start_usage_amount to start_usage_amount in base_unit. unit_price / base_unit_conversion_factor = price per base_unit. start_usage_amount * base_unit_conversion_factor = start_usage_amount in base_unit.

double base_unit_conversion_factor = 7;

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

clearBaseUnitDescription()

public PricingExpression.Builder clearBaseUnitDescription()

The base unit in human readable form. Example: "byte".

string base_unit_description = 6;

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

clearDisplayQuantity()

public PricingExpression.Builder clearDisplayQuantity()

The recommended quantity of units for displaying pricing info. When displaying pricing info it is recommended to display: (unit_price * display_quantity) per display_quantity usage_unit. This field does not affect the pricing formula and is for display purposes only. Example: If the unit_price is "0.0001 USD", the usage_unit is "GB" and the display_quantity is "1000" then the recommended way of displaying the pricing info is "0.10 USD per 1000 GB"

double display_quantity = 2;

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

clearField(Descriptors.FieldDescriptor field)

public PricingExpression.Builder clearField(Descriptors.FieldDescriptor field)
Parameter
NameDescription
fieldFieldDescriptor
Returns
TypeDescription
PricingExpression.Builder
Overrides

clearOneof(Descriptors.OneofDescriptor oneof)

public PricingExpression.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Parameter
NameDescription
oneofOneofDescriptor
Returns
TypeDescription
PricingExpression.Builder
Overrides

clearTieredRates()

public PricingExpression.Builder clearTieredRates()

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Returns
TypeDescription
PricingExpression.Builder

clearUsageUnit()

public PricingExpression.Builder clearUsageUnit()

The short hand for unit of usage this pricing is specified in. Example: usage_unit of "GiBy" means that usage is specified in "Gibi Byte".

string usage_unit = 1;

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

clearUsageUnitDescription()

public PricingExpression.Builder clearUsageUnitDescription()

The unit of usage in human readable form. Example: "gibi byte".

string usage_unit_description = 4;

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

clone()

public PricingExpression.Builder clone()
Returns
TypeDescription
PricingExpression.Builder
Overrides

getBaseUnit()

public String getBaseUnit()

The base unit for the SKU which is the unit used in usage exports. Example: "By"

string base_unit = 5;

Returns
TypeDescription
String

The baseUnit.

getBaseUnitBytes()

public ByteString getBaseUnitBytes()

The base unit for the SKU which is the unit used in usage exports. Example: "By"

string base_unit = 5;

Returns
TypeDescription
ByteString

The bytes for baseUnit.

getBaseUnitConversionFactor()

public double getBaseUnitConversionFactor()

Conversion factor for converting from price per usage_unit to price per base_unit, and start_usage_amount to start_usage_amount in base_unit. unit_price / base_unit_conversion_factor = price per base_unit. start_usage_amount * base_unit_conversion_factor = start_usage_amount in base_unit.

double base_unit_conversion_factor = 7;

Returns
TypeDescription
double

The baseUnitConversionFactor.

getBaseUnitDescription()

public String getBaseUnitDescription()

The base unit in human readable form. Example: "byte".

string base_unit_description = 6;

Returns
TypeDescription
String

The baseUnitDescription.

getBaseUnitDescriptionBytes()

public ByteString getBaseUnitDescriptionBytes()

The base unit in human readable form. Example: "byte".

string base_unit_description = 6;

Returns
TypeDescription
ByteString

The bytes for baseUnitDescription.

getDefaultInstanceForType()

public PricingExpression getDefaultInstanceForType()
Returns
TypeDescription
PricingExpression

getDescriptorForType()

public Descriptors.Descriptor getDescriptorForType()
Returns
TypeDescription
Descriptor
Overrides

getDisplayQuantity()

public double getDisplayQuantity()

The recommended quantity of units for displaying pricing info. When displaying pricing info it is recommended to display: (unit_price * display_quantity) per display_quantity usage_unit. This field does not affect the pricing formula and is for display purposes only. Example: If the unit_price is "0.0001 USD", the usage_unit is "GB" and the display_quantity is "1000" then the recommended way of displaying the pricing info is "0.10 USD per 1000 GB"

double display_quantity = 2;

Returns
TypeDescription
double

The displayQuantity.

getTieredRates(int index)

public PricingExpression.TierRate getTieredRates(int index)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameter
NameDescription
indexint
Returns
TypeDescription
PricingExpression.TierRate

getTieredRatesBuilder(int index)

public PricingExpression.TierRate.Builder getTieredRatesBuilder(int index)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameter
NameDescription
indexint
Returns
TypeDescription
PricingExpression.TierRate.Builder

getTieredRatesBuilderList()

public List<PricingExpression.TierRate.Builder> getTieredRatesBuilderList()

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Returns
TypeDescription
List<Builder>

getTieredRatesCount()

public int getTieredRatesCount()

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Returns
TypeDescription
int

getTieredRatesList()

public List<PricingExpression.TierRate> getTieredRatesList()

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Returns
TypeDescription
List<TierRate>

getTieredRatesOrBuilder(int index)

public PricingExpression.TierRateOrBuilder getTieredRatesOrBuilder(int index)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameter
NameDescription
indexint
Returns
TypeDescription
PricingExpression.TierRateOrBuilder

getTieredRatesOrBuilderList()

public List<? extends PricingExpression.TierRateOrBuilder> getTieredRatesOrBuilderList()

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Returns
TypeDescription
List<? extends com.google.cloud.billing.v1.PricingExpression.TierRateOrBuilder>

getUsageUnit()

public String getUsageUnit()

The short hand for unit of usage this pricing is specified in. Example: usage_unit of "GiBy" means that usage is specified in "Gibi Byte".

string usage_unit = 1;

Returns
TypeDescription
String

The usageUnit.

getUsageUnitBytes()

public ByteString getUsageUnitBytes()

The short hand for unit of usage this pricing is specified in. Example: usage_unit of "GiBy" means that usage is specified in "Gibi Byte".

string usage_unit = 1;

Returns
TypeDescription
ByteString

The bytes for usageUnit.

getUsageUnitDescription()

public String getUsageUnitDescription()

The unit of usage in human readable form. Example: "gibi byte".

string usage_unit_description = 4;

Returns
TypeDescription
String

The usageUnitDescription.

getUsageUnitDescriptionBytes()

public ByteString getUsageUnitDescriptionBytes()

The unit of usage in human readable form. Example: "gibi byte".

string usage_unit_description = 4;

Returns
TypeDescription
ByteString

The bytes for usageUnitDescription.

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
TypeDescription
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
TypeDescription
boolean
Overrides

mergeFrom(PricingExpression other)

public PricingExpression.Builder mergeFrom(PricingExpression other)
Parameter
NameDescription
otherPricingExpression
Returns
TypeDescription
PricingExpression.Builder

mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public PricingExpression.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputCodedInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
PricingExpression.Builder
Overrides
Exceptions
TypeDescription
IOException

mergeFrom(Message other)

public PricingExpression.Builder mergeFrom(Message other)
Parameter
NameDescription
otherMessage
Returns
TypeDescription
PricingExpression.Builder
Overrides

mergeUnknownFields(UnknownFieldSet unknownFields)

public final PricingExpression.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
PricingExpression.Builder
Overrides

removeTieredRates(int index)

public PricingExpression.Builder removeTieredRates(int index)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameter
NameDescription
indexint
Returns
TypeDescription
PricingExpression.Builder

setBaseUnit(String value)

public PricingExpression.Builder setBaseUnit(String value)

The base unit for the SKU which is the unit used in usage exports. Example: "By"

string base_unit = 5;

Parameter
NameDescription
valueString

The baseUnit to set.

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

setBaseUnitBytes(ByteString value)

public PricingExpression.Builder setBaseUnitBytes(ByteString value)

The base unit for the SKU which is the unit used in usage exports. Example: "By"

string base_unit = 5;

Parameter
NameDescription
valueByteString

The bytes for baseUnit to set.

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

setBaseUnitConversionFactor(double value)

public PricingExpression.Builder setBaseUnitConversionFactor(double value)

Conversion factor for converting from price per usage_unit to price per base_unit, and start_usage_amount to start_usage_amount in base_unit. unit_price / base_unit_conversion_factor = price per base_unit. start_usage_amount * base_unit_conversion_factor = start_usage_amount in base_unit.

double base_unit_conversion_factor = 7;

Parameter
NameDescription
valuedouble

The baseUnitConversionFactor to set.

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

setBaseUnitDescription(String value)

public PricingExpression.Builder setBaseUnitDescription(String value)

The base unit in human readable form. Example: "byte".

string base_unit_description = 6;

Parameter
NameDescription
valueString

The baseUnitDescription to set.

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

setBaseUnitDescriptionBytes(ByteString value)

public PricingExpression.Builder setBaseUnitDescriptionBytes(ByteString value)

The base unit in human readable form. Example: "byte".

string base_unit_description = 6;

Parameter
NameDescription
valueByteString

The bytes for baseUnitDescription to set.

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

setDisplayQuantity(double value)

public PricingExpression.Builder setDisplayQuantity(double value)

The recommended quantity of units for displaying pricing info. When displaying pricing info it is recommended to display: (unit_price * display_quantity) per display_quantity usage_unit. This field does not affect the pricing formula and is for display purposes only. Example: If the unit_price is "0.0001 USD", the usage_unit is "GB" and the display_quantity is "1000" then the recommended way of displaying the pricing info is "0.10 USD per 1000 GB"

double display_quantity = 2;

Parameter
NameDescription
valuedouble

The displayQuantity to set.

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

setField(Descriptors.FieldDescriptor field, Object value)

public PricingExpression.Builder setField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
PricingExpression.Builder
Overrides

setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)

public PricingExpression.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
Parameters
NameDescription
fieldFieldDescriptor
indexint
valueObject
Returns
TypeDescription
PricingExpression.Builder
Overrides

setTieredRates(int index, PricingExpression.TierRate value)

public PricingExpression.Builder setTieredRates(int index, PricingExpression.TierRate value)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameters
NameDescription
indexint
valuePricingExpression.TierRate
Returns
TypeDescription
PricingExpression.Builder

setTieredRates(int index, PricingExpression.TierRate.Builder builderForValue)

public PricingExpression.Builder setTieredRates(int index, PricingExpression.TierRate.Builder builderForValue)

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

repeated .google.cloud.billing.v1.PricingExpression.TierRate tiered_rates = 3;

Parameters
NameDescription
indexint
builderForValuePricingExpression.TierRate.Builder
Returns
TypeDescription
PricingExpression.Builder

setUnknownFields(UnknownFieldSet unknownFields)

public final PricingExpression.Builder setUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
PricingExpression.Builder
Overrides

setUsageUnit(String value)

public PricingExpression.Builder setUsageUnit(String value)

The short hand for unit of usage this pricing is specified in. Example: usage_unit of "GiBy" means that usage is specified in "Gibi Byte".

string usage_unit = 1;

Parameter
NameDescription
valueString

The usageUnit to set.

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

setUsageUnitBytes(ByteString value)

public PricingExpression.Builder setUsageUnitBytes(ByteString value)

The short hand for unit of usage this pricing is specified in. Example: usage_unit of "GiBy" means that usage is specified in "Gibi Byte".

string usage_unit = 1;

Parameter
NameDescription
valueByteString

The bytes for usageUnit to set.

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

setUsageUnitDescription(String value)

public PricingExpression.Builder setUsageUnitDescription(String value)

The unit of usage in human readable form. Example: "gibi byte".

string usage_unit_description = 4;

Parameter
NameDescription
valueString

The usageUnitDescription to set.

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.

setUsageUnitDescriptionBytes(ByteString value)

public PricingExpression.Builder setUsageUnitDescriptionBytes(ByteString value)

The unit of usage in human readable form. Example: "gibi byte".

string usage_unit_description = 4;

Parameter
NameDescription
valueByteString

The bytes for usageUnitDescription to set.

Returns
TypeDescription
PricingExpression.Builder

This builder for chaining.