Class JpaCustomizedRepositoryHelper<D extends com.broadleafcommerce.data.tracking.core.Trackable>

java.lang.Object
com.broadleafcommerce.cart.provider.jpa.repository.util.JpaCustomizedRepositoryHelper<D>

public class JpaCustomizedRepositoryHelper<D extends com.broadleafcommerce.data.tracking.core.Trackable> extends Object
A helper containing common functionality among customized repositories.
Author:
Jacob Mitash
  • Constructor Summary

    Constructors
    Constructor
    Description
    JpaCustomizedRepositoryHelper(com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager typeManager, jakarta.persistence.EntityManager entityManager, com.broadleafcommerce.data.tracking.jpa.filtering.narrow.JpaNarrowingHelper narrowingHelper, com.broadleafcommerce.data.tracking.core.TrackableRepository<D> repository)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    Gets the type that the repository manages.
    final org.springframework.data.domain.Page<D>
    readPageWithEqualPredicate(com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo, org.springframework.data.domain.Pageable page, String paramName, String paramValue, Function<jakarta.persistence.criteria.Root<D>,jakarta.persistence.criteria.Expression<String>> fieldExpressionFunction, Function<jakarta.persistence.criteria.Root<D>,jakarta.persistence.criteria.Predicate>... additionalPredicateFunctions)
    Reads a page of trackables based on some "equals" condition.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • JpaCustomizedRepositoryHelper

      public JpaCustomizedRepositoryHelper(com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager typeManager, jakarta.persistence.EntityManager entityManager, com.broadleafcommerce.data.tracking.jpa.filtering.narrow.JpaNarrowingHelper narrowingHelper, com.broadleafcommerce.data.tracking.core.TrackableRepository<D> repository)
  • Method Details

    • readPageWithEqualPredicate

      @SafeVarargs public final org.springframework.data.domain.Page<D> readPageWithEqualPredicate(@Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo, @Nullable org.springframework.data.domain.Pageable page, String paramName, String paramValue, Function<jakarta.persistence.criteria.Root<D>,jakarta.persistence.criteria.Expression<String>> fieldExpressionFunction, Function<jakarta.persistence.criteria.Root<D>,jakarta.persistence.criteria.Predicate>... additionalPredicateFunctions)
      Reads a page of trackables based on some "equals" condition.

      For example, someone wanting to find a page of trackables where "someId" is "123" would invoke this with something similar to: readPageWithEqualPredicate( contextInfo, page, "someId", "123", root -> root.get("someId"));

      Parameters:
      contextInfo - the context information of the request
      page - the requested page to load
      paramName - the name of the parameter being tested in the "equals" condition
      paramValue - the value the parameter should have for the "equals" condition
      fieldExpressionFunction - a function that generates an expression for the field to test in the "equals" condition
      additionalPredicateFunctions - any additional predicates to add to the query
      Returns:
      a page of trackables
    • getManagedType

      public Class<D> getManagedType()
      Gets the type that the repository manages.
      Returns:
      the type that this repository manages