Class ItemListItemEndpoint


  • @FrameworkRestController
    @FrameworkMapping("/item-lists/{listId}")
    @DataRouteByExample(com.broadleafcommerce.cart.client.domain.ItemListItem.class)
    public class ItemListItemEndpoint
    extends Object
    Endpoint for managing item lists.
    Author:
    Jacob Mitash
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      com.broadleafcommerce.cart.client.domain.ItemListItem createItem​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, com.broadleafcommerce.cart.client.domain.ItemListItem item)  
      List<com.broadleafcommerce.cart.client.domain.ItemListItem> createItems​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, List<com.broadleafcommerce.cart.client.domain.ItemListItem> items)  
      void deleteItem​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, String id)  
      void deleteItems​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, Set<String> itemIds)
      void deleteItemsInBulk​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, Set<String> itemIds)  
      com.broadleafcommerce.cart.client.domain.ItemListItem getItem​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, String id)  
      org.springframework.data.domain.Page<com.broadleafcommerce.cart.client.domain.ItemListItem> getItemPage​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, org.springframework.data.domain.Pageable page)  
      List<com.broadleafcommerce.cart.client.domain.ItemListItem> getItems​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, Set<String> itemIds)  
      com.broadleafcommerce.cart.client.domain.ItemListItem replaceItem​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, String id, com.broadleafcommerce.cart.client.domain.ItemListItem item)  
      List<com.broadleafcommerce.cart.client.domain.ItemListItem> replaceItems​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, List<com.broadleafcommerce.cart.client.domain.ItemListItem> items)  
      protected void requireItemId​(Iterable<com.broadleafcommerce.cart.client.domain.ItemListItem> items)  
      protected List<com.broadleafcommerce.data.tracking.core.service.Update<com.broadleafcommerce.cart.client.domain.ItemListItem>> toUpdates​(Iterable<com.broadleafcommerce.cart.client.domain.ItemListItem> items)  
      com.broadleafcommerce.cart.client.domain.ItemListItem updateItem​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, String id, com.broadleafcommerce.cart.client.domain.ItemListItem item)  
      List<com.broadleafcommerce.cart.client.domain.ItemListItem> updateItems​(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String listId, List<com.broadleafcommerce.cart.client.domain.ItemListItem> items)  
    • Constructor Detail

      • ItemListItemEndpoint

        public ItemListItemEndpoint​(ItemListItemService<com.broadleafcommerce.cart.client.domain.ItemListItem> itemService)
    • Method Detail

      • getItemPage

        @Policy(permissionRoots="CART")
        @FrameworkGetMapping("/items")
        public org.springframework.data.domain.Page<com.broadleafcommerce.cart.client.domain.ItemListItem> getItemPage​(@ContextOperation(READ)
                                                                                                                       com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                                                                       @PathVariable
                                                                                                                       String listId,
                                                                                                                       @PageableDefault(size=100)
                                                                                                                       org.springframework.data.domain.Pageable page)
      • getItem

        @Policy(permissionRoots="CART")
        @FrameworkGetMapping("/items/{id}")
        public com.broadleafcommerce.cart.client.domain.ItemListItem getItem​(@ContextOperation(READ)
                                                                             com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                             @PathVariable
                                                                             String listId,
                                                                             @PathVariable
                                                                             String id)
      • createItem

        @Policy(permissionRoots="CART")
        @FrameworkPostMapping("/items")
        public com.broadleafcommerce.cart.client.domain.ItemListItem createItem​(@ContextOperation(CREATE)
                                                                                com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                                @PathVariable
                                                                                String listId,
                                                                                @RequestBody
                                                                                com.broadleafcommerce.cart.client.domain.ItemListItem item)
      • replaceItem

        @Policy(permissionRoots="CART")
        @FrameworkPutMapping("/items/{id}")
        public com.broadleafcommerce.cart.client.domain.ItemListItem replaceItem​(@ContextOperation(UPDATE)
                                                                                 com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                                 @PathVariable
                                                                                 String listId,
                                                                                 @PathVariable
                                                                                 String id,
                                                                                 @RequestBody
                                                                                 com.broadleafcommerce.cart.client.domain.ItemListItem item)
      • updateItem

        @Policy(permissionRoots="CART")
        @FrameworkPatchMapping("/items/{id}")
        public com.broadleafcommerce.cart.client.domain.ItemListItem updateItem​(@ContextOperation(UPDATE)
                                                                                com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                                @PathVariable
                                                                                String listId,
                                                                                @PathVariable
                                                                                String id,
                                                                                @RequestBody
                                                                                com.broadleafcommerce.cart.client.domain.ItemListItem item)
      • deleteItem

        @Policy(permissionRoots="CART")
        @FrameworkDeleteMapping("/items/{id}")
        public void deleteItem​(@ContextOperation(DELETE)
                               com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                               @PathVariable
                               String listId,
                               @PathVariable
                               String id)
      • getItems

        @Policy(permissionRoots="CART")
        @FrameworkGetMapping(value="/bulk-items",
                             params="itemIds")
        public List<com.broadleafcommerce.cart.client.domain.ItemListItem> getItems​(@ContextOperation(READ)
                                                                                    com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                                    @PathVariable
                                                                                    String listId,
                                                                                    @RequestParam
                                                                                    Set<String> itemIds)
      • createItems

        @Policy(permissionRoots="CART")
        @FrameworkPostMapping("/bulk-items")
        public List<com.broadleafcommerce.cart.client.domain.ItemListItem> createItems​(@ContextOperation(CREATE)
                                                                                       com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                                       @PathVariable
                                                                                       String listId,
                                                                                       @RequestBody
                                                                                       List<com.broadleafcommerce.cart.client.domain.ItemListItem> items)
      • replaceItems

        @Policy(permissionRoots="CART")
        @FrameworkPutMapping("/bulk-items")
        public List<com.broadleafcommerce.cart.client.domain.ItemListItem> replaceItems​(@ContextOperation(UPDATE)
                                                                                        com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                                        @PathVariable
                                                                                        String listId,
                                                                                        @RequestBody
                                                                                        List<com.broadleafcommerce.cart.client.domain.ItemListItem> items)
      • updateItems

        @Policy(permissionRoots="CART")
        @FrameworkPatchMapping("/bulk-items")
        public List<com.broadleafcommerce.cart.client.domain.ItemListItem> updateItems​(@ContextOperation(UPDATE)
                                                                                       com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                                       @PathVariable
                                                                                       String listId,
                                                                                       @RequestBody
                                                                                       List<com.broadleafcommerce.cart.client.domain.ItemListItem> items)
      • deleteItems

        @Deprecated
        @Policy(permissionRoots="CART")
        @FrameworkDeleteMapping(value="/bulk-items",
                                params="itemIds")
        public void deleteItems​(@ContextOperation(DELETE)
                                com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                @PathVariable
                                String listId,
                                @RequestParam
                                Set<String> itemIds)
        Deprecated.
        Use deleteItemsInBulk(ContextInfo, String, 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.
      • deleteItemsInBulk

        @Policy(permissionRoots="CART")
        @FrameworkPostMapping(value="/bulk-items/delete",
                              consumes="application/json")
        public void deleteItemsInBulk​(@ContextOperation(DELETE)
                                      com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                      @PathVariable
                                      String listId,
                                      @RequestBody
                                      Set<String> itemIds)
      • toUpdates

        protected List<com.broadleafcommerce.data.tracking.core.service.Update<com.broadleafcommerce.cart.client.domain.ItemListItem>> toUpdates​(Iterable<com.broadleafcommerce.cart.client.domain.ItemListItem> items)
      • requireItemId

        protected void requireItemId​(Iterable<com.broadleafcommerce.cart.client.domain.ItemListItem> items)