Class NavigationLayoutService

java.lang.Object
io.meeds.layout.service.NavigationLayoutService

@Service public class NavigationLayoutService extends Object
  • Field Details

    • PAGE_UNREACHABLE_EVENT

      public static final String PAGE_UNREACHABLE_EVENT
      Broadcast when a page stops being reachable through any navigation node, while the page itself still exists. Deliberately NOT LayoutService.PAGE_REMOVED: that event means the page's own data is gone, and a listener acting on it is entitled to clean up everything attached to the page — which would destroy live data here.
      See Also:
  • Constructor Details

    • NavigationLayoutService

      public NavigationLayoutService()
  • Method Details

    • createNode

      public org.exoplatform.portal.mop.navigation.NodeData createNode(NavigationCreateModel nodeModel, String username) throws org.exoplatform.commons.exception.ObjectNotFoundException, IllegalAccessException, IllegalArgumentException
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException
      IllegalAccessException
      IllegalArgumentException
    • createDraftNode

      public org.exoplatform.portal.mop.navigation.NodeData createDraftNode(Long nodeId, String username) throws org.exoplatform.commons.exception.ObjectNotFoundException, IllegalAccessException
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException
      IllegalAccessException
    • updateNode

      public void updateNode(long nodeId, NavigationUpdateModel nodeModel, String username) throws org.exoplatform.commons.exception.ObjectNotFoundException, IllegalAccessException, IllegalArgumentException
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException
      IllegalAccessException
      IllegalArgumentException
    • deleteNode

      public void deleteNode(long nodeId, long delay, String username) throws org.exoplatform.commons.exception.ObjectNotFoundException, IllegalAccessException
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException
      IllegalAccessException
    • undoDeleteNode

      public void undoDeleteNode(long nodeId, String username) throws org.exoplatform.commons.exception.ObjectNotFoundException
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException
    • moveNode

      public void moveNode(long nodeId, Long destinationParentId, Long previousNodeId, String username) throws org.exoplatform.commons.exception.ObjectNotFoundException, IllegalAccessException
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException
      IllegalAccessException
    • getNode

      public org.exoplatform.portal.mop.navigation.NodeData getNode(long nodeId, String username) throws org.exoplatform.commons.exception.ObjectNotFoundException, IllegalAccessException
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException
      IllegalAccessException
    • getNodeLabels

      public NodeLabel getNodeLabels(long nodeId, String username) throws org.exoplatform.commons.exception.ObjectNotFoundException, IllegalAccessException
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException
      IllegalAccessException
    • getNodeUri

      public String getNodeUri(long nodeId, String username) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException
      Throws:
      IllegalAccessException
      org.exoplatform.commons.exception.ObjectNotFoundException
    • getNodeUri

      public String getNodeUri(org.exoplatform.portal.mop.navigation.NodeData node)
    • getReachablePages

      public Set<org.exoplatform.portal.mop.page.PageKey> getReachablePages(org.exoplatform.portal.mop.SiteKey siteKey)
      Parameters:
      siteKey - the site whose navigation is walked
      Returns:
      the pages that a node of the site's navigation leads to, pages of other sites included, whereas the search index resolves a page's path in its own site's navigation
    • deleteNode

      public void deleteNode(long nodeId)
    • findNode

      public org.exoplatform.portal.mop.navigation.NodeContext<org.exoplatform.portal.mop.navigation.NodeContext<Object>> findNode(org.exoplatform.portal.mop.navigation.NodeContext<org.exoplatform.portal.mop.navigation.NodeContext<Object>> node, String name)
    • toNodeLabel

      public NodeLabel toNodeLabel(Map<Locale,org.exoplatform.portal.mop.State> nodeLabels)