Class MenuItemEndpoint


  • @FrameworkRestController
    @FrameworkMapping("/menus/{menuId}/menu-items")
    @DataRouteByExample(MenuItem.class)
    public class MenuItemEndpoint
    extends Object
    Author:
    Samarth Dhruva (samarthd)
    • Constructor Detail

      • MenuItemEndpoint

        public MenuItemEndpoint​(MenuItemService<MenuItem> menuItemService,
                                MenuService<Menu> menuService,
                                com.broadleafcommerce.translation.service.TranslationEntityService<com.broadleafcommerce.translation.domain.Translation> translationEntityService)
    • Method Detail

      • readAllMenuItems

        @Policy(permissionRoots="MENU")
        @FrameworkGetMapping
        public org.springframework.data.domain.Page<MenuItem> readAllMenuItems​(@ContextOperation(READ)
                                                                               com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo,
                                                                               @PathVariable("menuId")
                                                                               String parentMenuId,
                                                                               @RequestParam(value="q",required=false)
                                                                               String labelQuery,
                                                                               @RequestParam(value="rootsOnly",required=false,defaultValue="false")
                                                                               boolean rootsOnly,
                                                                               cz.jirutka.rsql.parser.ast.Node filters,
                                                                               @PageableDefault(size=50,sort="displayOrder",direction=ASC)
                                                                               org.springframework.data.domain.Pageable page)
      • readMenuItem

        @Policy(permissionRoots="MENU")
        @FrameworkGetMapping("/{id}")
        public MenuItem readMenuItem​(@ContextOperation(READ)
                                     com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo,
                                     @PathVariable("menuId")
                                     String parentMenuId,
                                     @PathVariable("id")
                                     String id)
      • createMenuItem

        @Policy(permissionRoots="MENU")
        @FrameworkPostMapping(consumes="application/json")
        public MenuItem createMenuItem​(@ContextOperation(CREATE)
                                       com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo,
                                       @PathVariable("menuId")
                                       String parentMenuId,
                                       @RequestBody
                                       MenuItem menuItem)
      • replaceMenuItem

        @Policy(permissionRoots="MENU")
        @FrameworkPutMapping(value="/{id}",
                             consumes="application/json")
        public MenuItem replaceMenuItem​(@ContextOperation(UPDATE)
                                        com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo,
                                        @PathVariable("menuId")
                                        String parentMenuId,
                                        @PathVariable("id")
                                        String id,
                                        @RequestBody
                                        MenuItem menuItem)
      • replaceAllMenuItemTranslations

        @FrameworkPutMapping(value="/{id}/translations/{locale}",
                             consumes="application/json")
        @Policy(permissionRoots="MENU")
        public com.broadleafcommerce.translation.service.dto.TranslationsPayload replaceAllMenuItemTranslations​(@ContextOperation(UPDATE)
                                                                                                                com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                                                                                @PathVariable("menuId")
                                                                                                                String parentMenuId,
                                                                                                                @PathVariable("id")
                                                                                                                String id,
                                                                                                                @PathVariable("locale")
                                                                                                                Locale locale,
                                                                                                                @RequestBody
                                                                                                                com.broadleafcommerce.translation.service.dto.TranslationsPayload translationRequest)
      • deleteMenuItem

        @Policy(permissionRoots="MENU")
        @FrameworkDeleteMapping("/{id}")
        public void deleteMenuItem​(@ContextOperation(DELETE)
                                   com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo,
                                   @PathVariable("menuId")
                                   String parentMenuId,
                                   @PathVariable("id")
                                   String id)
      • readChildrenOfMenuItem

        @Policy(permissionRoots="MENU")
        @FrameworkGetMapping("/{id}/children")
        public org.springframework.data.domain.Page<MenuItem> readChildrenOfMenuItem​(@ContextOperation(READ)
                                                                                     com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo,
                                                                                     @PathVariable("menuId")
                                                                                     String parentMenuId,
                                                                                     @PathVariable("id")
                                                                                     String id)
      • getAncestors

        @FrameworkGetMapping("/{id}/ancestors")
        @Policy(permissionRoots="MENU")
        public MenuItemAncestorList getAncestors​(@ContextOperation(READ)
                                                 com.broadleafcommerce.data.tracking.core.context.ContextInfo context,
                                                 @PathVariable("menuId")
                                                 String parentMenuId,
                                                 @PathVariable("id")
                                                 String id)
      • assertMenuIsParentOfItem

        protected void assertMenuIsParentOfItem​(@NonNull
                                                Menu menu,
                                                @NonNull
                                                MenuItem menuItem)
      • getTranslationEntityService

        protected com.broadleafcommerce.translation.service.TranslationEntityService<com.broadleafcommerce.translation.domain.Translation> getTranslationEntityService()