Class PrivateOffer.SingleProductOffer (0.1.0)

public static final class PrivateOffer.SingleProductOffer extends GeneratedMessage implements PrivateOffer.SingleProductOfferOrBuilder

Configurations for the offer that is associated with a single product.

Protobuf type google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer

Inheritance

Object > AbstractMessageLite<MessageType,BuilderType> > AbstractMessage > GeneratedMessage > PrivateOffer.SingleProductOffer

Static Fields

AMENDED_PRIVATE_OFFER_FIELD_NUMBER

public static final int AMENDED_PRIVATE_OFFER_FIELD_NUMBER
Field Value
Type Description
int

AMENDED_STANDARD_OFFER_FIELD_NUMBER

public static final int AMENDED_STANDARD_OFFER_FIELD_NUMBER
Field Value
Type Description
int

BASE_STANDARD_OFFER_FIELD_NUMBER

public static final int BASE_STANDARD_OFFER_FIELD_NUMBER
Field Value
Type Description
int

CONTRACT_VALUE_FIELD_NUMBER

public static final int CONTRACT_VALUE_FIELD_NUMBER
Field Value
Type Description
int

CUSTOM_INTERVAL_PRICE_FIELD_NUMBER

public static final int CUSTOM_INTERVAL_PRICE_FIELD_NUMBER
Field Value
Type Description
int

EFFECTIVE_INSTALLMENT_TIMELINE_FIELD_NUMBER

public static final int EFFECTIVE_INSTALLMENT_TIMELINE_FIELD_NUMBER
Field Value
Type Description
int

FEATURES_FIELD_NUMBER

public static final int FEATURES_FIELD_NUMBER
Field Value
Type Description
int

RESELLER_PRIVATE_OFFER_PLAN_ID_FIELD_NUMBER

public static final int RESELLER_PRIVATE_OFFER_PLAN_ID_FIELD_NUMBER
Field Value
Type Description
int

REVENUE_SHARE_FIELD_NUMBER

public static final int REVENUE_SHARE_FIELD_NUMBER
Field Value
Type Description
int

SERVICE_LEVEL_FIELD_NUMBER

public static final int SERVICE_LEVEL_FIELD_NUMBER
Field Value
Type Description
int

STANDARD_INTERVAL_PRICE_FIELD_NUMBER

public static final int STANDARD_INTERVAL_PRICE_FIELD_NUMBER
Field Value
Type Description
int

Static Methods

getDefaultInstance()

public static PrivateOffer.SingleProductOffer getDefaultInstance()
Returns
Type Description
PrivateOffer.SingleProductOffer

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
Type Description
Descriptor

newBuilder()

public static PrivateOffer.SingleProductOffer.Builder newBuilder()
Returns
Type Description
PrivateOffer.SingleProductOffer.Builder

newBuilder(PrivateOffer.SingleProductOffer prototype)

public static PrivateOffer.SingleProductOffer.Builder newBuilder(PrivateOffer.SingleProductOffer prototype)
Parameter
Name Description
prototype PrivateOffer.SingleProductOffer
Returns
Type Description
PrivateOffer.SingleProductOffer.Builder

parseDelimitedFrom(InputStream input)

public static PrivateOffer.SingleProductOffer parseDelimitedFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static PrivateOffer.SingleProductOffer parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
IOException

parseFrom(byte[] data)

public static PrivateOffer.SingleProductOffer parseFrom(byte[] data)
Parameter
Name Description
data byte[]
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static PrivateOffer.SingleProductOffer parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data byte[]
extensionRegistry ExtensionRegistryLite
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data)

public static PrivateOffer.SingleProductOffer parseFrom(ByteString data)
Parameter
Name Description
data ByteString
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static PrivateOffer.SingleProductOffer parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteString
extensionRegistry ExtensionRegistryLite
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static PrivateOffer.SingleProductOffer parseFrom(CodedInputStream input)
Parameter
Name Description
input CodedInputStream
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static PrivateOffer.SingleProductOffer parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
IOException

