Interface BatchItemCompletionService<P extends BatchItemCompletion>

All Superinterfaces:
com.broadleafcommerce.data.tracking.core.service.MappableCrudEntityService<P>, com.broadleafcommerce.data.tracking.core.service.RsqlMappableCrudEntityService<P>
All Known Implementing Classes:
DefaultBatchItemCompletionService

public interface BatchItemCompletionService<P extends BatchItemCompletion> extends com.broadleafcommerce.data.tracking.core.service.RsqlMappableCrudEntityService<P>
Author:
Samarth Dhruva (samarthd)
  • Method Details

    • createAllFromBatchItems

      List<P> createAllFromBatchItems(String importId, List<BatchItem> completedBatchItems)
      Accepts a list of completed BatchItems and creates a BatchItemCompletion for each of them.
      Parameters:
      importId - the ID of the import which the batch items belong to
      completedBatchItems - a list of completed batch items
      Returns:
      all of the created batch item completions
    • readAllByImportId

      org.springframework.data.domain.Page<P> readAllByImportId(String importId, cz.jirutka.rsql.parser.ast.Node filters, org.springframework.data.domain.Pageable pageable)
      Finds and returns all of the item completions whose BatchItemCompletion.importId matches the given value.
      Parameters:
      importId - the ID of the import whose batch item completions should be returned
      filters - additional filters used to restrict results. Cannot be null - use EmptyNode if no additional filters should be applied.
      pageable - information about which page of results should be returned from the database
      Returns:
      all of the item completions for the given import
    • readAllByImportIdAndStatus

      Stream<P> readAllByImportIdAndStatus(String importId, String status)
      Finds and returns all of the item completions whose BatchItemCompletion.importId matches the given importId and BatchItemCompletion.status given status.
      Parameters:
      importId - the ID of the import whose batch item completions should be returned
      status - the status of the record to retrieve
      Returns:
      all of the item completions for the given import and status
    • readByCorrelationIdInOrTopLevelParentIdInOrderedByLineNumber

      Stream<P> readByCorrelationIdInOrTopLevelParentIdInOrderedByLineNumber(String importId, @Nullable Collection<String> correlationIdIn, @Nullable Collection<String> topLevelParentCorrelationIdIn)
      For the given importId, returns all batch item completion records which either have a BatchItemCompletion.correlationId that matches one of the given correlationIdIn values or a BatchItemCompletion.topLevelParentCorrelationId that matches one of the given topLevelParentCorrelationIdIn values.

      Results must be sorted by BatchItemCompletion.lineNumber in ascending order.

      Parameters:
      importId - the ID of the import which results should be filtered by
      correlationIdIn - a list of correlation IDs that are valid to return in the result (optional). If not supplied, results will not be filtered by this field.
      topLevelParentCorrelationIdIn - a list of top level parent correlation IDs that are valid to return in the result (optional). If not supplied, results will not be filtered by this field.
      Returns:
      all records which either have a BatchItemCompletion.correlationId that matches one of the given correlationIdIn values or a BatchItemCompletion.topLevelParentCorrelationId that matches one of the given topLevelParentCorrelationIdIn values, sorted by BatchItemCompletion.lineNumber in ascending order
    • findByImportIdAndStatusAndCorrelationIdIn

      List<P> findByImportIdAndStatusAndCorrelationIdIn(String importId, String status, Set<String> referencedCorrelationIds)
      Finds and returns all of the item completions whose BatchItemCompletion.importId matches the given importId, BatchItemCompletion.status the given status and BatchItemCompletion.correlationId the set of correlation ids.
      Parameters:
      importId - the ID of the import whose batch item completions should be returned
      status - the status of the record to retrieve
      referencedCorrelationIds - the set of correlation ids
      Returns:
      all of the item completions for the given import and status
    • readBatchItemCompletionIdsByImportIdForPurge

      @Deprecated(forRemoval=true) default List<String> readBatchItemCompletionIdsByImportIdForPurge(String importId, int batchSize)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Read a list of batch item completions for the provided import id. The default implementation of this method starts at page 0 with the intention that these batches are getting purged after each call, which would result in a new set of BatchItemCompletion entities.
      Parameters:
      importId - the import id to match batch item completions against
      batchSize - the batch size for results returned
      Returns:
      a list of batch item completions for the provided import id
    • readBatchItemCompletionIdsByImportIdForPurge

      List<String> readBatchItemCompletionIdsByImportIdForPurge(List<String> importIds, int batchSize)
      Read a list of batch item completion ids for the provided import ids.
      Parameters:
      importIds - the import ids to match batch item completions against
      batchSize - the batch size for results returned
      Returns:
      a list of batch item completion ids for the provided import id
    • deleteBatchItemCompletionsById

      @Deprecated(forRemoval=true) default Long deleteBatchItemCompletionsById(List<String> ids)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Delete the batch item completions that match the corresponding ids
      Parameters:
      ids - the list of ids to delete
      Returns:
      the number of batch item completions deleted
    • deleteAllByIdInBatch

      Integer deleteAllByIdInBatch(List<String> ids)
      Delete the batch item completions that match the corresponding ids using a single query.
      Parameters:
      ids - the list of ids to delete
      Returns:
      the number of batch item completions deleted