Class SecurityManagerImpl

java.lang.Object
com.logicaldoc.core.security.SecurityManagerImpl
All Implemented Interfaces:
SecurityManager

public class SecurityManagerImpl extends Object implements SecurityManager
Basic implementation of SecurityManager
Since:
3.0
Author:
Marco Meschieri - LogicalDOC
  • Method Details

    • setMenuDAO

      public void setMenuDAO(MenuDAO menuDAO)
    • setGroupDAO

      public void setGroupDAO(GroupDAO groupDAO)
    • setUserDAO

      public void setUserDAO(UserDAO userDAO)
    • getAllowedGroups

      public Set<Group> getAllowedGroups(long menuId)
      Description copied from interface: SecurityManager
      Retrieves the collection of groups that can access the given menu
      Specified by:
      getAllowedGroups in interface SecurityManager
      Parameters:
      menuId - The menu to consider
      Returns:
      The collection of allowed groups
    • isMemberOf

      public boolean isMemberOf(long userId, long groupId)
      Description copied from interface: SecurityManager
      Checks if a given user is member of a particular group
      Specified by:
      isMemberOf in interface SecurityManager
      Parameters:
      userId - The user identifier
      groupId - The group identifier
      Returns:
      true only if the user belongs to the group
    • isMemberOf

      public boolean isMemberOf(long userId, String groupName)
      Description copied from interface: SecurityManager
      Checks if a given user is member of a particular group
      Specified by:
      isMemberOf in interface SecurityManager
      Parameters:
      userId - The user identifier
      groupName - The group name
      Returns:
      true only if the user belongs to the group
    • isWriteEnabled

      public boolean isWriteEnabled(long docId, long userId) throws PersistenceException
      Description copied from interface: SecurityManager
      This method is looking up for writing rights for a folder and an user.
      Specified by:
      isWriteEnabled in interface SecurityManager
      Parameters:
      docId - ID of the document
      userId - ID of the user
      Returns:
      if the user has the write permission on the document
      Throws:
      PersistenceException - error at data layer
    • isReadEnabled

      public boolean isReadEnabled(long docId, long userId) throws PersistenceException
      Specified by:
      isReadEnabled in interface SecurityManager
      Throws:
      PersistenceException
    • isPrintEnabled

      public boolean isPrintEnabled(long docId, long userId) throws PersistenceException
      Specified by:
      isPrintEnabled in interface SecurityManager
      Throws:
      PersistenceException
    • isDownloadEnabled

      public boolean isDownloadEnabled(long docId, long userId) throws PersistenceException
      Specified by:
      isDownloadEnabled in interface SecurityManager
      Throws:
      PersistenceException
    • isPermissionEnabled

      public boolean isPermissionEnabled(Permission permission, long docId, long userId) throws PersistenceException
      Description copied from interface: SecurityManager
      This method checks if the given permission is enabled for a document and an user.
      Specified by:
      isPermissionEnabled in interface SecurityManager
      Parameters:
      permission - the permission to check
      docId - ID of the document
      userId - ID of the user
      Returns:
      if the permission is granted to the user on the document
      Throws:
      PersistenceException - error at data layer
    • getEnabledPermissions

      public Set<Permission> getEnabledPermissions(long docId, long userId) throws PersistenceException
      Description copied from interface: SecurityManager
      Finds all permissions of a user enabled on the specified document
      Specified by:
      getEnabledPermissions in interface SecurityManager
      Parameters:
      docId - ID of the document
      userId - ID of the user
      Returns:
      Collection of permissions granted to the user on the document
      Throws:
      PersistenceException - error at data layer
    • setFolderDAO

      public void setFolderDAO(FolderDAO folderDAO)
    • setDocumentDAO

      public void setDocumentDAO(DocumentDAO documentDAO)