Interface CartAddCustomLineItemAction
- All Superinterfaces:
CartUpdateAction,CustomizableDraft<CartAddCustomLineItemAction>,ResourceUpdateAction<CartUpdateAction>
If the Cart already contains a CustomLineItem with the same slug, name, money, taxCategory, state, and Custom Fields, then only the quantity of the existing Custom Line Item is increased. If CustomLineItem shippingDetails are set, they are merged with the targets that already exist on the ItemShippingDetails of the Custom Line Item. In case of overlapping address keys the ItemShippingTarget quantity is summed up.
If the Cart already contains a Custom Line Item with the same slug that is otherwise not identical, an InvalidOperation error is returned.
If the Tax Rate is not set, a MissingTaxRateForCountry error is returned.
Example to create an instance using the builder pattern
CartAddCustomLineItemAction cartAddCustomLineItemAction = CartAddCustomLineItemAction.builder()
.money(moneyBuilder -> moneyBuilder)
.name(nameBuilder -> nameBuilder)
.slug("{slug}")
.build()
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringdiscriminator value for CartAddCustomLineItemAction -
Method Summary
Modifier and TypeMethodDescriptionbuilder()builder factory method for CartAddCustomLineItemActionbuilder(CartAddCustomLineItemAction template) create builder for CartAddCustomLineItemAction instancecopyDeep()static CartAddCustomLineItemActiondeepCopy(CartAddCustomLineItemAction template) factory method to create a deep copy of CartAddCustomLineItemAction@Valid CustomFieldsDraftCustom Fields for the Custom Line Item.@Valid ExternalTaxRateDraftAn external Tax Rate can be set if the Cart hasExternalTaxMode.getKey()User-defined unique identifier of the Custom Line Item.@NotNull @Valid MoneygetMoney()Money value of the Custom Line Item.@NotNull @Valid LocalizedStringgetName()Name of the Custom Line Item.IfStandard, Cart Discounts with a matching CartDiscountCustomLineItemsTarget, MultiBuyCustomLineItemsTarget, or CartDiscountPatternTarget are applied to the Custom Line Item. IfExternal, Cart Discounts are not considered on the Custom Line Item.Number of Custom Line Items to add to the Cart.Recurring Order and frequency data.@Valid ItemShippingDetailsDraftContainer for Custom Line Item-specific addresses.@NotNull StringgetSlug()User-defined identifier used in a deep-link URL for the Custom Line Item.Used to select a Tax Rate when a Cart has thePlatformTaxMode.static CartAddCustomLineItemActionof()factory methodstatic CartAddCustomLineItemActionof(CartAddCustomLineItemAction template) factory method to create a shallow copy CartAddCustomLineItemActionvoidsetCustom(CustomFieldsDraft custom) Custom Fields for the Custom Line Item.voidsetExternalTaxRate(ExternalTaxRateDraft externalTaxRate) An external Tax Rate can be set if the Cart hasExternalTaxMode.voidUser-defined unique identifier of the Custom Line Item.voidMoney value of the Custom Line Item.voidsetName(LocalizedString name) Name of the Custom Line Item.voidsetPriceMode(CustomLineItemPriceMode priceMode) IfStandard, Cart Discounts with a matching CartDiscountCustomLineItemsTarget, MultiBuyCustomLineItemsTarget, or CartDiscountPatternTarget are applied to the Custom Line Item. IfExternal, Cart Discounts are not considered on the Custom Line Item.voidsetQuantity(Long quantity) Number of Custom Line Items to add to the Cart.voidsetRecurrenceInfo(CustomLineItemRecurrenceInfoDraft recurrenceInfo) Recurring Order and frequency data.voidsetShippingDetails(ItemShippingDetailsDraft shippingDetails) Container for Custom Line Item-specific addresses.voidUser-defined identifier used in a deep-link URL for the Custom Line Item.voidsetTaxCategory(TaxCategoryResourceIdentifier taxCategory) Used to select a Tax Rate when a Cart has thePlatformTaxMode.static com.fasterxml.jackson.core.type.TypeReference<CartAddCustomLineItemAction>gives a TypeReference for usage with Jackson DataBinddefault <T> Taccessor map functionMethods inherited from interface com.commercetools.api.models.cart.CartUpdateAction
getAction, withCartUpdateActionMethods inherited from interface com.commercetools.api.models.CustomizableDraft
unwrapCustomizableDraftMethods inherited from interface com.commercetools.api.models.ResourceUpdateAction
get
-
Field Details
-
ADD_CUSTOM_LINE_ITEM
discriminator value for CartAddCustomLineItemAction- See Also:
-
-
Method Details
-
getMoney
Money value of the Custom Line Item. The value can be negative.
To set the money value in high precision, use HighPrecisionMoneyDraft.
- Returns:
- money
-
getName
Name of the Custom Line Item.
- Returns:
- name
-
getKey
String getKey()User-defined unique identifier of the Custom Line Item.
- Returns:
- key
-
getQuantity
Long getQuantity()Number of Custom Line Items to add to the Cart.
- Returns:
- quantity
-
getSlug
User-defined identifier used in a deep-link URL for the Custom Line Item. It must match the pattern
[a-zA-Z0-9_-]{2,256}.- Returns:
- slug
-
getTaxCategory
Used to select a Tax Rate when a Cart has the
PlatformTaxMode.If TaxMode is
Platform, this field must not be empty.- Returns:
- taxCategory
-
getExternalTaxRate
An external Tax Rate can be set if the Cart has
ExternalTaxMode.- Returns:
- externalTaxRate
-
getShippingDetails
Container for Custom Line Item-specific addresses.
- Returns:
- shippingDetails
-
getCustom
Custom Fields for the Custom Line Item.
- Specified by:
getCustomin interfaceCustomizableDraft<CartAddCustomLineItemAction>- Returns:
- custom
-
getPriceMode
CustomLineItemPriceMode getPriceMode()- If
Standard, Cart Discounts with a matching CartDiscountCustomLineItemsTarget, MultiBuyCustomLineItemsTarget, or CartDiscountPatternTarget are applied to the Custom Line Item. - If
External, Cart Discounts are not considered on the Custom Line Item.
- Returns:
- priceMode
- If
-
getRecurrenceInfo
Recurring Order and frequency data.
- Returns:
- recurrenceInfo
-
setMoney
Money value of the Custom Line Item. The value can be negative.
To set the money value in high precision, use HighPrecisionMoneyDraft.
- Parameters:
money- value to be set
-
setName
Name of the Custom Line Item.
- Parameters:
name- value to be set
-
setKey
User-defined unique identifier of the Custom Line Item.
- Parameters:
key- value to be set
-
setQuantity
Number of Custom Line Items to add to the Cart.
- Parameters:
quantity- value to be set
-
setSlug
User-defined identifier used in a deep-link URL for the Custom Line Item. It must match the pattern
[a-zA-Z0-9_-]{2,256}.- Parameters:
slug- value to be set
-
setTaxCategory
Used to select a Tax Rate when a Cart has the
PlatformTaxMode.If TaxMode is
Platform, this field must not be empty.- Parameters:
taxCategory- value to be set
-
setExternalTaxRate
An external Tax Rate can be set if the Cart has
ExternalTaxMode.- Parameters:
externalTaxRate- value to be set
-
setShippingDetails
Container for Custom Line Item-specific addresses.
- Parameters:
shippingDetails- value to be set
-
setCustom
Custom Fields for the Custom Line Item.
- Specified by:
setCustomin interfaceCustomizableDraft<CartAddCustomLineItemAction>- Parameters:
custom- value to be set
-
setPriceMode
- If
Standard, Cart Discounts with a matching CartDiscountCustomLineItemsTarget, MultiBuyCustomLineItemsTarget, or CartDiscountPatternTarget are applied to the Custom Line Item. - If
External, Cart Discounts are not considered on the Custom Line Item.
- Parameters:
priceMode- value to be set
- If
-
setRecurrenceInfo
Recurring Order and frequency data.
- Parameters:
recurrenceInfo- value to be set
-
of
factory method- Returns:
- instance of CartAddCustomLineItemAction
-
of
factory method to create a shallow copy CartAddCustomLineItemAction- Parameters:
template- instance to be copied- Returns:
- copy instance
-
copyDeep
CartAddCustomLineItemAction copyDeep()- Specified by:
copyDeepin interfaceCartUpdateAction
-
deepCopy
@Nullable static CartAddCustomLineItemAction deepCopy(@Nullable CartAddCustomLineItemAction template) factory method to create a deep copy of CartAddCustomLineItemAction- Parameters:
template- instance to be copied- Returns:
- copy instance
-
builder
builder factory method for CartAddCustomLineItemAction- Returns:
- builder
-
builder
create builder for CartAddCustomLineItemAction instance- Parameters:
template- instance with prefilled values for the builder- Returns:
- builder
-
withCartAddCustomLineItemAction
accessor map function- Type Parameters:
T- mapped type- Parameters:
helper- function to map the object- Returns:
- mapped value
-
typeReference
gives a TypeReference for usage with Jackson DataBind- Returns:
- TypeReference
-