Interface ProductSetAttributeAction

All Superinterfaces:
ProductUpdateAction, ResourceUpdateAction<ProductUpdateAction>
All Known Implementing Classes:
ProductSetAttributeActionImpl

public interface ProductSetAttributeAction extends ProductUpdateAction

Either variantId or sku is required.


Example to create an instance using the builder pattern

     ProductSetAttributeAction productSetAttributeAction = ProductSetAttributeAction.builder()
             .name("{name}")
             .build()
 
  • Field Details

  • Method Details

    • getVariantId

      Long getVariantId()

      The id of the ProductVariant to update.

      Returns:
      variantId
    • getSku

      String getSku()

      The sku of the ProductVariant to update.

      Returns:
      sku
    • getName

      @NotNull @NotNull String getName()

      The name of the Attribute to set.

      Returns:
      name
    • getValue

      Object getValue()

      Value to set for the Attribute. If empty, any existing value will be removed.

      The AttributeType determines the format of the Attribute value to be provided:

      • For Enum Type and Localized Enum Type, use the key of the Plain Enum Value or Localized Enum Value objects, or the complete objects as value.
      • For Localizable Text Type, use the LocalizedString object as value.
      • For Money Type Attributes, use the Money object as value.
      • For Set Type Attributes, use the entire set object as value.
      • For Nested Type Attributes, use the list of values of all Attributes of the nested Product as value.
      • For Reference Type Attributes, use the Reference object as value.
      Returns:
      value
    • getStaged

      Boolean getStaged()

      If true, only the staged Attribute is set. If false, both current and staged Attribute is set.

      Returns:
      staged
    • setVariantId

      void setVariantId(Long variantId)

      The id of the ProductVariant to update.

      Parameters:
      variantId - value to be set
    • setSku

      void setSku(String sku)

      The sku of the ProductVariant to update.

      Parameters:
      sku - value to be set
    • setName

      void setName(String name)

      The name of the Attribute to set.

      Parameters:
      name - value to be set
    • setValue

      void setValue(Object value)

      Value to set for the Attribute. If empty, any existing value will be removed.

      The AttributeType determines the format of the Attribute value to be provided:

      • For Enum Type and Localized Enum Type, use the key of the Plain Enum Value or Localized Enum Value objects, or the complete objects as value.
      • For Localizable Text Type, use the LocalizedString object as value.
      • For Money Type Attributes, use the Money object as value.
      • For Set Type Attributes, use the entire set object as value.
      • For Nested Type Attributes, use the list of values of all Attributes of the nested Product as value.
      • For Reference Type Attributes, use the Reference object as value.
      Parameters:
      value - value to be set
    • setStaged

      void setStaged(Boolean staged)

      If true, only the staged Attribute is set. If false, both current and staged Attribute is set.

      Parameters:
      staged - value to be set
    • of

      factory method
      Returns:
      instance of ProductSetAttributeAction
    • of

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

      factory method to create a deep copy of ProductSetAttributeAction
      Parameters:
      template - instance to be copied
      Returns:
      copy instance
    • builder

      builder factory method for ProductSetAttributeAction
      Returns:
      builder
    • builder

      create builder for ProductSetAttributeAction instance
      Parameters:
      template - instance with prefilled values for the builder
      Returns:
      builder
    • withProductSetAttributeAction

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

      static ProductSetAttributeAction ofVariantId(Long variantId, String name, JsonNode value, Boolean staged)
    • ofSku

      static ProductSetAttributeAction ofSku(String sku, String name, JsonNode value, Boolean staged)
    • ofUnsetAttribute

      static ProductSetAttributeAction ofUnsetAttribute(Long variantId, String name)
    • ofUnsetAttribute

      static ProductSetAttributeAction ofUnsetAttribute(Long variantId, String name, Boolean staged)
    • ofUnsetAttributeForVariantId

      static ProductSetAttributeAction ofUnsetAttributeForVariantId(Long variantId, String name)
    • ofUnsetAttributeForSku

      static ProductSetAttributeAction ofUnsetAttributeForSku(String sku, String name)
    • ofUnsetAttributeForSku

      static ProductSetAttributeAction ofUnsetAttributeForSku(String sku, String name, Boolean staged)
    • typeReference

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