Class ItemListEndpoint<P extends com.broadleafcommerce.cart.client.domain.ItemList>


  • @FrameworkRestController
    @FrameworkMapping
    @DataRouteByExample(com.broadleafcommerce.cart.client.domain.ItemList.class)
    public class ItemListEndpoint<P extends com.broadleafcommerce.cart.client.domain.ItemList>
    extends Object
    Endpoint for managing item lists.
    Author:
    Jacob Mitash
    • Constructor Detail

      • ItemListEndpoint

        public ItemListEndpoint​(ItemListService<P> itemListService)
    • Method Detail

      • readById

        @Policy(permissionRoots="CART")
        @FrameworkGetMapping("/item-lists/{id}")
        public P readById​(@ContextOperation(READ)
                          com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                          @PathVariable
                          String id,
                          @RequestParam(defaultValue="false")
                          boolean hydrate)
      • readByIds

        @Policy(permissionRoots="CART")
        @FrameworkGetMapping(value="/item-lists",
                             params="itemListIds")
        public org.springframework.data.domain.Page<P> readByIds​(@ContextOperation(READ)
                                                                 com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                 @RequestParam
                                                                 Collection<String> itemListIds,
                                                                 @PageableDefault(50)
                                                                 org.springframework.data.domain.Pageable page,
                                                                 cz.jirutka.rsql.parser.ast.Node filters)
      • create

        @Policy(permissionRoots="CART")
        @FrameworkPostMapping("/item-lists")
        public P create​(@ContextOperation(CREATE)
                        com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                        @RequestBody
                        P itemList)
      • replace

        @Policy(permissionRoots="CART")
        @FrameworkPutMapping("/item-lists/{id}")
        public P replace​(@ContextOperation(UPDATE)
                         com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                         @PathVariable
                         String id,
                         @RequestBody
                         P itemList)
      • update

        @Policy(permissionRoots="CART")
        @FrameworkPatchMapping("/item-lists/{id}")
        public P update​(@ContextOperation(UPDATE)
                        com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                        @PathVariable
                        String id,
                        @RequestBody
                        P itemList)
      • delete

        @Policy(permissionRoots="CART")
        @FrameworkDeleteMapping("/item-lists/{id}")
        public void delete​(@ContextOperation(UPDATE)
                           com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                           @PathVariable
                           String id)
      • deleteLists

        @Deprecated
        @Policy(permissionRoots="CART")
        @FrameworkDeleteMapping("/bulk-item-lists")
        public void deleteLists​(@ContextOperation(DELETE)
                                com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                @RequestParam
                                Set<String> listIds)
        Deprecated.
        Use deleteListsInBulk(ContextInfo, Set). This will allow much longer lists of IDs without worrying about whether the URL is too long and corrects the HTTP method semantics by using POST since we're not actually deleting a resource at the URL.
      • deleteListsInBulk

        @Policy(permissionRoots="CART")
        @FrameworkPostMapping(value="/bulk-item-lists/delete",
                              consumes="application/json")
        public void deleteListsInBulk​(@ContextOperation(DELETE)
                                      com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                      @RequestBody
                                      Set<String> listIds)