Class ProductEventDetail.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessage.Builder<ProductEventDetail.Builder>
com.google.cloud.recommendationengine.v1beta1.ProductEventDetail.Builder
All Implemented Interfaces:
ProductEventDetailOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cloneable
Enclosing class:
ProductEventDetail

public static final class ProductEventDetail.Builder extends com.google.protobuf.GeneratedMessage.Builder<ProductEventDetail.Builder> implements ProductEventDetailOrBuilder
 ProductEventDetail captures user event information specific to retail
 products.
 
Protobuf type google.cloud.recommendationengine.v1beta1.ProductEventDetail
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage.Builder<ProductEventDetail.Builder>
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessage.Builder<ProductEventDetail.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessage.Builder<ProductEventDetail.Builder>
    • getDefaultInstanceForType

      public ProductEventDetail getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      public ProductEventDetail build()
      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public ProductEventDetail buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • mergeFrom

      public ProductEventDetail.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<ProductEventDetail.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage.Builder<ProductEventDetail.Builder>
    • mergeFrom

      public ProductEventDetail.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<ProductEventDetail.Builder>
      Throws:
      IOException
    • getSearchQuery

      public String getSearchQuery()
       Required for `search` events. Other event types should not set this field.
       The user's search query as UTF-8 encoded text with a length limit of 5 KiB.
       
      string search_query = 1;
      Specified by:
      getSearchQuery in interface ProductEventDetailOrBuilder
      Returns:
      The searchQuery.
    • getSearchQueryBytes

      public com.google.protobuf.ByteString getSearchQueryBytes()
       Required for `search` events. Other event types should not set this field.
       The user's search query as UTF-8 encoded text with a length limit of 5 KiB.
       
      string search_query = 1;
      Specified by:
      getSearchQueryBytes in interface ProductEventDetailOrBuilder
      Returns:
      The bytes for searchQuery.
    • setSearchQuery

      public ProductEventDetail.Builder setSearchQuery(String value)
       Required for `search` events. Other event types should not set this field.
       The user's search query as UTF-8 encoded text with a length limit of 5 KiB.
       
      string search_query = 1;
      Parameters:
      value - The searchQuery to set.
      Returns:
      This builder for chaining.
    • clearSearchQuery

      public ProductEventDetail.Builder clearSearchQuery()
       Required for `search` events. Other event types should not set this field.
       The user's search query as UTF-8 encoded text with a length limit of 5 KiB.
       
      string search_query = 1;
      Returns:
      This builder for chaining.
    • setSearchQueryBytes

      public ProductEventDetail.Builder setSearchQueryBytes(com.google.protobuf.ByteString value)
       Required for `search` events. Other event types should not set this field.
       The user's search query as UTF-8 encoded text with a length limit of 5 KiB.
       
      string search_query = 1;
      Parameters:
      value - The bytes for searchQuery to set.
      Returns:
      This builder for chaining.
    • getPageCategoriesList

      public List<CatalogItem.CategoryHierarchy> getPageCategoriesList()
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
      Specified by:
      getPageCategoriesList in interface ProductEventDetailOrBuilder
    • getPageCategoriesCount

      public int getPageCategoriesCount()
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
      Specified by:
      getPageCategoriesCount in interface ProductEventDetailOrBuilder
    • getPageCategories

      public CatalogItem.CategoryHierarchy getPageCategories(int index)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
      Specified by:
      getPageCategories in interface ProductEventDetailOrBuilder
    • setPageCategories

      public ProductEventDetail.Builder setPageCategories(int index, CatalogItem.CategoryHierarchy value)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • setPageCategories

      public ProductEventDetail.Builder setPageCategories(int index, CatalogItem.CategoryHierarchy.Builder builderForValue)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • addPageCategories

       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • addPageCategories

      public ProductEventDetail.Builder addPageCategories(int index, CatalogItem.CategoryHierarchy value)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • addPageCategories

      public ProductEventDetail.Builder addPageCategories(CatalogItem.CategoryHierarchy.Builder builderForValue)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • addPageCategories

      public ProductEventDetail.Builder addPageCategories(int index, CatalogItem.CategoryHierarchy.Builder builderForValue)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • addAllPageCategories

      public ProductEventDetail.Builder addAllPageCategories(Iterable<? extends CatalogItem.CategoryHierarchy> values)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • clearPageCategories

      public ProductEventDetail.Builder clearPageCategories()
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • removePageCategories

      public ProductEventDetail.Builder removePageCategories(int index)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • getPageCategoriesBuilder

      public CatalogItem.CategoryHierarchy.Builder getPageCategoriesBuilder(int index)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • getPageCategoriesOrBuilder

      public CatalogItem.CategoryHierarchyOrBuilder getPageCategoriesOrBuilder(int index)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
      Specified by:
      getPageCategoriesOrBuilder in interface ProductEventDetailOrBuilder
    • getPageCategoriesOrBuilderList

      public List<? extends CatalogItem.CategoryHierarchyOrBuilder> getPageCategoriesOrBuilderList()
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
      Specified by:
      getPageCategoriesOrBuilderList in interface ProductEventDetailOrBuilder
    • addPageCategoriesBuilder

      public CatalogItem.CategoryHierarchy.Builder addPageCategoriesBuilder()
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • addPageCategoriesBuilder

      public CatalogItem.CategoryHierarchy.Builder addPageCategoriesBuilder(int index)
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • getPageCategoriesBuilderList

      public List<CatalogItem.CategoryHierarchy.Builder> getPageCategoriesBuilderList()
       Required for `category-page-view` events. Other event types should not set
       this field.
       The categories associated with a category page.
       Category pages include special pages such as sales or promotions. For
       instance, a special sale page may have the category hierarchy:
       categories : ["Sales", "2017 Black Friday Deals"].
       
      repeated .google.cloud.recommendationengine.v1beta1.CatalogItem.CategoryHierarchy page_categories = 2;
    • getProductDetailsList

      public List<ProductDetail> getProductDetailsList()
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
      Specified by:
      getProductDetailsList in interface ProductEventDetailOrBuilder
    • getProductDetailsCount

      public int getProductDetailsCount()
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
      Specified by:
      getProductDetailsCount in interface ProductEventDetailOrBuilder
    • getProductDetails

      public ProductDetail getProductDetails(int index)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
      Specified by:
      getProductDetails in interface ProductEventDetailOrBuilder
    • setProductDetails

      public ProductEventDetail.Builder setProductDetails(int index, ProductDetail value)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • setProductDetails

      public ProductEventDetail.Builder setProductDetails(int index, ProductDetail.Builder builderForValue)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • addProductDetails

      public ProductEventDetail.Builder addProductDetails(ProductDetail value)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • addProductDetails

      public ProductEventDetail.Builder addProductDetails(int index, ProductDetail value)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • addProductDetails

      public ProductEventDetail.Builder addProductDetails(ProductDetail.Builder builderForValue)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • addProductDetails

      public ProductEventDetail.Builder addProductDetails(int index, ProductDetail.Builder builderForValue)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • addAllProductDetails

      public ProductEventDetail.Builder addAllProductDetails(Iterable<? extends ProductDetail> values)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • clearProductDetails

      public ProductEventDetail.Builder clearProductDetails()
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • removeProductDetails

      public ProductEventDetail.Builder removeProductDetails(int index)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • getProductDetailsBuilder

      public ProductDetail.Builder getProductDetailsBuilder(int index)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • getProductDetailsOrBuilder

      public ProductDetailOrBuilder getProductDetailsOrBuilder(int index)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
      Specified by:
      getProductDetailsOrBuilder in interface ProductEventDetailOrBuilder
    • getProductDetailsOrBuilderList

      public List<? extends ProductDetailOrBuilder> getProductDetailsOrBuilderList()
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
      Specified by:
      getProductDetailsOrBuilderList in interface ProductEventDetailOrBuilder
    • addProductDetailsBuilder

      public ProductDetail.Builder addProductDetailsBuilder()
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • addProductDetailsBuilder

      public ProductDetail.Builder addProductDetailsBuilder(int index)
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • getProductDetailsBuilderList

      public List<ProductDetail.Builder> getProductDetailsBuilderList()
       The main product details related to the event.
      
       This field is required for the following event types:
      
       * `add-to-cart`
       * `add-to-list`
       * `checkout-start`
       * `detail-page-view`
       * `purchase-complete`
       * `refund`
       * `remove-from-cart`
       * `remove-from-list`
      
       This field is optional for the following event types:
      
       * `page-visit`
       * `shopping-cart-page-view` - note that 'product_details' should be set for
       this unless the shopping cart is empty.
      
       This field is not allowed for the following event types:
      
       * `category-page-view`
       * `home-page-view`
       * `search`
       
      repeated .google.cloud.recommendationengine.v1beta1.ProductDetail product_details = 3;
    • getListId

      public String getListId()
       Required for `add-to-list` and `remove-from-list` events. The id or name of
       the list that the item is being added to or removed from. Other event types
       should not set this field.
       
      string list_id = 4;
      Specified by:
      getListId in interface ProductEventDetailOrBuilder
      Returns:
      The listId.
    • getListIdBytes

      public com.google.protobuf.ByteString getListIdBytes()
       Required for `add-to-list` and `remove-from-list` events. The id or name of
       the list that the item is being added to or removed from. Other event types
       should not set this field.
       
      string list_id = 4;
      Specified by:
      getListIdBytes in interface ProductEventDetailOrBuilder
      Returns:
      The bytes for listId.
    • setListId

      public ProductEventDetail.Builder setListId(String value)
       Required for `add-to-list` and `remove-from-list` events. The id or name of
       the list that the item is being added to or removed from. Other event types
       should not set this field.
       
      string list_id = 4;
      Parameters:
      value - The listId to set.
      Returns:
      This builder for chaining.
    • clearListId

      public ProductEventDetail.Builder clearListId()
       Required for `add-to-list` and `remove-from-list` events. The id or name of
       the list that the item is being added to or removed from. Other event types
       should not set this field.
       
      string list_id = 4;
      Returns:
      This builder for chaining.
    • setListIdBytes

      public ProductEventDetail.Builder setListIdBytes(com.google.protobuf.ByteString value)
       Required for `add-to-list` and `remove-from-list` events. The id or name of
       the list that the item is being added to or removed from. Other event types
       should not set this field.
       
      string list_id = 4;
      Parameters:
      value - The bytes for listId to set.
      Returns:
      This builder for chaining.
    • getCartId

      public String getCartId()
       Optional. The id or name of the associated shopping cart. This id is used
       to associate multiple items added or present in the cart before purchase.
      
       This can only be set for `add-to-cart`, `remove-from-cart`,
       `checkout-start`, `purchase-complete`, or `shopping-cart-page-view` events.
       
      string cart_id = 5 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getCartId in interface ProductEventDetailOrBuilder
      Returns:
      The cartId.
    • getCartIdBytes

      public com.google.protobuf.ByteString getCartIdBytes()
       Optional. The id or name of the associated shopping cart. This id is used
       to associate multiple items added or present in the cart before purchase.
      
       This can only be set for `add-to-cart`, `remove-from-cart`,
       `checkout-start`, `purchase-complete`, or `shopping-cart-page-view` events.
       
      string cart_id = 5 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getCartIdBytes in interface ProductEventDetailOrBuilder
      Returns:
      The bytes for cartId.
    • setCartId

      public ProductEventDetail.Builder setCartId(String value)
       Optional. The id or name of the associated shopping cart. This id is used
       to associate multiple items added or present in the cart before purchase.
      
       This can only be set for `add-to-cart`, `remove-from-cart`,
       `checkout-start`, `purchase-complete`, or `shopping-cart-page-view` events.
       
      string cart_id = 5 [(.google.api.field_behavior) = OPTIONAL];
      Parameters:
      value - The cartId to set.
      Returns:
      This builder for chaining.
    • clearCartId

      public ProductEventDetail.Builder clearCartId()
       Optional. The id or name of the associated shopping cart. This id is used
       to associate multiple items added or present in the cart before purchase.
      
       This can only be set for `add-to-cart`, `remove-from-cart`,
       `checkout-start`, `purchase-complete`, or `shopping-cart-page-view` events.
       
      string cart_id = 5 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      This builder for chaining.
    • setCartIdBytes

      public ProductEventDetail.Builder setCartIdBytes(com.google.protobuf.ByteString value)
       Optional. The id or name of the associated shopping cart. This id is used
       to associate multiple items added or present in the cart before purchase.
      
       This can only be set for `add-to-cart`, `remove-from-cart`,
       `checkout-start`, `purchase-complete`, or `shopping-cart-page-view` events.
       
      string cart_id = 5 [(.google.api.field_behavior) = OPTIONAL];
      Parameters:
      value - The bytes for cartId to set.
      Returns:
      This builder for chaining.
    • hasPurchaseTransaction

      public boolean hasPurchaseTransaction()
       Optional. A transaction represents the entire purchase transaction.
       Required for `purchase-complete` events. Optional for `checkout-start`
       events. Other event types should not set this field.
       
      .google.cloud.recommendationengine.v1beta1.PurchaseTransaction purchase_transaction = 6 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      hasPurchaseTransaction in interface ProductEventDetailOrBuilder
      Returns:
      Whether the purchaseTransaction field is set.
    • getPurchaseTransaction

      public PurchaseTransaction getPurchaseTransaction()
       Optional. A transaction represents the entire purchase transaction.
       Required for `purchase-complete` events. Optional for `checkout-start`
       events. Other event types should not set this field.
       
      .google.cloud.recommendationengine.v1beta1.PurchaseTransaction purchase_transaction = 6 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getPurchaseTransaction in interface ProductEventDetailOrBuilder
      Returns:
      The purchaseTransaction.
    • setPurchaseTransaction

      public ProductEventDetail.Builder setPurchaseTransaction(PurchaseTransaction value)
       Optional. A transaction represents the entire purchase transaction.
       Required for `purchase-complete` events. Optional for `checkout-start`
       events. Other event types should not set this field.
       
      .google.cloud.recommendationengine.v1beta1.PurchaseTransaction purchase_transaction = 6 [(.google.api.field_behavior) = OPTIONAL];
    • setPurchaseTransaction

      public ProductEventDetail.Builder setPurchaseTransaction(PurchaseTransaction.Builder builderForValue)
       Optional. A transaction represents the entire purchase transaction.
       Required for `purchase-complete` events. Optional for `checkout-start`
       events. Other event types should not set this field.
       
      .google.cloud.recommendationengine.v1beta1.PurchaseTransaction purchase_transaction = 6 [(.google.api.field_behavior) = OPTIONAL];
    • mergePurchaseTransaction

      public ProductEventDetail.Builder mergePurchaseTransaction(PurchaseTransaction value)
       Optional. A transaction represents the entire purchase transaction.
       Required for `purchase-complete` events. Optional for `checkout-start`
       events. Other event types should not set this field.
       
      .google.cloud.recommendationengine.v1beta1.PurchaseTransaction purchase_transaction = 6 [(.google.api.field_behavior) = OPTIONAL];
    • clearPurchaseTransaction

      public ProductEventDetail.Builder clearPurchaseTransaction()
       Optional. A transaction represents the entire purchase transaction.
       Required for `purchase-complete` events. Optional for `checkout-start`
       events. Other event types should not set this field.
       
      .google.cloud.recommendationengine.v1beta1.PurchaseTransaction purchase_transaction = 6 [(.google.api.field_behavior) = OPTIONAL];
    • getPurchaseTransactionBuilder

      public PurchaseTransaction.Builder getPurchaseTransactionBuilder()
       Optional. A transaction represents the entire purchase transaction.
       Required for `purchase-complete` events. Optional for `checkout-start`
       events. Other event types should not set this field.
       
      .google.cloud.recommendationengine.v1beta1.PurchaseTransaction purchase_transaction = 6 [(.google.api.field_behavior) = OPTIONAL];
    • getPurchaseTransactionOrBuilder

      public PurchaseTransactionOrBuilder getPurchaseTransactionOrBuilder()
       Optional. A transaction represents the entire purchase transaction.
       Required for `purchase-complete` events. Optional for `checkout-start`
       events. Other event types should not set this field.
       
      .google.cloud.recommendationengine.v1beta1.PurchaseTransaction purchase_transaction = 6 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getPurchaseTransactionOrBuilder in interface ProductEventDetailOrBuilder