Class DefaultOrderConsolidationService<P extends ConsolidatedOrder>
java.lang.Object
com.broadleafcommerce.order.service.consolidation.DefaultOrderConsolidationService<P>
- All Implemented Interfaces:
OrderConsolidationService<P>
public class DefaultOrderConsolidationService<P extends ConsolidatedOrder>
extends Object
implements OrderConsolidationService<P>
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionDefaultOrderConsolidationService(OrderService<com.broadleafcommerce.order.client.domain.Order> orderService, OrderFulfillmentService<com.broadleafcommerce.order.client.domain.OrderFulfillment> orderFulfillmentService, com.broadleafcommerce.common.extension.TypeFactory typeFactory) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidconsolidateOrderFulfillments(Set<String> orderIds, List<P> consolidatedOrders, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) consolidateOrders(List<? extends com.broadleafcommerce.order.client.domain.Order> orders, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Consolidate orders with their related domain, such asOrderFulfillments.consolidatePaymentDistributions(com.broadleafcommerce.order.client.domain.Order order) protected PcreateConsolidatedOrder(@NonNull com.broadleafcommerce.order.client.domain.Order order) Creates aConsolidatedOrderfrom anOrder.protected cz.jirutka.rsql.parser.ast.NodeenhanceFilters(cz.jirutka.rsql.parser.ast.Node filters) Adds a filter against archived Orders to the existing filtersprotected OrderFulfillmentService<com.broadleafcommerce.order.client.domain.OrderFulfillment>protected OrderService<com.broadleafcommerce.order.client.domain.Order>protected com.broadleafcommerce.data.tracking.core.filtering.fetch.FilterParser<cz.jirutka.rsql.parser.ast.Node>protected com.broadleafcommerce.common.extension.TypeFactoryreadAllConsolidatedOrders(cz.jirutka.rsql.parser.ast.Node filters, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Read and consolidate orders with their related domain.readConsolidatedOrderById(String id, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Reads a singleConsolidatedOrderby ID.readConsolidatedOrderByIdMatchingTenant(String id, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Reads a singleConsolidatedOrderby ID and the tenant fromContextInfoif present.voidsetRsqlParser(com.broadleafcommerce.data.tracking.core.filtering.fetch.FilterParser<cz.jirutka.rsql.parser.ast.Node> rsqlParser)
-
Field Details
-
IGNORE_ARCHIVED_FILTER
- See Also:
-
-
Constructor Details
-
DefaultOrderConsolidationService
public DefaultOrderConsolidationService(OrderService<com.broadleafcommerce.order.client.domain.Order> orderService, OrderFulfillmentService<com.broadleafcommerce.order.client.domain.OrderFulfillment> orderFulfillmentService, com.broadleafcommerce.common.extension.TypeFactory typeFactory)
-
-
Method Details
-
readAllConsolidatedOrders
public List<P> readAllConsolidatedOrders(cz.jirutka.rsql.parser.ast.Node filters, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Description copied from interface:OrderConsolidationServiceRead and consolidate orders with their related domain.- Specified by:
readAllConsolidatedOrdersin interfaceOrderConsolidationService<P extends ConsolidatedOrder>- Parameters:
filters- the RSQLNodeused to restrict results, must not be nullcontext- context information around sandboxing and multitenant state- Returns:
- list of orders consolidated with relations
-
readConsolidatedOrderById
public P readConsolidatedOrderById(String id, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Description copied from interface:OrderConsolidationServiceReads a singleConsolidatedOrderby ID.- Specified by:
readConsolidatedOrderByIdin interfaceOrderConsolidationService<P extends ConsolidatedOrder>- Parameters:
id- ID of the ordercontextInfo- context information around sandboxing and multitenant state- Returns:
- The conoslidated order matching the
id.
-
readConsolidatedOrderByIdMatchingTenant
public P readConsolidatedOrderByIdMatchingTenant(String id, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Description copied from interface:OrderConsolidationServiceReads a singleConsolidatedOrderby ID and the tenant fromContextInfoif present.- Specified by:
readConsolidatedOrderByIdMatchingTenantin interfaceOrderConsolidationService<P extends ConsolidatedOrder>- Parameters:
id- ID of the ordercontextInfo- context information around sandboxing and multitenant state- Returns:
- The conoslidated order matching the
idand tenant.
-
consolidateOrders
protected List<P> consolidateOrders(List<? extends com.broadleafcommerce.order.client.domain.Order> orders, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Consolidate orders with their related domain, such asOrderFulfillments.- Parameters:
orders- The orders to get related domain forcontext- context information surrounding sandboxing/multitenant state- Returns:
- Orders combined with their related domain
-
createConsolidatedOrder
protected P createConsolidatedOrder(@NonNull @NonNull com.broadleafcommerce.order.client.domain.Order order) Creates aConsolidatedOrderfrom anOrder. This does not populate any fields not already part of anOrder.- Parameters:
order-Orderforming the basis of theConsolidatedOrderto be created- Returns:
- The
ConsolidatedOrderbased onorder.
-
consolidatePaymentDistributions
-
consolidateOrderFulfillments
-
enhanceFilters
protected cz.jirutka.rsql.parser.ast.Node enhanceFilters(cz.jirutka.rsql.parser.ast.Node filters) Adds a filter against archived Orders to the existing filters- Parameters:
filters- existing filters- Returns:
- enhanced filters
-
getOrderService
-
getOrderFulfillmentService
protected OrderFulfillmentService<com.broadleafcommerce.order.client.domain.OrderFulfillment> getOrderFulfillmentService() -
getTypeFactory
protected com.broadleafcommerce.common.extension.TypeFactory getTypeFactory() -
getRsqlParser
protected com.broadleafcommerce.data.tracking.core.filtering.fetch.FilterParser<cz.jirutka.rsql.parser.ast.Node> getRsqlParser() -
setRsqlParser
@Autowired public void setRsqlParser(com.broadleafcommerce.data.tracking.core.filtering.fetch.FilterParser<cz.jirutka.rsql.parser.ast.Node> rsqlParser)
-