Interface PriceProvider<T1 extends PriceData,T2 extends PriceList>

All Known Implementing Classes:
ExternalPriceProvider

public interface PriceProvider<T1 extends PriceData,T2 extends PriceList>
Interface for interacting with a (typically) remote service to save and/or fetch pricing data.
Author:
Kelly Tisdell (ktisdell)
  • Method Details

    • bulkReadPriceData

      List<T1> bulkReadPriceData(cz.jirutka.rsql.parser.ast.Node filters, BatchContext<?> context)
      Bulk read price data for products in a batch. This allows reading price data for many products/pricelists at once.
      Parameters:
      filters - the filters to apply to the price data
      context - the context to use when reading the price data
      Returns:
      a list of price data for the products in the batch
    • createPriceData

      T1 createPriceData(T1 priceData, BatchContext<?> batch)
    • updatePriceData

      T1 updatePriceData(T1 priceData, BatchContext<?> batch)
    • deletePriceData

      void deletePriceData(String id, BatchContext<?> batch)
    • readPriceLists

      List<T2> readPriceLists(cz.jirutka.rsql.parser.ast.Node filters, BatchContext<?> context)
      Read price lists based on the provided filters.
      Parameters:
      filters - the filters to apply to the price lists
      context - The context to use when reading the price lists
      Returns:
      a list of price lists