Class JpaCustomizedOrderRepository<D extends JpaOrder>
- java.lang.Object
-
- com.broadleafcommerce.order.provider.jpa.repository.JpaCustomizedOrderRepository<D>
-
- All Implemented Interfaces:
CustomizedOrderRepository<D>
public class JpaCustomizedOrderRepository<D extends JpaOrder> extends Object implements CustomizedOrderRepository<D>
-
-
Constructor Summary
Constructors Constructor Description JpaCustomizedOrderRepository(List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaCriteriaBuilderRsqlVisitor rsqlVisitor, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager, JpaOrderTenantQueryHelper tenantQueryHelper)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<D>findAllByContextIdAndMatchingTenant(Iterable<String> contextIds, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)Retrieves the orders matching the provided IDs and the tenant fromContextInfoif present.List<String>findAllDistinctContextIds(int page, cz.jirutka.rsql.parser.ast.Node filters)Retrieves a list of unique order context IDs no larger than page.Optional<D>findByContextIdAndMatchingTenant(String id, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)Retrieves the order matching the provided ID and the tenant fromContextInfoif present.voidsetRepository(OrderRepository<?> repository)voidvalidate()
-
-
-
Constructor Detail
-
JpaCustomizedOrderRepository
public JpaCustomizedOrderRepository(List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaCriteriaBuilderRsqlVisitor rsqlVisitor, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager, JpaOrderTenantQueryHelper tenantQueryHelper)
-
-
Method Detail
-
validate
@PostConstruct public void validate()
-
findAllDistinctContextIds
public List<String> findAllDistinctContextIds(int page, cz.jirutka.rsql.parser.ast.Node filters)
Description copied from interface:CustomizedOrderRepositoryRetrieves a list of unique order context IDs no larger than page. It is expected that any appropriate offset is achieved through criteria designated infilters.- Specified by:
findAllDistinctContextIdsin interfaceCustomizedOrderRepository<D extends JpaOrder>- Parameters:
page- the requested amount of results from the database. -1 indicates no limit.filters- additional filters to apply in the query. Should beEmptyNodeif no additional filters should be applied.- Returns:
- unique order IDs
-
setRepository
@Autowired @Lazy public void setRepository(OrderRepository<?> repository)
-
findByContextIdAndMatchingTenant
public Optional<D> findByContextIdAndMatchingTenant(String id, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Description copied from interface:CustomizedOrderRepositoryRetrieves the order matching the provided ID and the tenant fromContextInfoif present.Differs from the standard narrowing behavior of
TrackableRepository.findByContextId(String, ContextInfo), which only returns tenant-level (non-application-associated) records when fetching from a tenant context. This implementation finds all records within the tenant regardless of whether they're associated to an application.- Specified by:
findByContextIdAndMatchingTenantin interfaceCustomizedOrderRepository<D extends JpaOrder>- Parameters:
id- the id of the order fulfillment to findcontextInfo- context information surrounding multitenant state.- Returns:
- an
Optionalcontaining the requested order if found within the tenant, orOptional.empty()otherwise
-
findAllByContextIdAndMatchingTenant
public List<D> findAllByContextIdAndMatchingTenant(Iterable<String> contextIds, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Description copied from interface:CustomizedOrderRepositoryRetrieves the orders matching the provided IDs and the tenant fromContextInfoif present.Differs from the standard narrowing behavior of
TrackableRepository.findByContextId(String, ContextInfo), which only returns tenant-level (non-application-associated) records when fetching from a tenant context. This implementation finds all records within the tenant regardless of whether they're associated to an application.- Specified by:
findAllByContextIdAndMatchingTenantin interfaceCustomizedOrderRepository<D extends JpaOrder>- Parameters:
contextIds- the ids of the orders to findcontextInfo- context information surrounding multitenant state.- Returns:
- The list of narrowed orders
-
-