parseFrom(InputStream input)

public static PrivateOffer.SingleProductOffer parseFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static PrivateOffer.SingleProductOffer parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
IOException

parseFrom(ByteBuffer data)

public static PrivateOffer.SingleProductOffer parseFrom(ByteBuffer data)
Parameter
Name Description
data ByteBuffer
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static PrivateOffer.SingleProductOffer parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteBuffer
extensionRegistry ExtensionRegistryLite
Returns
Type Description
PrivateOffer.SingleProductOffer
Exceptions
Type Description
InvalidProtocolBufferException

parser()

public static Parser<PrivateOffer.SingleProductOffer> parser()
Returns
Type Description
Parser<SingleProductOffer>

Methods

equals(Object obj)

public boolean equals(Object obj)
Parameter
Name Description
obj Object
Returns
Type Description
boolean
Overrides

getAmendedOfferCase()

public PrivateOffer.SingleProductOffer.AmendedOfferCase getAmendedOfferCase()
Returns
Type Description
PrivateOffer.SingleProductOffer.AmendedOfferCase

getAmendedPrivateOffer()

public String getAmendedPrivateOffer()

Optional. An existing private offer that will be superseded by this offer. Unless the private offer is for a product type that supports multiple active orders, an amendment private offer must be transacted if and only if the destination customer billing account already contains an active order for the same product. The offer to be superseded must be the offer associated with an active order.

Amendments generally fall into one of two scenarios:

  1. Active Order / Ended Offer: The term of the amended offer has ended but it is still associated with an active order. The new offer must amend the ended private offer.
  2. Active Order / Active Offer: The term of the amended offer is still active and the associated order is active. Similar to above, the new offer must amend the currently active offer (unless "multiple active orders" are supported).

    If this is set, then the base_standard_offer parent service must match the parent service of the base_standard_offer in the amended_private_offer.

    Active Term Restrictions: If the term of the amended private offer has NOT ended, then the following compatibility rules apply:

  3. Price Model Compatibility:

  4. Flat Fee (with or without usage) offers can amend Flat Fee offers.
  5. Usage-only or CUD offers can amend usage-only offers.
  6. Commitment-based offers must amend offers of the same price model subtype (e.g., "additional usage at list price" vs "all usage discounted").
  7. Billing Frequency Compatibility: Determined by standard_interval or custom_interval_price.
  8. If the amended offer has a custom billing frequency, the new offer must also have a custom frequency.
  9. If the amended offer has a standard frequency (Monthly, Quarterly, or Yearly), the new offer must maintain the same frequency or transition to a custom frequency.
  10. Switching between different standard frequencies (e.g., Monthly to Quarterly) is not supported.
  11. For Monthly frequency, switching between MONTHLY_PRORATED and MONTHLY_NOT_PRORATED is supported, unless the offer's term.end_policy is MATCH_AMENDED_OFFER.
  12. For usage-only offers, there are no billing frequency restrictions.

    Other criteria for offer amendment are detailed elsewhere.

string amended_private_offer = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... }

Returns
Type Description
String

The amendedPrivateOffer.

getAmendedPrivateOfferBytes()

public ByteString getAmendedPrivateOfferBytes()

Optional. An existing private offer that will be superseded by this offer. Unless the private offer is for a product type that supports multiple active orders, an amendment private offer must be transacted if and only if the destination customer billing account already contains an active order for the same product. The offer to be superseded must be the offer associated with an active order.

