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
ConstructorsConstructorDescriptionJpaCustomizedRepositoryHelper
(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 TypeMethodDescriptionGets 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.
-
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 requestpage
- the requested page to loadparamName
- the name of the parameter being tested in the "equals" conditionparamValue
- the value the parameter should have for the "equals" conditionfieldExpressionFunction
- a function that generates an expression for the field to test in the "equals" conditionadditionalPredicateFunctions
- any additional predicates to add to the query- Returns:
- a page of trackables
-
getManagedType
Gets the type that the repository manages.- Returns:
- the type that this repository manages
-