Interface OrderProvider<O extends com.broadleafcommerce.order.client.domain.Order>

  • All Known Implementing Classes:
    ExternalOrderProvider

    public interface OrderProvider<O extends com.broadleafcommerce.order.client.domain.Order>
    Provider for interfacing with operations involving orders. Typically utilizes WebClient to make requests to an external REST API.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      O create​(O order, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
      Creates a Order.
      void delete​(String orderId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
      Deletes a Order with the given ID.
      org.springframework.data.domain.Page<O> readAll​(cz.jirutka.rsql.parser.ast.Node filters, org.springframework.data.domain.Pageable page, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
      Retrieve all Orders.
      Optional<O> readByCartId​(String cartId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
      Retrieve the Order with the given cart ID.
      O readById​(String orderId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
      Retrieve the Order with the given ID.
      O readByIdMatchingTenant​(String orderId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
      Retrieve the Order with the given ID, ignoring its application as long as it's in the current tenant context.
      O readByOrderNumber​(String orderNumber, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
      Retrieve the Order with the given order number.
      O readOwnedById​(String orderId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
      Retrieve the Order with the given ID, validating ownership if necessary.
      O update​(O order, String orderId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
      Update the Order with the given ID.
    • Method Detail

      • readAll

        org.springframework.data.domain.Page<O> readAll​(cz.jirutka.rsql.parser.ast.Node filters,
                                                        @Nullable
                                                        org.springframework.data.domain.Pageable page,
                                                        @Nullable
                                                        com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Retrieve all Orders.
        Parameters:
        filters - the list of filters to apply to this query
        page - the requested page of results from the database
        contextInfo - context information around sandbox and multitenant state.
        Returns:
        the order with the given ID
      • readById

        O readById​(String orderId,
                   @Nullable
                   com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Retrieve the Order with the given ID.
        Parameters:
        orderId - the ID of the order to retrieve
        contextInfo - context information around sandbox and multitenant state.
        Returns:
        the order with the given ID
      • readByIdMatchingTenant

        O readByIdMatchingTenant​(String orderId,
                                 @Nullable
                                 com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Retrieve the Order with the given ID, ignoring its application as long as it's in the current tenant context.
        Parameters:
        orderId - the ID of the order to retrieve
        contextInfo - context information around sandbox and multitenant state.
        Returns:
        the order with the given ID
      • readOwnedById

        O readOwnedById​(String orderId,
                        @Nullable
                        com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Retrieve the Order with the given ID, validating ownership if necessary.
        Parameters:
        orderId - the ID of the order to retrieve
        contextInfo - context information around sandbox and multitenant state.
        Returns:
        the order with the given ID
      • readByCartId

        Optional<O> readByCartId​(String cartId,
                                 @Nullable
                                 com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Retrieve the Order with the given cart ID.
        Parameters:
        cartId - the cart ID of the order to retrieve
        contextInfo - context information around sandbox and multitenant state.
        Returns:
        the order with the given cart ID
      • readByOrderNumber

        O readByOrderNumber​(String orderNumber,
                            @Nullable
                            com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Retrieve the Order with the given order number.
        Parameters:
        orderNumber - the order number of the order to retrieve
        contextInfo - context information around sandbox and multitenant state.
        Returns:
        the order with the given order number
      • create

        O create​(O order,
                 @Nullable
                 com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Creates a Order.
        Parameters:
        order - the order to replace with
        contextInfo - context information around sandbox and multitenant state.
        Returns:
        the created order
      • update

        O update​(O order,
                 String orderId,
                 @Nullable
                 com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Update the Order with the given ID.
        Parameters:
        order - the order to update with
        orderId - the ID of the order to retrieve
        contextInfo - context information around sandbox and multitenant state.
        Returns:
        the updated order with the given ID
      • delete

        void delete​(String orderId,
                    @Nullable
                    com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Deletes a Order with the given ID.
        Parameters:
        orderId - the ID of the order to delete
        contextInfo - context information around sandbox and multitenant state.