Amendments generally fall into one of two scenarios:

  1. Active Order / Ended Offer: The term of the amended offer has ended but it is still associated with an active order. The new offer must amend the ended private offer.
  2. Active Order / Active Offer: The term of the amended offer is still active and the associated order is active. Similar to above, the new offer must amend the currently active offer (unless "multiple active orders" are supported).

    If this is set, then the base_standard_offer parent service must match the parent service of the base_standard_offer in the amended_private_offer.

    Active Term Restrictions: If the term of the amended private offer has NOT ended, then the following compatibility rules apply:

  3. Price Model Compatibility:

  4. Flat Fee (with or without usage) offers can amend Flat Fee offers.
  5. Usage-only or CUD offers can amend usage-only offers.
  6. Commitment-based offers must amend offers of the same price model subtype (e.g., "additional usage at list price" vs "all usage discounted").
  7. Billing Frequency Compatibility: Determined by standard_interval or custom_interval_price.
  8. If the amended offer has a custom billing frequency, the new offer must also have a custom frequency.
  9. If the amended offer has a standard frequency (Monthly, Quarterly, or Yearly), the new offer must maintain the same frequency or transition to a custom frequency.
  10. Switching between different standard frequencies (e.g., Monthly to Quarterly) is not supported.
  11. For Monthly frequency, switching between MONTHLY_PRORATED and MONTHLY_NOT_PRORATED is supported, unless the offer's term.end_policy is MATCH_AMENDED_OFFER.
  12. For usage-only offers, there are no billing frequency restrictions.

    Other criteria for offer amendment are detailed elsewhere.

string amended_private_offer = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... }

Returns
Type Description
ByteString

The bytes for amendedPrivateOffer.

getAmendedStandardOffer()

public String getAmendedStandardOffer()

Optional. An existing standard offer that will be superseded by this offer. An amendment private offer must be transacted if the destination customer billing account already contains an active order for the same product, and otherwise cannot be transacted. The offer to be superseded must be the offer associated with the active order.

If this is set, then the base_standard_offer must contain the same parent service as the parent service of the amended_standard_offer. The price model of this offer must be compatible with the price model of the amended_standard_offer:

  • Flat Fee, or Flat Fee with usage offers can amend Flat Fee or Flat Fee with usage standard offers.
  • Usage-only offers, or CUD offers can amend usage-only standard offers.

    Other criteria for offer amendment are detailed elsewhere.

string amended_standard_offer = 4 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... }

Returns
Type Description
String

The amendedStandardOffer.

getAmendedStandardOfferBytes()

public ByteString getAmendedStandardOfferBytes()

Optional. An existing standard offer that will be superseded by this offer. An amendment private offer must be transacted if the destination customer billing account already contains an active order for the same product, and otherwise cannot be transacted. The offer to be superseded must be the offer associated with the active order.

If this is set, then the base_standard_offer must contain the same parent service as the parent service of the amended_standard_offer. The price model of this offer must be compatible with the price model of the amended_standard_offer:

  • Flat Fee, or Flat Fee with usage offers can amend Flat Fee or Flat Fee with usage standard offers.
  • Usage-only offers, or CUD offers can amend usage-only standard offers.

    Other criteria for offer amendment are detailed elsewhere.

string amended_standard_offer = 4 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... }

Returns
Type Description
ByteString

The bytes for amendedStandardOffer.

getBaseStandardOffer()

public String getBaseStandardOffer()

Optional. The StandardOffer this PrivateOffer is based on. Must be in the same project as the private offer, and must be effective at the time of publishing. Must be present to publish the offer.

Format: projects/{project}/locations/{location}/services/{service}/standardOffers/{standard_offer}

string base_standard_offer = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... }

Returns
Type Description
String

The baseStandardOffer.

getBaseStandardOfferBytes()

public ByteString getBaseStandardOfferBytes()

Optional. The StandardOffer this PrivateOffer is based on. Must be in the same project as the private offer, and must be effective at the time of publishing. Must be present to publish the offer.

Format: projects/{project}/locations/{location}/services/{service}/standardOffers/{standard_offer}

string base_standard_offer = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... }

Returns
Type Description
ByteString

The bytes for baseStandardOffer.

getContractValue()

public PrivateOffer.SingleProductOffer.ContractValue getContractValue()

