Class ZoneDAO

All Implemented Interfaces:
Component, LogEnabled, Serviceable

public class ZoneDAO extends AbstractLogEnabled implements Serviceable, Component
DAO for manipulating Zone and ZoneItem
  • Field Details

    • ROLE

      public static final String ROLE
      Avalon Role
  • Constructor Details

  • Method Details

    • service

      public void service(ServiceManager smanager) throws ServiceException
      Specified by:
      service in interface Serviceable
      Throws:
      ServiceException
    • addSharedContent

      public Map<String,Object> addSharedContent(String pageId, String zoneName, String contentId, String viewName)
      Insert a shared content into a zone
      Parameters:
      pageId - The page id
      zoneName - The zone name
      contentId - The content id to insert
      viewName - The view name
      Returns:
      The result map
    • addContentReference

      protected ZoneItem addContentReference(ModifiableZone zone, Content content, String viewName)
      Add the given content as a zone item in the given zone.
      Parameters:
      zone - the zone to add the content in.
      content - the content to add.
      viewName - the view name.
      Returns:
      the added zone item
    • createSharedContent

      protected ZoneItem createSharedContent(ModifiableZone zone, DefaultContent originalContent, String viewName)
      Create a shared content referencing the given content and add the shared one to the zone.
      Parameters:
      zone - the zone to create the shared content in.
      originalContent - the original content.
      viewName - the view name.
      Returns:
      the added zone item
    • removeZoneItem

      public void removeZoneItem(String zoneItemId)
      Remove a zone item from page
      Parameters:
      zoneItemId - The id of zone item to delete
    • getZoneItemElementInfo

      Get the unreferenced contents of a Page or a ZoneItem
      Parameters:
      id - The id of page or zone item
      Returns:
      The list of unreferenced contents
    • getContent

      public Content getContent(ZoneItem zoneItem)
      Get the content of a zone item. Can be null if zone item is a service zone item.
      Parameters:
      zoneItem - The zone item
      Returns:
      The content or null if zone item is a service zone item.
    • getService

      public Service getService(ZoneItem zoneItem)
      Get the service of a zone item. Can be null if zone item is not a service zone item.
      Parameters:
      zoneItem - The zone item
      Returns:
      The service or null if zone item is not a service zone item.
    • moveZoneItemTo

      public boolean moveZoneItemTo(String zoneItemId, String zoneName, boolean beforeOrAfter, String beforeOrAfterItemId, String pageId) throws UnknownAmetysObjectException, AmetysRepositoryException, javax.jcr.RepositoryException
      Move a zone item of a page before/after another zone item of the same page
      Parameters:
      zoneItemId - The identifier of the zone item to move
      zoneName - The destination zone name
      beforeOrAfter - true if before or false after
      beforeOrAfterItemId - The target zone item can be null
      pageId - The concerned page id
      Returns:
      true when success
      Throws:
      UnknownAmetysObjectException - If an error occurred
      AmetysRepositoryException - If an error occurred
      javax.jcr.RepositoryException - If an error occurred
    • _checkZoneItem

      protected void _checkZoneItem(ModifiableSitemapElement page, String zoneName, ZoneItem zoneItem, UserIdentity user)
      Check if the zone item can be moved to the given zone of the given page.
      Parameters:
      page - the page.
      zoneName - the zone name.
      zoneItem - the zone item to move.
      user - the user