Class FolderTool


  • public class FolderTool
    extends Object
    Utility methods to handle folders from within the Automation
    Since:
    7.3
    Author:
    Marco Meschieri - LogicalDOC
    • Constructor Detail

      • FolderTool

        public FolderTool()
    • Method Detail

      • displayUrl

        public String displayUrl​(long tenantId,
                                 long folderId)
        Prints the URL to display the folder inside the User Interface
        Parameters:
        tenantId - identifier of the tenant
        folderId - identifier of the folder
        Returns:
        the display URL
      • displayUrl

        public String displayUrl​(Folder folder)
        Prints the URL to display the folder inside the User Interface
        Parameters:
        folder - the folder to display
        Returns:
        the display URL
      • displayUrl

        public String displayUrl​(FolderHistory history)
        Prints the URL to display the folder inside the User Interface
        Parameters:
        history - event from which to get the folder's to display
        Returns:
        the display URL
      • getPath

        public String getPath​(Long folderId)
        Calculates the full path of a folder
        Parameters:
        folderId - identifier of the folder
        Returns:
        the path
      • findByPath

        public Folder findByPath​(String path)
        Finds the folder by it's path
        Parameters:
        path - the path to process
        Returns:
        the found folder
      • findByPath

        public Folder findByPath​(String path,
                                 Long tenantId)
        Finds the folder by it's path
        Parameters:
        path - the path to process
        tenantId - identifier of the tenant
        Returns:
        the found folder
      • store

        public void store​(Folder folder)
        Saves / updates a folder into the database
        Parameters:
        folder - the folder to save
      • store

        public void store​(Folder folder,
                          String username)
        Saves / updates a folder into the database
        Parameters:
        folder - the folder to save
        username - the user in whose name the method is run
      • initialize

        public void initialize​(Folder folder)
        Initializes lazy loaded collections
        Parameters:
        folder - the folder to initialize
      • delete

        public void delete​(long folderId,
                           String username)
                    throws Exception
        Delete a folder
        Parameters:
        folderId - identifier of the folder
        username - the user in whose name the method is run
        Throws:
        Exception - a generic error happened
      • move

        public void move​(Folder folder,
                         String targetPath,
                         String username)
                  throws Exception
        Moves a folder into a target folder
        Parameters:
        folder - the folder to move
        targetPath - the full path of the target folder(if it does not exist it will be created)
        username - the user in whose name the method is run
        Throws:
        Exception - a generic error happened
      • copy

        public Folder copy​(Folder source,
                           String targetPath,
                           boolean foldersOnly,
                           String securityOption,
                           String username)
                    throws Exception
        Copies a folder into another folder
        Parameters:
        source - the folder to copy
        targetPath - the full path of the target folder(if it does not exist it will be created)
        foldersOnly - true if only the folders tree has to be copied; if false, the documents will also be copied
        securityOption - How to assign the security policies to the newly created folders:
        • null or none: empty security policies
        • inherit: the new folder will point to the parent for the security policies
        • replicate: the new folder will have a copy of the security policies of the source folder
        username - the user in whose name the method is run
        Returns:
        The new folder created
        Throws:
        Exception - a generic error happened
      • merge

        public void merge​(Folder source,
                          Folder target,
                          String username)
                   throws Exception
        Merges a folder into another folder
        Parameters:
        source - the folder to merge into the target
        target - the final container
        username - the user in whose name the method is run
        Throws:
        Exception - a generic error happened
      • createPath

        public Folder createPath​(Folder folder,
                                 String targetPath,
                                 String username)
        Creates a path, all existing nodes in the specified path will be reused
        Parameters:
        folder - folder used to take the root folder in case the targetPath represents a relative path
        targetPath - absolute or relative(in relation to the document's parent folder) path to be created
        username - the user in whose name the method is run
        Returns:
        the folder leaf of the path