Output only. Contract value of the offer. Not included for PRIVATE_OFFER_VIEW_BASIC.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.ContractValue contract_value = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
PrivateOffer.SingleProductOffer.ContractValue

The contractValue.

getContractValueOrBuilder()

public PrivateOffer.SingleProductOffer.ContractValueOrBuilder getContractValueOrBuilder()

Output only. Contract value of the offer. Not included for PRIVATE_OFFER_VIEW_BASIC.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.ContractValue contract_value = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
PrivateOffer.SingleProductOffer.ContractValueOrBuilder

getCustomIntervalPrice()

public PrivateOffer.SingleProductOffer.CustomIntervalPrice getCustomIntervalPrice()

Optional. Price configurations for offers with custom intervals. Custom interval corresponds to "custom billing frequency", see https://docs.cloud.google.com/marketplace/docs/partners/offers/select-payment-schedule. A price must be set when publishing the offer.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.CustomIntervalPrice custom_interval_price = 6 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
PrivateOffer.SingleProductOffer.CustomIntervalPrice

The customIntervalPrice.

getCustomIntervalPriceOrBuilder()

public PrivateOffer.SingleProductOffer.CustomIntervalPriceOrBuilder getCustomIntervalPriceOrBuilder()

Optional. Price configurations for offers with custom intervals. Custom interval corresponds to "custom billing frequency", see https://docs.cloud.google.com/marketplace/docs/partners/offers/select-payment-schedule. A price must be set when publishing the offer.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.CustomIntervalPrice custom_interval_price = 6 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
PrivateOffer.SingleProductOffer.CustomIntervalPriceOrBuilder

getDefaultInstanceForType()

public PrivateOffer.SingleProductOffer getDefaultInstanceForType()
Returns
Type Description
PrivateOffer.SingleProductOffer

getEffectiveInstallmentTimeline(int index)

public PrivateOffer.SingleProductOffer.Installment getEffectiveInstallmentTimeline(int index)

Output only. The effective installment timeline of the offer. Not included for PRIVATE_OFFER_VIEW_BASIC. Included for PRIVATE_OFFER_VIEW_FULL if all necessary information is available to generate the timeline, and if the offer has 'standard_interval_price' of 'MONTHLY_PRORATED', 'MONTHLY_NOT_PRORATED', 'QUARTERLY_NOT_PRORATED', or 'YEARLY_NOT_PRORATED'.

repeated .google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.Installment effective_installment_timeline = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
index int
Returns
Type Description
PrivateOffer.SingleProductOffer.Installment

getEffectiveInstallmentTimelineCount()

public int getEffectiveInstallmentTimelineCount()

Output only. The effective installment timeline of the offer. Not included for PRIVATE_OFFER_VIEW_BASIC. Included for PRIVATE_OFFER_VIEW_FULL if all necessary information is available to generate the timeline, and if the offer has 'standard_interval_price' of 'MONTHLY_PRORATED', 'MONTHLY_NOT_PRORATED', 'QUARTERLY_NOT_PRORATED', or 'YEARLY_NOT_PRORATED'.

repeated .google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.Installment effective_installment_timeline = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
int

getEffectiveInstallmentTimelineList()

public List<PrivateOffer.SingleProductOffer.Installment> getEffectiveInstallmentTimelineList()

Output only. The effective installment timeline of the offer. Not included for PRIVATE_OFFER_VIEW_BASIC. Included for PRIVATE_OFFER_VIEW_FULL if all necessary information is available to generate the timeline, and if the offer has 'standard_interval_price' of 'MONTHLY_PRORATED', 'MONTHLY_NOT_PRORATED', 'QUARTERLY_NOT_PRORATED', or 'YEARLY_NOT_PRORATED'.

repeated .google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.Installment effective_installment_timeline = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
List<Installment>

getEffectiveInstallmentTimelineOrBuilder(int index)

