Interface LineItemDraft
- All Superinterfaces:
CustomizableDraft<LineItemDraft>
,Draft<LineItemDraft>
For Product Variant identification, either the productId
and variantId
, or sku
must be provided.
Example to create an instance using the builder pattern
LineItemDraft lineItemDraft = LineItemDraft.builder()
.build()
-
Method Summary
Modifier and TypeMethodDescriptionstatic LineItemDraftBuilder
builder()
builder factory method for LineItemDraftstatic LineItemDraftBuilder
builder
(LineItemDraft template) create builder for LineItemDraft instancestatic LineItemDraft
deepCopy
(LineItemDraft template) factory method to create a deep copy of LineItemDraftDate and time (UTC) the Product Variant is added to the Cart.@Valid CustomFieldsDraft
Custom Fields for the Line Item.@Valid ChannelResourceIdentifier
Used to select a Product Price.@Valid Money
Sets the LineItemprice
value, and thepriceMode
toExternalPrice
LineItemPriceMode.@Valid ExternalTaxRateDraft
Sets the external Tax Rate for the Line Item, if the Cart has theExternal
TaxMode andSingle
ShippingMode.@Valid ExternalLineItemTotalPrice
Sets the LineItemprice
andtotalPrice
values, and thepriceMode
toExternalTotal
LineItemPriceMode.Inventory mode specific to the Line Item only, and valid for the entirequantity
of the Line Item.getKey()
User-defined unique identifier of the LineItem.@Valid List<MethodExternalTaxRateDraft>
Sets the external Tax Rates for individual Shipping Methods, if the Cart has theExternal
TaxMode andMultiple
ShippingMode.id
of a published Product.Quantity of the Product Variant to add to the Cart.@Valid ItemShippingDetailsDraft
Container for Line Item-specific addresses.getSku()
sku
of the ProductVariant.@Valid ChannelResourceIdentifier
Used to identify Inventory entries that must be reserved.id
of the ProductVariant in the Product.static LineItemDraft
of()
factory methodstatic LineItemDraft
of
(LineItemDraft template) factory method to create a shallow copy LineItemDraftvoid
setAddedAt
(ZonedDateTime addedAt) Date and time (UTC) the Product Variant is added to the Cart.void
setCustom
(CustomFieldsDraft custom) Custom Fields for the Line Item.void
setDistributionChannel
(ChannelResourceIdentifier distributionChannel) Used to select a Product Price.void
setExternalPrice
(Money externalPrice) Sets the LineItemprice
value, and thepriceMode
toExternalPrice
LineItemPriceMode.void
setExternalTaxRate
(ExternalTaxRateDraft externalTaxRate) Sets the external Tax Rate for the Line Item, if the Cart has theExternal
TaxMode andSingle
ShippingMode.void
setExternalTotalPrice
(ExternalLineItemTotalPrice externalTotalPrice) Sets the LineItemprice
andtotalPrice
values, and thepriceMode
toExternalTotal
LineItemPriceMode.void
setInventoryMode
(InventoryMode inventoryMode) Inventory mode specific to the Line Item only, and valid for the entirequantity
of the Line Item.void
User-defined unique identifier of the LineItem.void
setPerMethodExternalTaxRate
(MethodExternalTaxRateDraft... perMethodExternalTaxRate) Sets the external Tax Rates for individual Shipping Methods, if the Cart has theExternal
TaxMode andMultiple
ShippingMode.void
setPerMethodExternalTaxRate
(List<MethodExternalTaxRateDraft> perMethodExternalTaxRate) Sets the external Tax Rates for individual Shipping Methods, if the Cart has theExternal
TaxMode andMultiple
ShippingMode.void
setProductId
(String productId) id
of a published Product.void
setQuantity
(Long quantity) Quantity of the Product Variant to add to the Cart.void
setShippingDetails
(ItemShippingDetailsDraft shippingDetails) Container for Line Item-specific addresses.void
sku
of the ProductVariant.void
setSupplyChannel
(ChannelResourceIdentifier supplyChannel) Used to identify Inventory entries that must be reserved.void
setVariantId
(Long variantId) id
of the ProductVariant in the Product.static com.fasterxml.jackson.core.type.TypeReference<LineItemDraft>
gives a TypeReference for usage with Jackson DataBinddefault <T> T
withLineItemDraft
(Function<LineItemDraft, T> helper) accessor map functionMethods inherited from interface com.commercetools.api.models.CustomizableDraft
unwrapCustomizableDraft
-
Method Details
-
getKey
String getKey()User-defined unique identifier of the LineItem.
- Returns:
- key
-
getProductId
String getProductId()id
of a published Product.- Returns:
- productId
-
getVariantId
Long getVariantId()id
of the ProductVariant in the Product. If not provided, the Master Variant is used.- Returns:
- variantId
-
getSku
String getSku()sku
of the ProductVariant.- Returns:
- sku
-
getQuantity
Long getQuantity()Quantity of the Product Variant to add to the Cart.
- Returns:
- quantity
-
getAddedAt
ZonedDateTime getAddedAt()Date and time (UTC) the Product Variant is added to the Cart. If not set, it defaults to the current date and time.
Optional for backwards compatibility reasons.
- Returns:
- addedAt
-
getDistributionChannel
Used to select a Product Price. The referenced Channel must have the
ProductDistribution
ChannelRoleEnum.If the Cart is bound to a Store with
distributionChannels
set, the Channel must match one of the Store's distribution channels.- Returns:
- distributionChannel
-
getSupplyChannel
Used to identify Inventory entries that must be reserved. The referenced Channel must have the
InventorySupply
ChannelRoleEnum.- Returns:
- supplyChannel
-
getExternalPrice
Sets the LineItem
price
value, and thepriceMode
toExternalPrice
LineItemPriceMode.- Returns:
- externalPrice
-
getExternalTotalPrice
Sets the LineItem
price
andtotalPrice
values, and thepriceMode
toExternalTotal
LineItemPriceMode.- Returns:
- externalTotalPrice
-
getExternalTaxRate
Sets the external Tax Rate for the Line Item, if the Cart has the
External
TaxMode andSingle
ShippingMode. If the Cart hasMultiple
ShippingMode, the Tax Rate is accepted but ignored.- Returns:
- externalTaxRate
-
getPerMethodExternalTaxRate
Sets the external Tax Rates for individual Shipping Methods, if the Cart has the
External
TaxMode andMultiple
ShippingMode.- Returns:
- perMethodExternalTaxRate
-
getInventoryMode
InventoryMode getInventoryMode()Inventory mode specific to the Line Item only, and valid for the entire
quantity
of the Line Item. Set only if the inventory mode should be different from theinventoryMode
specified on the Cart.- Returns:
- inventoryMode
-
getShippingDetails
Container for Line Item-specific addresses.
- Returns:
- shippingDetails
-
getCustom
Custom Fields for the Line Item.
- Specified by:
getCustom
in interfaceCustomizableDraft<LineItemDraft>
- Returns:
- custom
-
setKey
User-defined unique identifier of the LineItem.
- Parameters:
key
- value to be set
-
setProductId
id
of a published Product.- Parameters:
productId
- value to be set
-
setVariantId
id
of the ProductVariant in the Product. If not provided, the Master Variant is used.- Parameters:
variantId
- value to be set
-
setSku
sku
of the ProductVariant.- Parameters:
sku
- value to be set
-
setQuantity
Quantity of the Product Variant to add to the Cart.
- Parameters:
quantity
- value to be set
-
setAddedAt
Date and time (UTC) the Product Variant is added to the Cart. If not set, it defaults to the current date and time.
Optional for backwards compatibility reasons.
- Parameters:
addedAt
- value to be set
-
setDistributionChannel
Used to select a Product Price. The referenced Channel must have the
ProductDistribution
ChannelRoleEnum.If the Cart is bound to a Store with
distributionChannels
set, the Channel must match one of the Store's distribution channels.- Parameters:
distributionChannel
- value to be set
-
setSupplyChannel
Used to identify Inventory entries that must be reserved. The referenced Channel must have the
InventorySupply
ChannelRoleEnum.- Parameters:
supplyChannel
- value to be set
-
setExternalPrice
Sets the LineItem
price
value, and thepriceMode
toExternalPrice
LineItemPriceMode.- Parameters:
externalPrice
- value to be set
-
setExternalTotalPrice
Sets the LineItem
price
andtotalPrice
values, and thepriceMode
toExternalTotal
LineItemPriceMode.- Parameters:
externalTotalPrice
- value to be set
-
setExternalTaxRate
Sets the external Tax Rate for the Line Item, if the Cart has the
External
TaxMode andSingle
ShippingMode. If the Cart hasMultiple
ShippingMode, the Tax Rate is accepted but ignored.- Parameters:
externalTaxRate
- value to be set
-
setPerMethodExternalTaxRate
Sets the external Tax Rates for individual Shipping Methods, if the Cart has the
External
TaxMode andMultiple
ShippingMode.- Parameters:
perMethodExternalTaxRate
- values to be set
-
setPerMethodExternalTaxRate
Sets the external Tax Rates for individual Shipping Methods, if the Cart has the
External
TaxMode andMultiple
ShippingMode.- Parameters:
perMethodExternalTaxRate
- values to be set
-
setInventoryMode
Inventory mode specific to the Line Item only, and valid for the entire
quantity
of the Line Item. Set only if the inventory mode should be different from theinventoryMode
specified on the Cart.- Parameters:
inventoryMode
- value to be set
-
setShippingDetails
Container for Line Item-specific addresses.
- Parameters:
shippingDetails
- value to be set
-
setCustom
Custom Fields for the Line Item.
- Specified by:
setCustom
in interfaceCustomizableDraft<LineItemDraft>
- Parameters:
custom
- value to be set
-
of
factory method- Returns:
- instance of LineItemDraft
-
of
factory method to create a shallow copy LineItemDraft- Parameters:
template
- instance to be copied- Returns:
- copy instance
-
deepCopy
factory method to create a deep copy of LineItemDraft- Parameters:
template
- instance to be copied- Returns:
- copy instance
-
builder
builder factory method for LineItemDraft- Returns:
- builder
-
builder
create builder for LineItemDraft instance- Parameters:
template
- instance with prefilled values for the builder- Returns:
- builder
-
withLineItemDraft
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
-