Class DefaultPosixFiles

java.lang.Object
net.rubygrapefruit.platform.internal.AbstractFiles
net.rubygrapefruit.platform.internal.DefaultPosixFiles
All Implemented Interfaces:
Files, NativeIntegration, PosixFiles

public class DefaultPosixFiles extends AbstractFiles implements PosixFiles
  • Constructor Details

    • DefaultPosixFiles

      public DefaultPosixFiles()
  • Method Details

    • stat

      public PosixFileInfo stat(File file) throws NativeException
      Description copied from interface: PosixFiles
      Returns basic information about the given file. Returns whatever file details can be efficiently calculated in a single system call, which is more efficient that querying these details separately.

      When the file references a symlink, details about the symlink is returned, not the target of the symlink.

      Specified by:
      stat in interface Files
      Specified by:
      stat in interface PosixFiles
      Parameters:
      file - The path of the file to get details of. Follows symlinks to the parent directory of this file.
      Returns:
      Details of the file. Returns details with type FileInfo.Type.Missing for a file that does not exist.
      Throws:
      NativeException - On failure to query the file information.
    • stat

      public PosixFileInfo stat(File file, boolean linkTarget) throws NativeException
      Description copied from interface: PosixFiles
      Returns basic information about the given file. Returns whatever file details can be efficiently calculated in a single system call, which is more efficient that querying these details separately.
      Specified by:
      stat in interface Files
      Specified by:
      stat in interface PosixFiles
      Parameters:
      file - The path of the file to get details of. Follows symlinks to the parent directory of this file.
      linkTarget - When true and the file is a symlink, return details of the target of the symlink instead of details of the symlink itself.
      Returns:
      Details of the file. Returns details with type FileInfo.Type.Missing for a file that does not exist.
      Throws:
      NativeException - On failure to query the file information.
    • listDir

      public List<DirEntry> listDir(File dir) throws NativeException
      Description copied from interface: Files
      Lists the entries of the given directory.

      When a directory entry is a symlink, details about the symlink is returned, not the target of the symlink.

      Specified by:
      listDir in interface Files
      Parameters:
      dir - The path of the directory to list. Follows symlinks to this directory.
      Throws:
      NativeException - On failure.
    • listDir

      public List<DirEntry> listDir(File dir, boolean linkTarget) throws NativeException
      Description copied from interface: Files
      Lists the entries of the given directory.
      Specified by:
      listDir in interface Files
      Parameters:
      dir - The path of the directory to list. Follows symlinks to this directory.
      linkTarget - When true and a directory entry is a symlink, return details of the target of the symlink instead of details of the symlink itself.
      Throws:
      NativeException - On failure.
    • setMode

      public void setMode(File file, int perms)
      Description copied from interface: PosixFiles
      Sets the mode for the given file.
      Specified by:
      setMode in interface PosixFiles
    • getMode

      public int getMode(File file)
      Description copied from interface: PosixFiles
      Gets the mode for the given file.
      Specified by:
      getMode in interface PosixFiles
    • readLink

      public String readLink(File link) throws NativeException
      Description copied from interface: PosixFiles
      Reads the contents of a symbolic link.
      Specified by:
      readLink in interface PosixFiles
      Throws:
      NativeException - On failure.
    • symlink

      public void symlink(File link, String contents) throws NativeException
      Description copied from interface: PosixFiles
      Creates a symbolic link with given contents.
      Specified by:
      symlink in interface PosixFiles
      Throws:
      NativeException - On failure.