public PrivateOffer.SingleProductOffer.InstallmentOrBuilder getEffectiveInstallmentTimelineOrBuilder(int index)

Output only. The effective installment timeline of the offer. Not included for PRIVATE_OFFER_VIEW_BASIC. Included for PRIVATE_OFFER_VIEW_FULL if all necessary information is available to generate the timeline, and if the offer has 'standard_interval_price' of 'MONTHLY_PRORATED', 'MONTHLY_NOT_PRORATED', 'QUARTERLY_NOT_PRORATED', or 'YEARLY_NOT_PRORATED'.

repeated .google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.Installment effective_installment_timeline = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
index int
Returns
Type Description
PrivateOffer.SingleProductOffer.InstallmentOrBuilder

getEffectiveInstallmentTimelineOrBuilderList()

public List<? extends PrivateOffer.SingleProductOffer.InstallmentOrBuilder> getEffectiveInstallmentTimelineOrBuilderList()

Output only. The effective installment timeline of the offer. Not included for PRIVATE_OFFER_VIEW_BASIC. Included for PRIVATE_OFFER_VIEW_FULL if all necessary information is available to generate the timeline, and if the offer has 'standard_interval_price' of 'MONTHLY_PRORATED', 'MONTHLY_NOT_PRORATED', 'QUARTERLY_NOT_PRORATED', or 'YEARLY_NOT_PRORATED'.

repeated .google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.Installment effective_installment_timeline = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
List<? extends com.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.InstallmentOrBuilder>

getFeatures(int index)

public PrivateOffer.SingleProductOffer.Feature getFeatures(int index)

Optional. The custom product features to display for this offer. Feature display_name values must be unique to publish the offer. The set of features specified here should generally include all features included in the base service level, with optionally customized values, but is not required to match exactly and may include additional features.

repeated .google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.Feature features = 8 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
index int
Returns
Type Description
PrivateOffer.SingleProductOffer.Feature

getFeaturesCount()

public int getFeaturesCount()

Optional. The custom product features to display for this offer. Feature display_name values must be unique to publish the offer. The set of features specified here should generally include all features included in the base service level, with optionally customized values, but is not required to match exactly and may include additional features.

repeated .google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.Feature features = 8 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
int

getFeaturesList()

public List<PrivateOffer.SingleProductOffer.Feature> getFeaturesList()

Optional. The custom product features to display for this offer. Feature display_name values must be unique to publish the offer. The set of features specified here should generally include all features included in the base service level, with optionally customized values, but is not required to match exactly and may include additional features.

repeated .google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.Feature features = 8 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
List<Feature>

getFeaturesOrBuilder(int index)

public PrivateOffer.SingleProductOffer.FeatureOrBuilder getFeaturesOrBuilder(int index)

Optional. The custom product features to display for this offer. Feature display_name values must be unique to publish the offer. The set of features specified here should generally include all features included in the base service level, with optionally customized values, but is not required to match exactly and may include additional features.

repeated .google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.Feature features = 8 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
index int
Returns
Type Description
PrivateOffer.SingleProductOffer.FeatureOrBuilder

getFeaturesOrBuilderList()

public List<? extends PrivateOffer.SingleProductOffer.FeatureOrBuilder> getFeaturesOrBuilderList()

Optional. The custom product features to display for this offer. Feature display_name values must be unique to publish the offer. The set of features specified here should generally include all features included in the base service level, with optionally customized values, but is not required to match exactly and may include additional features.

repeated .google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.Feature features = 8 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
List<? extends com.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.FeatureOrBuilder>

getParserForType()

public Parser<PrivateOffer.SingleProductOffer> getParserForType()
Returns
Type Description
Parser<SingleProductOffer>
Overrides

getPriceCase()

public PrivateOffer.SingleProductOffer.PriceCase getPriceCase()
Returns
Type Description
PrivateOffer.SingleProductOffer.PriceCase

getResellerPrivateOfferPlanId()

