Class FileSystemConnection

    • Constructor Detail

      • FileSystemConnection

        public FileSystemConnection​(String name,
                                    String basePath)
        Constructs a new instance, without having any interaction with the actual file system.
        Parameters:
        name - An identifier for this connection (cannot be null or an empty String).
        basePath - The absolute base path that is used as the context of all (relative) operations performed on this connection (cannot be null or an empty String).
    • Method Detail

      • getName

        public String getName()
        Description copied from interface: IConnection
        This method returns the name of the connection object. The name is used to uniquely identify the connection object.
        Specified by:
        getName in interface IConnection
        Returns:
        the name of the connection object.
      • getType

        public ConnectionType getType()
        Description copied from interface: IConnection
        This method returns the type of the connection object.
        Specified by:
        getType in interface IConnection
        Returns:
        the type of the connection object.
      • ensureDirectoryExists

        protected void ensureDirectoryExists​(File directory)
        Creates all directories and subdirectories in the specified path unless they already exist. Note that this path is an absolute path, not relative to basePath.
        Parameters:
        directory - The directory to create (cannot be null).
      • createFile

        public void createFile​(String path,
                               InputStream stream)
                        throws FileException
        Description copied from interface: IFileSystemConnection
        This method creates a file and writes it to the file system.
        Specified by:
        createFile in interface IFileSystemConnection
        Parameters:
        path - The location where the file needs to be stored, relative to the basePath (cannot be null or an empty String).
        stream - The file as an input stream of bytes that needs to be stored (cannot be null).
        Throws:
        FileException
      • readBytes

        public byte[] readBytes​(String path)
                         throws FileException
        Description copied from interface: IFileSystemConnection
        Returns the entire content of the file into a byte array.
        Specified by:
        readBytes in interface IFileSystemConnection
        Parameters:
        path - The path reference of the file that should be read (cannot be null or an empty String).
        Returns:
        a byte array (never null).
        Throws:
        FileException
      • readBytes

        public int readBytes​(String path,
                             long position,
                             byte[] buffer,
                             int offset,
                             int length)
                      throws FileException
        Description copied from interface: IFileSystemConnection
        Reads up to length bytes of data from a file in this connection into an array of bytes. The method blocks until some input is available.
        Specified by:
        readBytes in interface IFileSystemConnection
        Parameters:
        path - The path reference of the file that should be read (cannot be null or an empty String).
        position - the start offset in the source content.
        buffer - the buffer into which the data is read (may not be null).
        offset - the start offset in the destination array buffer
        Returns:
        the total number of bytes read into the buffer, or -1 if there is no more data because the end of the file has been reached.
        Throws:
        FileException
      • updateFile

        public void updateFile​(String path,
                               InputStream stream)
                        throws FileException
        Description copied from interface: IFileSystemConnection
        This method updates a file, that is relative to the base path.
        Specified by:
        updateFile in interface IFileSystemConnection
        Parameters:
        path - The path to the file that needs to be updated or created (cannot be null or an empty String).
        stream - The inputStream that contains the new content (cannot be null).
        Throws:
        FileException
      • createOrUpdateFile

        public void createOrUpdateFile​(String path,
                                       InputStream stream)
                                throws FileException
        Description copied from interface: IFileSystemConnection
        This method updates an existing file or otherwise creates it, if it doesn't exist.
        Specified by:
        createOrUpdateFile in interface IFileSystemConnection
        Parameters:
        path - The path to the file that needs to be updated (cannot be null or an empty String).
        stream - The inputStream that contains the new content (cannot be null).
        Throws:
        FileException