Interface ProductTailoringInStoreDraft

All Superinterfaces:
Draft<ProductTailoringInStoreDraft>

public interface ProductTailoringInStoreDraft extends Draft<ProductTailoringInStoreDraft>

Contains all the tailored information of a Product for a specific Store.


Example to create an instance using the builder pattern

     ProductTailoringInStoreDraft productTailoringInStoreDraft = ProductTailoringInStoreDraft.builder()
             .product(productBuilder -> productBuilder)
             .build()
 
  • Method Details

    • getKey

      String getKey()

      User-defined unique identifier of the ProductTailoring.

      Returns:
      key
    • getProduct

      @NotNull @Valid @NotNull @Valid ProductResourceIdentifier getProduct()

      ResourceIdentifier of the Product the ProductTailoring belongs to.

      Returns:
      product
    • getName

      @Valid @Valid LocalizedString getName()

      Tailored name of the Product.

      Returns:
      name
    • getDescription

      @Valid @Valid LocalizedString getDescription()

      Tailored description of the Product.

      Returns:
      description
    • getMetaTitle

      @Valid @Valid LocalizedString getMetaTitle()

      Tailored title of the Product that is used by search engines.

      Returns:
      metaTitle
    • getMetaDescription

      @Valid @Valid LocalizedString getMetaDescription()

      Tailored description of the Product that is used in search engine.

      Returns:
      metaDescription
    • getMetaKeywords

      @Valid @Valid LocalizedString getMetaKeywords()

      Tailored keywords related to the Product that are used by search engines.

      Returns:
      metaKeywords
    • getSlug

      @Valid @Valid LocalizedString getSlug()

      User-defined identifier used in a deep-link URL for the ProductTailoring. Matches the pattern [a-zA-Z0-9_\\-]{2,256}.

      Returns:
      slug
    • getPublish

      Boolean getPublish()

      If true, the ProductTailoring is published immediately.

      Returns:
      publish
    • getVariants

      @Valid @Valid List<ProductVariantTailoringDraft> getVariants()

      Tailored Variants of the Product.

      Returns:
      variants
    • getAttributes

      @Valid @Valid List<ProductTailoringAttribute> getAttributes()

      Attributes of the tailored Product. If provided, these Attributes are selectively merged into the attributes of the corresponding Product. If the Product contains an Attribute with the same name, then its value is overwritten. Otherwise, the Attribute and its value are added to the Product.

      Returns:
      attributes
    • setKey

      void setKey(String key)

      User-defined unique identifier of the ProductTailoring.

      Parameters:
      key - value to be set
    • setProduct

      void setProduct(ProductResourceIdentifier product)

      ResourceIdentifier of the Product the ProductTailoring belongs to.

      Parameters:
      product - value to be set
    • setName

      void setName(LocalizedString name)

      Tailored name of the Product.

      Parameters:
      name - value to be set
    • setDescription

      void setDescription(LocalizedString description)

      Tailored description of the Product.

      Parameters:
      description - value to be set
    • setMetaTitle

      void setMetaTitle(LocalizedString metaTitle)

      Tailored title of the Product that is used by search engines.

      Parameters:
      metaTitle - value to be set
    • setMetaDescription

      void setMetaDescription(LocalizedString metaDescription)

      Tailored description of the Product that is used in search engine.

      Parameters:
      metaDescription - value to be set
    • setMetaKeywords

      void setMetaKeywords(LocalizedString metaKeywords)

      Tailored keywords related to the Product that are used by search engines.

      Parameters:
      metaKeywords - value to be set
    • setSlug

      void setSlug(LocalizedString slug)

      User-defined identifier used in a deep-link URL for the ProductTailoring. Matches the pattern [a-zA-Z0-9_\\-]{2,256}.

      Parameters:
      slug - value to be set
    • setPublish

      void setPublish(Boolean publish)

      If true, the ProductTailoring is published immediately.

      Parameters:
      publish - value to be set
    • setVariants

      void setVariants(ProductVariantTailoringDraft... variants)

      Tailored Variants of the Product.

      Parameters:
      variants - values to be set
    • setVariants

      void setVariants(List<ProductVariantTailoringDraft> variants)

      Tailored Variants of the Product.

      Parameters:
      variants - values to be set
    • setAttributes

      void setAttributes(ProductTailoringAttribute... attributes)

      Attributes of the tailored Product. If provided, these Attributes are selectively merged into the attributes of the corresponding Product. If the Product contains an Attribute with the same name, then its value is overwritten. Otherwise, the Attribute and its value are added to the Product.

      Parameters:
      attributes - values to be set
    • setAttributes

      void setAttributes(List<ProductTailoringAttribute> attributes)

      Attributes of the tailored Product. If provided, these Attributes are selectively merged into the attributes of the corresponding Product. If the Product contains an Attribute with the same name, then its value is overwritten. Otherwise, the Attribute and its value are added to the Product.

      Parameters:
      attributes - values to be set
    • of

      factory method
      Returns:
      instance of ProductTailoringInStoreDraft
    • of

      factory method to create a shallow copy ProductTailoringInStoreDraft
      Parameters:
      template - instance to be copied
      Returns:
      copy instance
    • copyDeep

    • deepCopy

      @Nullable static ProductTailoringInStoreDraft deepCopy(@Nullable ProductTailoringInStoreDraft template)
      factory method to create a deep copy of ProductTailoringInStoreDraft
      Parameters:
      template - instance to be copied
      Returns:
      copy instance
    • builder

      builder factory method for ProductTailoringInStoreDraft
      Returns:
      builder
    • builder

      create builder for ProductTailoringInStoreDraft instance
      Parameters:
      template - instance with prefilled values for the builder
      Returns:
      builder
    • withProductTailoringInStoreDraft

      default <T> T withProductTailoringInStoreDraft(Function<ProductTailoringInStoreDraft,T> helper)
      accessor map function
      Type Parameters:
      T - mapped type
      Parameters:
      helper - function to map the object
      Returns:
      mapped value
    • typeReference

      static com.fasterxml.jackson.core.type.TypeReference<ProductTailoringInStoreDraft> typeReference()
      gives a TypeReference for usage with Jackson DataBind
      Returns:
      TypeReference