Interface CartAddShippingMethodAction

All Superinterfaces:
CartUpdateAction, ResourceUpdateAction<CartUpdateAction>

public interface CartAddShippingMethodAction extends CartUpdateAction

Adds a Shipping Method for a specified shipping address to a Cart with Multiple ShippingMode.


Example to create an instance using the builder pattern

     CartAddShippingMethodAction cartAddShippingMethodAction = CartAddShippingMethodAction.builder()
             .shippingKey("{shippingKey}")
             .shippingMethod(shippingMethodBuilder -> shippingMethodBuilder)
             .shippingAddress(shippingAddressBuilder -> shippingAddressBuilder)
             .build()
 
  • Field Details

    • ADD_SHIPPING_METHOD

      static final String ADD_SHIPPING_METHOD
      discriminator value for CartAddShippingMethodAction
      See Also:
  • Method Details

    • getShippingKey

      @NotNull @NotNull String getShippingKey()

      User-defined identifier for the Shipping that must be unique across the Cart with Multiple ShippingMode.

      Returns:
      shippingKey
    • getShippingMethod

      @NotNull @Valid @NotNull @Valid ShippingMethodResourceIdentifier getShippingMethod()

      RecourceIdentifier to a ShippingMethod to add to the Cart with Multiple ShippingMode. If the referenced Shipping Method has a predicate that does not match the Cart, an InvalidOperation error is returned.

      Returns:
      shippingMethod
    • getShippingAddress

      @NotNull @Valid @NotNull @Valid BaseAddress getShippingAddress()

      Determines the shipping rate and Tax Rate of the Line Items.

      Returns:
      shippingAddress
    • getShippingRateInput

      @Valid @Valid ShippingRateInputDraft getShippingRateInput()

      Input used to select a ShippingRatePriceTier. The data type of this field depends on the shippingRateInputType.type configured in the Project:

      • If CartClassification, it must be ClassificationShippingRateInputDraft.
      • If CartScore, it must be ScoreShippingRateInputDraft.
      • If CartValue, it cannot be set.
      Returns:
      shippingRateInput
    • getExternalTaxRate

      @Valid @Valid ExternalTaxRateDraft getExternalTaxRate()

      Tax Rate used to tax a shipping expense if the Cart has the External TaxMode.

      Returns:
      externalTaxRate
    • getDeliveries

      @Valid @Valid List<DeliveryDraft> getDeliveries()

      Deliveries to be shipped with the referenced Shipping Method.

      Returns:
      deliveries
    • getCustom

      @Valid @Valid CustomFieldsDraft getCustom()

      Custom Fields for the Shipping Method.

      Returns:
      custom
    • setShippingKey

      void setShippingKey(String shippingKey)

      User-defined identifier for the Shipping that must be unique across the Cart with Multiple ShippingMode.

      Parameters:
      shippingKey - value to be set
    • setShippingMethod

      void setShippingMethod(ShippingMethodResourceIdentifier shippingMethod)

      RecourceIdentifier to a ShippingMethod to add to the Cart with Multiple ShippingMode. If the referenced Shipping Method has a predicate that does not match the Cart, an InvalidOperation error is returned.

      Parameters:
      shippingMethod - value to be set
    • setShippingAddress

      void setShippingAddress(BaseAddress shippingAddress)

      Determines the shipping rate and Tax Rate of the Line Items.

      Parameters:
      shippingAddress - value to be set
    • setShippingRateInput

      void setShippingRateInput(ShippingRateInputDraft shippingRateInput)

      Input used to select a ShippingRatePriceTier. The data type of this field depends on the shippingRateInputType.type configured in the Project:

      • If CartClassification, it must be ClassificationShippingRateInputDraft.
      • If CartScore, it must be ScoreShippingRateInputDraft.
      • If CartValue, it cannot be set.
      Parameters:
      shippingRateInput - value to be set
    • setExternalTaxRate

      void setExternalTaxRate(ExternalTaxRateDraft externalTaxRate)

      Tax Rate used to tax a shipping expense if the Cart has the External TaxMode.

      Parameters:
      externalTaxRate - value to be set
    • setDeliveries

      void setDeliveries(DeliveryDraft... deliveries)

      Deliveries to be shipped with the referenced Shipping Method.

      Parameters:
      deliveries - values to be set
    • setDeliveries

      void setDeliveries(List<DeliveryDraft> deliveries)

      Deliveries to be shipped with the referenced Shipping Method.

      Parameters:
      deliveries - values to be set
    • setCustom

      void setCustom(CustomFieldsDraft custom)

      Custom Fields for the Shipping Method.

      Parameters:
      custom - value to be set
    • of

      factory method
      Returns:
      instance of CartAddShippingMethodAction
    • of

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

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

      builder factory method for CartAddShippingMethodAction
      Returns:
      builder
    • builder

      create builder for CartAddShippingMethodAction instance
      Parameters:
      template - instance with prefilled values for the builder
      Returns:
      builder
    • withCartAddShippingMethodAction

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