public final class ProductReferenceResolutionUtils
extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
static io.sphere.sdk.products.ProductDraftBuilder |
getDraftBuilderFromStagedProduct(io.sphere.sdk.products.ProductProjection product)
Given a
Product this method creates a ProductDraftBuilder based on the staged
projection values of the supplied product. |
static java.util.List<io.sphere.sdk.products.ProductDraft> |
mapToProductDrafts(java.util.List<io.sphere.sdk.products.ProductProjection> products,
ReferenceIdToKeyCache referenceIdToKeyCache)
Returns an
List <ProductDraft > consisting of the results of applying the
mapping from the staged version of a ProductProjection to ProductDraft with
considering reference resolution. |
@Nonnull public static java.util.List<io.sphere.sdk.products.ProductDraft> mapToProductDrafts(@Nonnull java.util.List<io.sphere.sdk.products.ProductProjection> products, @Nonnull ReferenceIdToKeyCache referenceIdToKeyCache)
List
<ProductDraft
> consisting of the results of applying the
mapping from the staged version of a ProductProjection
to ProductDraft
with
considering reference resolution.
Reference field | from | to |
---|---|---|
productType | Reference <ProductType > |
ResourceIdentifier <ProductType > |
categories | Set <Reference <Category >> |
Set <ResourceIdentifier <Category >> |
variants.prices.channel | Reference <Channel > |
ResourceIdentifier <Channel > |
variants.prices.customerGroup * | Reference <CustomerGroup > |
ResourceIdentifier <CustomerGroup > |
variants.prices.custom.type | Reference <Type > |
ResourceIdentifier <Type > |
variants.assets.custom.type | Reference <Type > |
ResourceIdentifier <Type > |
variants.attributes on List <Attribute * |
Reference <ProductType > (example for ProductType) |
Reference <ProductType > (with key replaced with id field) |
taxCategory | Reference <TaxCategory > |
ResourceIdentifier <TaxCategory > |
state * | Reference <State > |
ResourceIdentifier <State > |
Note: The aforementioned references should contain Id in the map(cache) with a key value. Any reference that is not available in the map will have its id in place and not replaced by the key. This reference will be considered as existing resources on the target commercetools project and the library will issues an update/create API request without reference resolution.
products
- the productprojection (staged) without expansion of references.referenceIdToKeyCache
- the instance that manages cache.List
of ProductDraft
built from the supplied List
of Product
.@Nonnull public static io.sphere.sdk.products.ProductDraftBuilder getDraftBuilderFromStagedProduct(@Nonnull io.sphere.sdk.products.ProductProjection product)
Product
this method creates a ProductDraftBuilder
based on the staged
projection values of the supplied product.product
- the product to create a ProductDraftBuilder
based on it's staged data.ProductDraftBuilder
based on the staged projection values of the supplied
product.