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.