Interface FileSystem

    • Method Detail

      • getRootName

        FileName getRootName()
        Returns the name of the root file of this file system.
      • hasCapability

        boolean hasCapability​(Capability capability)
        Determines if this file system has a particular capability.
        Parameters:
        capability - The capability to check for.
        Returns:
        true if this filesystem has the requested capability. Note that not all files in the file system may have the capability.
      • getAttribute

        java.lang.Object getAttribute​(java.lang.String attrName)
                               throws FileSystemException
        Gets the value of an attribute of the file system.

        TODO - change to Map getAttributes() instead?

        TODO - define the standard attribute names, and define which attrs are guaranteed to be present.

        Parameters:
        attrName - The name of the attribute.
        Returns:
        The value of the attribute.
        Throws:
        FileSystemException - If the file does not exist, or is being written, or if the attribute is unknown.
        See Also:
        FileContent.getAttribute(java.lang.String)
      • setAttribute

        void setAttribute​(java.lang.String attrName,
                          java.lang.Object value)
                   throws FileSystemException
        Sets the value of an attribute of the file's content. Creates the file if it does not exist.
        Parameters:
        attrName - The name of the attribute.
        value - The value of the attribute.
        Throws:
        FileSystemException - If the file is read-only, or is being read, or if the attribute is not supported, or on error setting the attribute.
        See Also:
        FileContent.setAttribute(java.lang.String, java.lang.Object)
      • resolveFile

        FileObject resolveFile​(java.lang.String name)
                        throws FileSystemException
        Finds a file in this file system.
        Parameters:
        name - The name of the file. This must be an absolute path.
        Returns:
        The file. Never returns null.
        Throws:
        FileSystemException
      • addListener

        void addListener​(FileObject file,
                         FileListener listener)
        Adds a listener on a file in this file system.
        Parameters:
        file - The file to attach the listener to.
        listener - The listener to add.
      • removeListener

        void removeListener​(FileObject file,
                            FileListener listener)
        Removes a listener from a file in this file system.
        Parameters:
        file - The file to remove the listener from.
        listener - The listener to remove.
      • addJunction

        void addJunction​(java.lang.String junctionPoint,
                         FileObject targetFile)
                  throws FileSystemException
        Adds a junction to this file system. A junction is a link that attaches the supplied file to a point in this file system, making it look like part of the file system.
        Parameters:
        junctionPoint - The point in this file system to add the junction.
        targetFile - The file to link to.
        Throws:
        FileSystemException - If this file system does not support junctions, or the junction point or target file is invalid (the file system may not support nested junctions, for example).
      • removeJunction

        void removeJunction​(java.lang.String junctionPoint)
                     throws FileSystemException
        Removes a junction from this file system.
        Parameters:
        junctionPoint - The junction to remove.
        Throws:
        FileSystemException - On error removing the junction.
      • replicateFile

        java.io.File replicateFile​(FileObject file,
                                   FileSelector selector)
                            throws FileSystemException
        Creates a temporary local copy of a file and its descendents. If this file is already a local file, a copy is not made.

        Note that the local copy may include additonal files, that were not selected by the given selector.

        Parameters:
        file - The file to replicate.
        selector - The selector to use to select the files to replicate.
        Returns:
        The local copy of this file.
        Throws:
        FileSystemException - If this file does not exist, or on error replicating the file.
      • getFileSystemOptions

        FileSystemOptions getFileSystemOptions()
        Returns the FileSystemOptions used to instantiate this filesystem
      • getFileSystemManager

        FileSystemManager getFileSystemManager()
        Returns a reference to the FileSytemManager
      • getLastModTimeAccuracy

        double getLastModTimeAccuracy()
        Returns the accuracy of the last modification time
        Returns:
        ms 0 perfectly accurate, >0 might be off by this value e.g. sftp 1000ms