Class ExternalPriceProvider<T extends PriceData>
java.lang.Object
com.broadleafcommerce.dataexchange.service.provider.external.AbstractRestApiExternalProvider
com.broadleafcommerce.dataexchange.service.provider.external.ExternalPriceProvider<T>
- All Implemented Interfaces:
PriceProvider<T>
public class ExternalPriceProvider<T extends PriceData>
extends AbstractRestApiExternalProvider
implements PriceProvider<T>
Default
PriceProvider implementation to Pricing Service REST APIs.- Author:
- Kelly Tisdell (ktisdell)
-
Field Summary
Fields inherited from class com.broadleafcommerce.dataexchange.service.provider.external.AbstractRestApiExternalProvider
CONTENT_CONTEXT_HEADER -
Constructor Summary
ConstructorsConstructorDescriptionExternalPriceProvider(ExternalPriceProviderProperties properties, com.fasterxml.jackson.databind.ObjectMapper mapper, org.springframework.web.reactive.function.client.WebClient webClient, com.broadleafcommerce.common.extension.TypeFactory typeFactory) -
Method Summary
Modifier and TypeMethodDescriptionprotected cz.jirutka.rsql.parser.ast.NodeBulk read price data for products in a batch.bulkReadPriceData(cz.jirutka.rsql.parser.ast.Node filters, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Bulk read price data for products in a batch.createPriceData(T priceData, BatchContext<?> batch) voiddeletePriceData(String id, BatchContext<?> batch) protected StringupdatePriceData(T priceData, BatchContext<?> batch) Methods inherited from class com.broadleafcommerce.dataexchange.service.provider.external.AbstractRestApiExternalProvider
buildAndNode, buildAndNode, buildEqualsNode, buildInNode, buildInNode, buildOrNode, buildOrNode, deleteRequest, deleteRequest, emptyNode, filterEmptyNodes, filterEmptyNodes, getHeaders, getMapper, getMostDerivedType, getRequest, getRequest, getTypeFactory, getWebClient, isEmptyNodeOrNull, narrowedPageParams, patchRequest, patchRequest, postRequest, postRequest, putRequest, putRequest, setCorrelationIds
-
Constructor Details
-
ExternalPriceProvider
public ExternalPriceProvider(ExternalPriceProviderProperties properties, com.fasterxml.jackson.databind.ObjectMapper mapper, org.springframework.web.reactive.function.client.WebClient webClient, com.broadleafcommerce.common.extension.TypeFactory typeFactory)
-
-
Method Details
-
bulkReadPriceData
Description copied from interface:PriceProviderBulk read price data for products in a batch. This allows reading price data for many products/pricelists at once.- Specified by:
bulkReadPriceDatain interfacePriceProvider<T extends PriceData>- Parameters:
batch- the batch of products to read price data for- Returns:
- a list of price data for the products in the batch
-
bulkReadPriceData
public List<T> bulkReadPriceData(cz.jirutka.rsql.parser.ast.Node filters, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Description copied from interface:PriceProviderBulk read price data for products in a batch. This allows reading price data for many products/pricelists at once.- Specified by:
bulkReadPriceDatain interfacePriceProvider<T extends PriceData>- Parameters:
filters- the filters to apply to the price datacontext- the context to use when reading the price data- Returns:
- a list of price data for the products in the batch
-
createPriceData
- Specified by:
createPriceDatain interfacePriceProvider<T extends PriceData>
-
updatePriceData
- Specified by:
updatePriceDatain interfacePriceProvider<T extends PriceData>
-
deletePriceData
- Specified by:
deletePriceDatain interfacePriceProvider<T extends PriceData>
-
buildBulkReadCriteria
protected cz.jirutka.rsql.parser.ast.Node buildBulkReadCriteria(BatchContext<ComprehensiveProduct> batch) -
getPriceDataType
-
getServiceClient
- Specified by:
getServiceClientin classAbstractRestApiExternalProvider- Returns:
- Returns the service client name to be used for the request.
-