Interface ItemShippingTarget

All Known Implementing Classes:
ItemShippingTargetImpl

public interface ItemShippingTarget

Determines the address (as a reference to an address in itemShippingAddresses) and the quantity shipped to the address.

If multiple shipping addresses are present for a Line Item or Custom Line Item, sub-quantities must be specified. An array of addresses and sub-quantities is stored per Line Item or Custom Line Item.


Example to create an instance using the builder pattern

     ItemShippingTarget itemShippingTarget = ItemShippingTarget.builder()
             .addressKey("{addressKey}")
             .quantity(0.3)
             .build()
 
  • Method Details

    • getAddressKey

      @NotNull @NotNull String getAddressKey()

      Key of the address in the Cart itemShippingAddresses. Duplicate address keys are not allowed.

      Returns:
      addressKey
    • getQuantity

      @NotNull @NotNull Long getQuantity()

      Quantity of Line Items or Custom Line Items shipped to the address with the specified addressKey.

      If a quantity is updated to 0 when defining ItemShippingDetailsDraft, the targets are removed from a Line Item or Custom Line Item in the resulting ItemShippingDetails.

      Returns:
      quantity
    • getShippingMethodKey

      String getShippingMethodKey()

      User-defined unique identifier of the Shipping Method in a Cart with Multiple ShippingMode.

      It connects Line Item quantities with individual shipping addresses.

      Returns:
      shippingMethodKey
    • setAddressKey

      void setAddressKey(String addressKey)

      Key of the address in the Cart itemShippingAddresses. Duplicate address keys are not allowed.

      Parameters:
      addressKey - value to be set
    • setQuantity

      void setQuantity(Long quantity)

      Quantity of Line Items or Custom Line Items shipped to the address with the specified addressKey.

      If a quantity is updated to 0 when defining ItemShippingDetailsDraft, the targets are removed from a Line Item or Custom Line Item in the resulting ItemShippingDetails.

      Parameters:
      quantity - value to be set
    • setShippingMethodKey

      void setShippingMethodKey(String shippingMethodKey)

      User-defined unique identifier of the Shipping Method in a Cart with Multiple ShippingMode.

      It connects Line Item quantities with individual shipping addresses.

      Parameters:
      shippingMethodKey - value to be set
    • of

      static ItemShippingTarget of()
      factory method
      Returns:
      instance of ItemShippingTarget
    • of

      static ItemShippingTarget of(ItemShippingTarget template)
      factory method to create a shallow copy ItemShippingTarget
      Parameters:
      template - instance to be copied
      Returns:
      copy instance
    • deepCopy

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

      static ItemShippingTargetBuilder builder()
      builder factory method for ItemShippingTarget
      Returns:
      builder
    • builder

      static ItemShippingTargetBuilder builder(ItemShippingTarget template)
      create builder for ItemShippingTarget instance
      Parameters:
      template - instance with prefilled values for the builder
      Returns:
      builder
    • withItemShippingTarget

      default <T> T withItemShippingTarget(Function<ItemShippingTarget,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<ItemShippingTarget> typeReference()
      gives a TypeReference for usage with Jackson DataBind
      Returns:
      TypeReference