public String getResellerPrivateOfferPlanId()

Output only. Present for offers created by a reseller from a reseller private offer plan (RPOP). When set, contains the ID of the originating RPOP. Not included for PRIVATE_OFFER_VIEW_BASIC.

string reseller_private_offer_plan_id = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
String

The resellerPrivateOfferPlanId.

getResellerPrivateOfferPlanIdBytes()

public ByteString getResellerPrivateOfferPlanIdBytes()

Output only. Present for offers created by a reseller from a reseller private offer plan (RPOP). When set, contains the ID of the originating RPOP. Not included for PRIVATE_OFFER_VIEW_BASIC.

string reseller_private_offer_plan_id = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
ByteString

The bytes for resellerPrivateOfferPlanId.

getRevenueShare()

public PrivateOffer.SingleProductOffer.RevenueShare getRevenueShare()

Output only. Revenue share information for this Private Offer. Not included for PRIVATE_OFFER_VIEW_BASIC.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.RevenueShare revenue_share = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
PrivateOffer.SingleProductOffer.RevenueShare

The revenueShare.

getRevenueShareOrBuilder()

public PrivateOffer.SingleProductOffer.RevenueShareOrBuilder getRevenueShareOrBuilder()

Output only. Revenue share information for this Private Offer. Not included for PRIVATE_OFFER_VIEW_BASIC.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.RevenueShare revenue_share = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
PrivateOffer.SingleProductOffer.RevenueShareOrBuilder

getSerializedSize()

public int getSerializedSize()
Returns
Type Description
int
Overrides

getServiceLevel()

public String getServiceLevel()

Output only. The service level (also known as the 'plan') of the base standard offer. The value is populated at publish time from the base standard offer.

string service_level = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
String

The serviceLevel.

getServiceLevelBytes()

public ByteString getServiceLevelBytes()

Output only. The service level (also known as the 'plan') of the base standard offer. The value is populated at publish time from the base standard offer.

string service_level = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
ByteString

The bytes for serviceLevel.

getStandardIntervalPrice()

public PrivateOffer.SingleProductOffer.StandardIntervalPrice getStandardIntervalPrice()

Optional. Price configurations for offers with standard intervals. A price must be set when publishing the offer.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.StandardIntervalPrice standard_interval_price = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
PrivateOffer.SingleProductOffer.StandardIntervalPrice

The standardIntervalPrice.

getStandardIntervalPriceOrBuilder()

public PrivateOffer.SingleProductOffer.StandardIntervalPriceOrBuilder getStandardIntervalPriceOrBuilder()

Optional. Price configurations for offers with standard intervals. A price must be set when publishing the offer.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.StandardIntervalPrice standard_interval_price = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
PrivateOffer.SingleProductOffer.StandardIntervalPriceOrBuilder

hasAmendedPrivateOffer()

public boolean hasAmendedPrivateOffer()

Optional. An existing private offer that will be superseded by this offer. Unless the private offer is for a product type that supports multiple active orders, an amendment private offer must be transacted if and only if the destination customer billing account already contains an active order for the same product. The offer to be superseded must be the offer associated with an active order.

