java.lang.Object
com.broadleafcommerce.dataexchange.service.provider.external.AbstractRestApiExternalProvider
com.broadleafcommerce.dataexchange.service.provider.external.ExternalPriceProvider<T1,T2> 
- All Implemented Interfaces:
 NodeBuilder,PriceProvider<T1,T2> 
public class ExternalPriceProvider<T1 extends PriceData,T2 extends PriceList> 
extends AbstractRestApiExternalProvider
implements PriceProvider<T1,T2> 
Default 
PriceProvider implementation to Pricing Service REST APIs.- Author:
 - Kelly Tisdell (ktisdell)
 
- 
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 TypeMethodDescriptionbulkReadPriceData(cz.jirutka.rsql.parser.ast.Node filters, BatchContext<?> context) Bulk read price data for products in a batch.createPriceData(T1 priceData, BatchContext<?> batch) voiddeletePriceData(String id, BatchContext<?> batch) protected StringreadPriceLists(cz.jirutka.rsql.parser.ast.Node filters, BatchContext<?> context) Read price lists based on the provided filters.updatePriceData(T1 priceData, BatchContext<?> batch) Methods inherited from class com.broadleafcommerce.dataexchange.service.provider.external.AbstractRestApiExternalProvider
addNarrowedPageableParams, deleteRequest, deleteRequest, getFilterParams, getFilterParams, getHeaders, getMapper, getMostDerivedType, getRequest, getRequest, getTypeFactory, getWebClient, narrowedPageParams, patchRequest, patchRequest, postRequest, postRequest, putRequest, putRequest, setCorrelationIdsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.broadleafcommerce.dataexchange.service.NodeBuilder
buildAndNode, buildAndNode, buildEqualsNode, buildInNode, buildInNode, buildOrNode, buildOrNode, emptyNode, escapeSpecialCharacters, filterEmptyNodes, filterEmptyNodes, isEmptyNodeOrNull 
- 
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
- 
readPriceLists
Description copied from interface:PriceProviderRead price lists based on the provided filters.- Specified by:
 readPriceListsin interfacePriceProvider<T1 extends PriceData,T2 extends PriceList> - Parameters:
 filters- the filters to apply to the price listscontext- The context to use when reading the price lists- Returns:
 - a list of price lists
 
 - 
bulkReadPriceData
public List<T1> bulkReadPriceData(cz.jirutka.rsql.parser.ast.Node filters, @Nullable BatchContext<?> 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<T1 extends PriceData,T2 extends PriceList> - 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<T1 extends PriceData,T2 extends PriceList> 
 - 
updatePriceData
- Specified by:
 updatePriceDatain interfacePriceProvider<T1 extends PriceData,T2 extends PriceList> 
 - 
deletePriceData
- Specified by:
 deletePriceDatain interfacePriceProvider<T1 extends PriceData,T2 extends PriceList> 
 - 
getPriceDataType
 - 
getServiceClient
- Specified by:
 getServiceClientin classAbstractRestApiExternalProvider- Returns:
 - Returns the service client name to be used for the request.
 
 
 -