Interface LinkService


public interface LinkService
  • Method Details

    • getLinkSetting

      LinkSetting getLinkSetting(String linkSettingName, String language, org.exoplatform.services.security.Identity identity) throws IllegalAccessException
      Parameters:
      linkSettingName - LinkSetting unique name
      identity - User Acl Identity getting access to links
      Returns:
      LinkSetting corresponding to name or null if not exists
      Throws:
      IllegalAccessException - when user isn't allowed to access link settings
    • getLinkSetting

      LinkSetting getLinkSetting(String linkSettingName, String language, boolean includeTranslations)
      Parameters:
      linkSettingName - LinkSetting unique name
      language - language to consider in header field translation
      includeTranslations - whether to include translations of header or not
      Returns:
      LinkSetting corresponding to name or null if not exists
    • getLinkSetting

      LinkSetting getLinkSetting(String linkSettingName)
      Parameters:
      linkSettingName - LinkSetting unique name
      Returns:
      LinkSetting corresponding to name or null if not exists. The result will not include translation field for header
    • getLinkSetting

      LinkSetting getLinkSetting(long linkSettingId)
      Parameters:
      linkSettingId - LinkSetting technical id
      Returns:
      LinkSetting corresponding to id or null if not exists
    • getLinkSettingByLinkId

      LinkSetting getLinkSettingByLinkId(long linkSettingId)
      Parameters:
      linkSettingId - LinkSetting technical id
      Returns:
      LinkSetting corresponding to Link id or null if not exists
    • getLinkData

      LinkData getLinkData(String linkSettingName) throws org.exoplatform.commons.exception.ObjectNotFoundException
      Parameters:
      linkSettingName - LinkSetting unique name
      Returns:
      LinkData containing LinkSetting and the List of Link
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException - when LinkSetting not found
    • initLinkSetting

      LinkSetting initLinkSetting(String name, String pageReference, long spaceId)
      Creates a new Instance of LinkSetting to associate to a page
      Parameters:
      name - unique LinkSetting name
      pageReference - Page key composite reference
      spaceId - space identifier where the page is displayed
      Returns:
      created LinkSetting
    • saveLinkSetting

      LinkSetting saveLinkSetting(LinkSetting linkSetting, List<Link> links, org.exoplatform.services.security.Identity identity) throws IllegalAccessException, org.exoplatform.commons.exception.ObjectNotFoundException
      Parameters:
      linkSetting - LinkSetting to create/update
      links - List of Link to create/update
      identity - User Acl Identity making the operation
      Returns:
      saved LinkSetting
      Throws:
      IllegalAccessException - when user isn't allowed to write link settings
      org.exoplatform.commons.exception.ObjectNotFoundException - when LinkSetting not found
    • saveLinkSetting

      LinkSetting saveLinkSetting(LinkSetting linkSetting, List<Link> links) throws org.exoplatform.commons.exception.ObjectNotFoundException
      Parameters:
      linkSetting - LinkSetting to create/update
      links - List of Link to create/update
      Returns:
      saved LinkSetting
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException - when LinkSetting not found
    • saveLinkData

      void saveLinkData(String taregtLinkSettingName, LinkData linkData) throws org.exoplatform.commons.exception.ObjectNotFoundException
      Saves a complete configuration for Links representation
      Parameters:
      taregtLinkSettingName - Target LinkSetting name
      linkData - LinkData containing LinkSetting and the List of Link
      Throws:
      org.exoplatform.commons.exception.ObjectNotFoundException - when target setting name doesn't exist
    • getLinks

      List<Link> getLinks(String linkSettingName, String language, boolean includeTranslations)
      Parameters:
      linkSettingName - LinkSetting name
      language - language to consider in name and description fields translation
      includeTranslations - whether to include translations of name and description or not
      Returns:
      corresponding List of Link associated to LinkSetting name
    • getLinks

      List<Link> getLinks(String linkSettingName)
      Parameters:
      linkSettingName - LinkSetting name
      Returns:
      corresponding List of Link associated to LinkSetting name. The name and description will be null in result.
    • getLinkIconStream

      InputStream getLinkIconStream(String linkSettingName, long linkId) throws IOException
      Parameters:
      linkSettingName - LinkSetting name
      linkId - List technical identifier
      Returns:
      InputStream of Icon file if exists else null
      Throws:
      IOException - when an error happens while reading InputStream of an existing file
    • hasLinkSetting

      boolean hasLinkSetting(String linkSettingName)
      Parameters:
      linkSettingName - LinkSetting name
      Returns:
      true if setting name exists else false
    • hasAccessPermission

      boolean hasAccessPermission(String linkSettingName, org.exoplatform.services.security.Identity identity)
      Parameters:
      linkSettingName - LinkSetting name
      identity - User Acl Identity making the operation
      Returns:
      true if has read access else false
    • hasEditPermission

      boolean hasEditPermission(String linkSettingName, org.exoplatform.services.security.Identity identity)
      Parameters:
      linkSettingName - LinkSetting name
      identity - User Acl Identity making the operation
      Returns:
      true if has write access else false