Amendments generally fall into one of two scenarios:

  1. Active Order / Ended Offer: The term of the amended offer has ended but it is still associated with an active order. The new offer must amend the ended private offer.
  2. Active Order / Active Offer: The term of the amended offer is still active and the associated order is active. Similar to above, the new offer must amend the currently active offer (unless "multiple active orders" are supported).

    If this is set, then the base_standard_offer parent service must match the parent service of the base_standard_offer in the amended_private_offer.

    Active Term Restrictions: If the term of the amended private offer has NOT ended, then the following compatibility rules apply:

  3. Price Model Compatibility:

  4. Flat Fee (with or without usage) offers can amend Flat Fee offers.
  5. Usage-only or CUD offers can amend usage-only offers.
  6. Commitment-based offers must amend offers of the same price model subtype (e.g., "additional usage at list price" vs "all usage discounted").
  7. Billing Frequency Compatibility: Determined by standard_interval or custom_interval_price.
  8. If the amended offer has a custom billing frequency, the new offer must also have a custom frequency.
  9. If the amended offer has a standard frequency (Monthly, Quarterly, or Yearly), the new offer must maintain the same frequency or transition to a custom frequency.
  10. Switching between different standard frequencies (e.g., Monthly to Quarterly) is not supported.
  11. For Monthly frequency, switching between MONTHLY_PRORATED and MONTHLY_NOT_PRORATED is supported, unless the offer's term.end_policy is MATCH_AMENDED_OFFER.
  12. For usage-only offers, there are no billing frequency restrictions.

    Other criteria for offer amendment are detailed elsewhere.

string amended_private_offer = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... }

Returns
Type Description
boolean

Whether the amendedPrivateOffer field is set.

hasAmendedStandardOffer()

public boolean hasAmendedStandardOffer()

Optional. An existing standard offer that will be superseded by this offer. An amendment private offer must be transacted if the destination customer billing account already contains an active order for the same product, and otherwise cannot be transacted. The offer to be superseded must be the offer associated with the active order.

If this is set, then the base_standard_offer must contain the same parent service as the parent service of the amended_standard_offer. The price model of this offer must be compatible with the price model of the amended_standard_offer:

  • Flat Fee, or Flat Fee with usage offers can amend Flat Fee or Flat Fee with usage standard offers.
  • Usage-only offers, or CUD offers can amend usage-only standard offers.

    Other criteria for offer amendment are detailed elsewhere.

string amended_standard_offer = 4 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... }

Returns
Type Description
boolean

Whether the amendedStandardOffer field is set.

hasContractValue()

public boolean hasContractValue()

Output only. Contract value of the offer. Not included for PRIVATE_OFFER_VIEW_BASIC.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.ContractValue contract_value = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
boolean

Whether the contractValue field is set.

hasCustomIntervalPrice()

public boolean hasCustomIntervalPrice()

Optional. Price configurations for offers with custom intervals. Custom interval corresponds to "custom billing frequency", see https://docs.cloud.google.com/marketplace/docs/partners/offers/select-payment-schedule. A price must be set when publishing the offer.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.CustomIntervalPrice custom_interval_price = 6 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
boolean

Whether the customIntervalPrice field is set.

hasRevenueShare()

public boolean hasRevenueShare()

Output only. Revenue share information for this Private Offer. Not included for PRIVATE_OFFER_VIEW_BASIC.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.RevenueShare revenue_share = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
boolean

Whether the revenueShare field is set.

hasStandardIntervalPrice()

public boolean hasStandardIntervalPrice()

Optional. Price configurations for offers with standard intervals. A price must be set when publishing the offer.

.google.cloud.commerceproducer.v1beta.PrivateOffer.SingleProductOffer.StandardIntervalPrice standard_interval_price = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
boolean

Whether the standardIntervalPrice field is set.

hashCode()

public int hashCode()
Returns
Type Description
int
Overrides

internalGetFieldAccessorTable()

protected GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Type Description
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

newBuilderForType()

public PrivateOffer.SingleProductOffer.Builder newBuilderForType()
Returns
Type Description
PrivateOffer.SingleProductOffer.Builder

newBuilderForType(AbstractMessage.BuilderParent parent)

protected PrivateOffer.SingleProductOffer.Builder newBuilderForType(AbstractMessage.BuilderParent parent)
Parameter
Name Description
parent BuilderParent
Returns
Type Description
PrivateOffer.SingleProductOffer.Builder
Overrides

toBuilder()

public PrivateOffer.SingleProductOffer.Builder toBuilder()
Returns
Type Description
PrivateOffer.SingleProductOffer.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
Name Description
output CodedOutputStream
Overrides
Exceptions
Type Description
IOException