Interface ItemShippingTarget


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 or Custom Line Item quantities with individual Shipping Methods.

      Required when the Cart has Multiple ShippingMode. Omitting this field in that case returns an InvalidOperation error.

      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 or Custom Line Item quantities with individual Shipping Methods.

      Required when the Cart has Multiple ShippingMode. Omitting this field in that case returns an InvalidOperation error.

      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
    • copyDeep

      ItemShippingTarget copyDeep()
    • deepCopy

      @Nullable static ItemShippingTarget deepCopy(@Nullable ItemShippingTarget template)
      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 tools.jackson.core.type.TypeReference<ItemShippingTarget> typeReference()
      gives a TypeReference for usage with Jackson DataBind
      Returns:
      TypeReference