Files

sealed
trait Files[F[_]] extends FilesPlatform[F]

Provides operations related to working with files in the effect F.

An instance is available for any effect F which has an Async[F] instance.

The operations on this trait are implemented for both the JVM and Node.js. Some operations only work on POSIX file systems, though such methods generally have "Posix" in their names (e.g. getPosixPermissions). A small number of methods are only available on the JVM (e.g. variant of list which takes a glob pattern) and are indicated as such in their ScalaDoc.

Companion
object
trait FilesPlatform[F]
trait DeprecatedFilesApi[F]
class Object
trait Matchable
class Any

Value members

Abstract methods

def copy(source: Path, target: Path, flags: CopyFlags): F[Unit]

Copies the source to the target, following any directives supplied in the flags. By default, an error occurs if the target already exists, though this can be overriden via CopyFlag.ReplaceExisting.

Copies the source to the target, following any directives supplied in the flags. By default, an error occurs if the target already exists, though this can be overriden via CopyFlag.ReplaceExisting.

def createDirectories(path: Path, permissions: Option[Permissions]): F[Unit]

Creates the specified directory and any parent directories, using the supplied permissions for any directories that get created as a result of this operation. For example if /a exists and createDirectories(Path("/a/b/c"), Some(p)) is called, /a/b and /a/b/c are created with permissions set to p on each (and the permissions of /a remain unmodified).

Creates the specified directory and any parent directories, using the supplied permissions for any directories that get created as a result of this operation. For example if /a exists and createDirectories(Path("/a/b/c"), Some(p)) is called, /a/b and /a/b/c are created with permissions set to p on each (and the permissions of /a remain unmodified).

def createDirectory(path: Path, permissions: Option[Permissions]): F[Unit]

Creates the specified directory with the specified permissions. Fails if the parent path does not already exist.

Creates the specified directory with the specified permissions. Fails if the parent path does not already exist.

def createFile(path: Path, permissions: Option[Permissions]): F[Unit]

Creates the specified file with the specified permissions. Fails if the parent path does not already exist.

Creates the specified file with the specified permissions. Fails if the parent path does not already exist.

def createTempDirectory(dir: Option[Path], prefix: String, permissions: Option[Permissions]): F[Path]

Creates a temporary directory. The created directory is not automatically deleted - it is up to the operating system to decide when the file is deleted. Alternatively, use tempDirectory to get a resource which deletes upon resource finalization.

Creates a temporary directory. The created directory is not automatically deleted - it is up to the operating system to decide when the file is deleted. Alternatively, use tempDirectory to get a resource which deletes upon resource finalization.

Value Params
dir

the directory which the temporary directory will be created in. Pass none to use the default system temp directory

permissions

permissions to set on the created directory

prefix

the prefix string to be used in generating the directory's name

def createTempFile(dir: Option[Path], prefix: String, suffix: String, permissions: Option[Permissions]): F[Path]

Creates a temporary file. The created file is not automatically deleted - it is up to the operating system to decide when the file is deleted. Alternatively, use tempFile to get a resource which deletes upon resource finalization.

Creates a temporary file. The created file is not automatically deleted - it is up to the operating system to decide when the file is deleted. Alternatively, use tempFile to get a resource which deletes upon resource finalization.

Value Params
dir

the directory which the temporary file will be created in. Pass none to use the default system temp directory

permissions

permissions to set on the created file

prefix

the prefix string to be used in generating the file's name

suffix

the suffix string to be used in generating the file's name

def delete(path: Path): F[Unit]

Deletes the specified file or empty directory, failing if it does not exist.

Deletes the specified file or empty directory, failing if it does not exist.

def deleteIfExists(path: Path): F[Boolean]

Deletes the specified file or empty directory, passing if it does not exist.

Deletes the specified file or empty directory, passing if it does not exist.

def deleteRecursively(path: Path, followLinks: Boolean): F[Unit]

Deletes the specified file or directory. If the path is a directory and is non-empty, its contents are recursively deleted. Symbolic links are followed when followLinks is true.

Deletes the specified file or directory. If the path is a directory and is non-empty, its contents are recursively deleted. Symbolic links are followed when followLinks is true.

def exists(path: Path, followLinks: Boolean): F[Boolean]

Returns true if the specified path exists. Symbolic links are followed when followLinks is true. For example, if the symbolic link foo points to bar and bar does not exist, exists(Path("foo"), true) returns false but exists(Path("foo"), false) returns true.

Returns true if the specified path exists. Symbolic links are followed when followLinks is true. For example, if the symbolic link foo points to bar and bar does not exist, exists(Path("foo"), true) returns false but exists(Path("foo"), false) returns true.

def getBasicFileAttributes(path: Path, followLinks: Boolean): F[BasicFileAttributes]

Gets BasicFileAttributes for the supplied path. Symbolic links are not followed when followLinks is true.

Gets BasicFileAttributes for the supplied path. Symbolic links are not followed when followLinks is true.

def getLastModifiedTime(path: Path, followLinks: Boolean): F[FiniteDuration]

Gets the last modified time of the supplied path. The last modified time is represented as a duration since the Unix epoch. Symbolic links are followed when followLinks is true.

Gets the last modified time of the supplied path. The last modified time is represented as a duration since the Unix epoch. Symbolic links are followed when followLinks is true.

def getPosixFileAttributes(path: Path, followLinks: Boolean): F[PosixFileAttributes]

Gets the POSIX attributes for the supplied path. Symbolic links are followed when followLinks is true.

Gets the POSIX attributes for the supplied path. Symbolic links are followed when followLinks is true.

def getPosixPermissions(path: Path, followLinks: Boolean): F[PosixPermissions]

Gets the POSIX permissions of the supplied path. Symbolic links are followed when followLinks is true.

Gets the POSIX permissions of the supplied path. Symbolic links are followed when followLinks is true.

def isDirectory(path: Path, followLinks: Boolean): F[Boolean]

Returns true if the supplied path exists and is a directory. Symbolic links are followed when followLinks is true.

Returns true if the supplied path exists and is a directory. Symbolic links are followed when followLinks is true.

def isExecutable(path: Path): F[Boolean]

Returns true if the supplied path exists and is executable.

Returns true if the supplied path exists and is executable.

def isHidden(path: Path): F[Boolean]

Returns true if the supplied path is a hidden file (note: may not check for existence).

Returns true if the supplied path is a hidden file (note: may not check for existence).

def isReadable(path: Path): F[Boolean]

Returns true if the supplied path exists and is readable.

Returns true if the supplied path exists and is readable.

def isRegularFile(path: Path, followLinks: Boolean): F[Boolean]

Returns true if the supplied path is a regular file. Symbolic links are followed when followLinks is true.

Returns true if the supplied path is a regular file. Symbolic links are followed when followLinks is true.

def isSameFile(path1: Path, path2: Path): F[Boolean]

Returns true if the supplied paths reference the same file.

Returns true if the supplied paths reference the same file.

def isWritable(path: Path): F[Boolean]

Returns true if the supplied path exists and is writable.

Returns true if the supplied path exists and is writable.

def list(path: Path): Stream[F, Path]

Gets the contents of the specified directory.

Gets the contents of the specified directory.

def move(source: Path, target: Path, flags: CopyFlags): F[Unit]

Moves the source to the target, following any directives supplied in the flags. By default, an error occurs if the target already exists, though this can be overriden via CopyFlag.ReplaceExisting.

Moves the source to the target, following any directives supplied in the flags. By default, an error occurs if the target already exists, though this can be overriden via CopyFlag.ReplaceExisting.

def open(path: Path, flags: Flags): Resource[F, FileHandle[F]]

Creates a FileHandle for the file at the supplied Path. The supplied flags indicate the mode used when opening the file (e.g. read, write, append) as well as the ability to specify additional options (e.g. automatic deletion at process exit).

Creates a FileHandle for the file at the supplied Path. The supplied flags indicate the mode used when opening the file (e.g. read, write, append) as well as the ability to specify additional options (e.g. automatic deletion at process exit).

def readAll(path: Path, chunkSize: Int, flags: Flags): Stream[F, Byte]

Reads all bytes from the file specified, reading in chunks up to the specified limit, and using the supplied flags to open the file.

Reads all bytes from the file specified, reading in chunks up to the specified limit, and using the supplied flags to open the file.

def readCursor(path: Path, flags: Flags): Resource[F, ReadCursor[F]]

Returns a ReadCursor for the specified path, using the supplied flags when opening the file.

Returns a ReadCursor for the specified path, using the supplied flags when opening the file.

def readRange(path: Path, chunkSize: Int, start: Long, end: Long): Stream[F, Byte]

Reads a range of data synchronously from the file at the specified path. start is inclusive, end is exclusive, so when start is 0 and end is 2, two bytes are read.

Reads a range of data synchronously from the file at the specified path. start is inclusive, end is exclusive, so when start is 0 and end is 2, two bytes are read.

def realPath(path: Path): F[Path]

Returns the real path i.e. the actual location of path. The precise definition of this method is implementation dependent but in general it derives from this path, an absolute path that locates the same file as this path, but with name elements that represent the actual name of the directories and the file.

Returns the real path i.e. the actual location of path. The precise definition of this method is implementation dependent but in general it derives from this path, an absolute path that locates the same file as this path, but with name elements that represent the actual name of the directories and the file.

def setFileTimes(path: Path, lastModified: Option[FiniteDuration], lastAccess: Option[FiniteDuration], creationTime: Option[FiniteDuration], followLinks: Boolean): F[Unit]

Sets the last modified, last access, and creation time fields of the specified path.

Sets the last modified, last access, and creation time fields of the specified path.

Times which are supplied as None are not modified. E.g., setTimes(p, Some(t), Some(t), None, false) sets the last modified and last access time to t and does not change the creation time.

If the path is a symbolic link and followLinks is true, the target of the link as times set. Otherwise, the link itself has times set.

def setPosixPermissions(path: Path, permissions: PosixPermissions): F[Unit]

Sets the POSIX permissions for the supplied path. Fails on non-POSIX file systems.

Sets the POSIX permissions for the supplied path. Fails on non-POSIX file systems.

def size(path: Path): F[Long]

Gets the size of the supplied path, failing if it does not exist.

Gets the size of the supplied path, failing if it does not exist.

def tail(path: Path, chunkSize: Int, offset: Long, pollDelay: FiniteDuration): Stream[F, Byte]

Returns an infinite stream of data from the file at the specified path. Starts reading from the specified offset and upon reaching the end of the file, polls every pollDuration for additional updates to the file.

Returns an infinite stream of data from the file at the specified path. Starts reading from the specified offset and upon reaching the end of the file, polls every pollDuration for additional updates to the file.

Read operations are limited to emitting chunks of the specified chunk size but smaller chunks may occur.

If an error occurs while reading from the file, the overall stream fails.

def tempDirectory(dir: Option[Path], prefix: String, permissions: Option[Permissions]): Resource[F, Path]

Creates a temporary directory and deletes it upon finalization of the returned resource.

Creates a temporary directory and deletes it upon finalization of the returned resource.

Value Params
dir

the directory which the temporary directory will be created in. Pass in None to use the default system temp directory

permissions

permissions to set on the created file

prefix

the prefix string to be used in generating the directory's name

Returns

a resource containing the path of the temporary directory

def tempFile(dir: Option[Path], prefix: String, suffix: String, permissions: Option[Permissions]): Resource[F, Path]

Creates a temporary file and deletes it upon finalization of the returned resource.

Creates a temporary file and deletes it upon finalization of the returned resource.

Value Params
dir

the directory which the temporary file will be created in. Pass in None to use the default system temp directory

permissions

permissions to set on the created file

prefix

the prefix string to be used in generating the file's name

suffix

the suffix string to be used in generating the file's name

Returns

a resource containing the path of the temporary file

def walk(start: Path, maxDepth: Int, followLinks: Boolean): Stream[F, Path]

Creates a stream of paths contained in a given file tree down to a given depth.

Creates a stream of paths contained in a given file tree down to a given depth.

def writeAll(path: Path, flags: Flags): (F, Byte) => INothing

Writes all data to the file at the specified path, using the specified flags to open the file.

Writes all data to the file at the specified path, using the specified flags to open the file.

def writeCursor(path: Path, flags: Flags): Resource[F, WriteCursor[F]]

Returns a WriteCursor for the specified path.

Returns a WriteCursor for the specified path.

def writeCursorFromFileHandle(file: FileHandle[F], append: Boolean): F[WriteCursor[F]]

Returns a WriteCursor for the specified file handle.

Returns a WriteCursor for the specified file handle.

If append is true, the offset is initialized to the current size of the file.

def writeRotate(computePath: F[Path], limit: Long, flags: Flags): (F, Byte) => INothing

Writes all data to a sequence of files, each limited in size to limit.

Writes all data to a sequence of files, each limited in size to limit.

The computePath operation is used to compute the path of the first file and every subsequent file. Typically, the next file should be determined by analyzing the current state of the filesystem -- e.g., by looking at all files in a directory and generating a unique name.

Concrete methods

def copy(source: Path, target: Path): F[Unit]

Copies the source to the target, failing if source does not exist or the target already exists. To replace the existing instead, use copy(source, target, CopyFlags(CopyFlag.ReplaceExisting)).

Copies the source to the target, failing if source does not exist or the target already exists. To replace the existing instead, use copy(source, target, CopyFlags(CopyFlag.ReplaceExisting)).

def createDirectories(path: Path): F[Unit]

Creates the specified directory and any non-existant parent directories.

Creates the specified directory and any non-existant parent directories.

def createDirectory(path: Path): F[Unit]

Creates the specified directory. Fails if the parent path does not already exist.

Creates the specified directory. Fails if the parent path does not already exist.

def createFile(path: Path): F[Unit]

Creates the specified file. Fails if the parent path does not already exist.

Creates the specified file. Fails if the parent path does not already exist.

Creates a temporary directory. The created directory is not automatically deleted - it is up to the operating system to decide when the file is deleted. Alternatively, use tempDirectory to get a resource which deletes upon resource finalization.

Creates a temporary directory. The created directory is not automatically deleted - it is up to the operating system to decide when the file is deleted. Alternatively, use tempDirectory to get a resource which deletes upon resource finalization.

Creates a temporary file. The created file is not automatically deleted - it is up to the operating system to decide when the file is deleted. Alternatively, use tempFile to get a resource, which is deleted upon resource finalization.

Creates a temporary file. The created file is not automatically deleted - it is up to the operating system to decide when the file is deleted. Alternatively, use tempFile to get a resource, which is deleted upon resource finalization.

def deleteRecursively(path: Path): F[Unit]

Deletes the specified file or directory. If the path is a directory and is non-empty, its contents are recursively deleted. Symbolic links are not followed (but are deleted).

Deletes the specified file or directory. If the path is a directory and is non-empty, its contents are recursively deleted. Symbolic links are not followed (but are deleted).

def exists(path: Path): F[Boolean]

Returns true if the specified path exists. Symbolic links are followed -- see the overload for more details on links.

Returns true if the specified path exists. Symbolic links are followed -- see the overload for more details on links.

Gets BasicFileAttributes for the supplied path. Symbolic links are not followed.

Gets BasicFileAttributes for the supplied path. Symbolic links are not followed.

def getLastModifiedTime(path: Path): F[FiniteDuration]

Gets the last modified time of the supplied path. The last modified time is represented as a duration since the Unix epoch. Symbolic links are followed.

Gets the last modified time of the supplied path. The last modified time is represented as a duration since the Unix epoch. Symbolic links are followed.

Gets the POSIX attributes for the supplied path. Symbolic links are not followed.

Gets the POSIX attributes for the supplied path. Symbolic links are not followed.

Gets the POSIX permissions of the supplied path. Symbolic links are followed.

Gets the POSIX permissions of the supplied path. Symbolic links are followed.

def isDirectory(path: Path): F[Boolean]

Returns true if the supplied path exists and is a directory. Symbolic links are followed.

Returns true if the supplied path exists and is a directory. Symbolic links are followed.

def isRegularFile(path: Path): F[Boolean]

Returns true if the supplied path is a regular file. Symbolic links are followed.

Returns true if the supplied path is a regular file. Symbolic links are followed.

def move(source: Path, target: Path): F[Unit]

Moves the source to the target, failing if source does not exist or the target already exists. To replace the existing instead, use move(source, target, CopyFlags(CopyFlag.ReplaceExisting)).

Moves the source to the target, failing if source does not exist or the target already exists. To replace the existing instead, use move(source, target, CopyFlags(CopyFlag.ReplaceExisting)).

def readAll(path: Path): Stream[F, Byte]

Reads all bytes from the file specified.

Reads all bytes from the file specified.

def tempDirectory: Resource[F, Path]

Creates a temporary directory and deletes it upon finalization of the returned resource.

Creates a temporary directory and deletes it upon finalization of the returned resource.

def tempFile: Resource[F, Path]

Creates a temporary file and deletes it upon finalization of the returned resource.

Creates a temporary file and deletes it upon finalization of the returned resource.

def walk(start: Path): Stream[F, Path]

Creates a stream of paths contained in a given file tree. Depth is unlimited.

Creates a stream of paths contained in a given file tree. Depth is unlimited.

def writeAll(path: Path): (F, Byte) => INothing

Writes all data to the file at the specified path.

Writes all data to the file at the specified path.

The file is created if it does not exist and is truncated. Use writeAll(path, Flags.Append) to append to the end of the file, or pass other flags to further customize behavior.

Inherited methods

protected
def _runJavaCollectionResource[C <: AutoCloseable](javaCollection: F[C], collectionIterator: C => Iterator[Path]): Stream[F, Path]
Inherited from
DeprecatedFilesApi
def list(path: Path, glob: String): Stream[F, Path]

Gets the contents of the specified directory whose paths match the supplied glob pattern.

Gets the contents of the specified directory whose paths match the supplied glob pattern.

Example glob patterns: *.scala, *.{scala,java}

JVM only.

Inherited from
FilesPlatform
def openFileChannel(channel: F[FileChannel]): Resource[F, FileHandle[F]]

Creates a FileHandle for the supplied NIO FileChannel. JVM only.

Creates a FileHandle for the supplied NIO FileChannel. JVM only.

Inherited from
FilesPlatform
def watch(path: Path, types: Seq[EventType], modifiers: Seq[Modifier], pollTimeout: FiniteDuration): Stream[F, Event]

Watches a single path.

Watches a single path.

Alias for creating a watcher and watching the supplied path, releasing the watcher when the resulting stream is finalized.

JVM only.

Inherited from
FilesPlatform
def watch(path: Path): Stream[F, Event]

Watches a single path.

Watches a single path.

Alias for creating a watcher and watching the supplied path, releasing the watcher when the resulting stream is finalized.

JVM only.

Inherited from
FilesPlatform

Deprecated and Inherited methods

@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def copy(source: Path, target: Path, flags: Seq[CopyOption]): F[Path]

Copies a file from the source to the target path,

Copies a file from the source to the target path,

By default, the copy fails if the target file already exists or is a symbolic link.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def createDirectories(path: Path, flags: Seq[FileAttribute[_]]): F[Path]

Creates a new directory at the given path and creates all nonexistent parent directories beforehand.

Creates a new directory at the given path and creates all nonexistent parent directories beforehand.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def createDirectory(path: Path, flags: Seq[FileAttribute[_]]): F[Path]

Creates a new directory at the given path.

Creates a new directory at the given path.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def delete(path: Path): F[Unit]

Deletes a file.

Deletes a file.

If the file is a directory then the directory must be empty for this action to succeed. This action will fail if the path doesn't exist.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use deleteRecursively", "3.1.0")
def deleteDirectoryRecursively(path: Path, options: Set[FileVisitOption]): F[Unit]

Recursively delete a directory

Recursively delete a directory

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def deleteIfExists(path: Path): F[Boolean]

Like delete, but will not fail when the path doesn't exist.

Like delete, but will not fail when the path doesn't exist.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use list(path, glob)", "3.1.0")
def directoryStream(path: Path, glob: String): Stream[F, Path]

Creates a stream of Paths inside a directory which match the given glob.

Creates a stream of Paths inside a directory which match the given glob.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use list(path).filter(p)", "3.1.0")
def directoryStream(path: Path, filter: Path => Boolean): Stream[F, Path]

Creates a stream of Paths inside a directory, filtering the results by the given predicate.

Creates a stream of Paths inside a directory, filtering the results by the given predicate.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use list(path)", "3.1.0")
def directoryStream(path: Path): Stream[F, Path]

Creates a stream of Paths inside a directory.

Creates a stream of Paths inside a directory.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def exists(path: Path, flags: Seq[LinkOption]): F[Boolean]

Checks if a file exists.

Checks if a file exists.

Note that the result of this method is immediately outdated. If this method indicates the file exists then there is no guarantee that a subsequence access will succeed. Care should be taken when using this method in security sensitive applications.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def isDirectory(path: Path, linkOption: Seq[LinkOption]): F[Boolean]

Tests whether a file is a directory.

Tests whether a file is a directory.

The options sequence may be used to indicate how symbolic links are handled for the case that the file is a symbolic link. By default, symbolic links are followed and the file attribute of the final target of the link is read. If the option NOFOLLOW_LINKS is present then symbolic links are not followed.

Where is it required to distinguish an I/O exception from the case that the file is not a directory then the file attributes can be read with the readAttributes method and the file type tested with the BasicFileAttributes.isDirectory() method.

Value Params
options
  • options indicating how symbolic links are handled
path

the path to the file to test

Returns

true if the file is a directory; false if the file does not exist, is not a directory, or it cannot be determined if the file is a directory or not.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use isRegularFile which uses fs2.io.file.Path", "3.1.0")
def isFile(path: Path, linkOption: Seq[LinkOption]): F[Boolean]

Tests whether a file is a regular file with opaque content.

Tests whether a file is a regular file with opaque content.

The options sequence may be used to indicate how symbolic links are handled for the case that the file is a symbolic link. By default, symbolic links are followed and the file attribute of the final target of the link is read. If the option NOFOLLOW_LINKS is present then symbolic links are not followed.

Where is it required to distinguish an I/O exception from the case that the file is not a regular file then the file attributes can be read with the readAttributes method and the file type tested with the BasicFileAttributes.isRegularFile() method.

Value Params
options

options indicating how symbolic links are handled

path

the path to the file

Returns

true if the file is a regular file; false if the file does not exist, is not a regular file, or it cannot be determined if the file is a regular file or not.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def move(source: Path, target: Path, flags: Seq[CopyOption]): F[Path]

Moves (or renames) a file from the source to the target path.

Moves (or renames) a file from the source to the target path.

By default, the move fails if the target file already exists or is a symbolic link.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def open(path: Path, flags: Seq[OpenOption]): Resource[F, FileHandle[F]]

Creates a FileHandle for the file at the supplied Path.

Creates a FileHandle for the file at the supplied Path.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use getPosixPermissions", "3.1.0")
def permissions(path: Path, flags: Seq[LinkOption]): F[Set[PosixFilePermission]]

Get file permissions as set of PosixFilePermission.

Get file permissions as set of PosixFilePermission.

Note: this will only work for POSIX supporting file systems.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def readAll(path: Path, chunkSize: Int): Stream[F, Byte]

Reads all data from the file at the specified java.nio.file.Path.

Reads all data from the file at the specified java.nio.file.Path.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def readCursor(path: Path, flags: Seq[OpenOption]): Resource[F, ReadCursor[F]]

Returns a ReadCursor for the specified path. The READ option is added to the supplied flags.

Returns a ReadCursor for the specified path. The READ option is added to the supplied flags.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def readCursor(path: Path): Resource[F, ReadCursor[F]]

Returns a ReadCursor for the specified path.

Returns a ReadCursor for the specified path.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def readRange(path: Path, chunkSize: Int, start: Long, end: Long): Stream[F, Byte]

Reads a range of data synchronously from the file at the specified java.nio.file.Path. start is inclusive, end is exclusive, so when start is 0 and end is 2, two bytes are read.

Reads a range of data synchronously from the file at the specified java.nio.file.Path. start is inclusive, end is exclusive, so when start is 0 and end is 2, two bytes are read.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use setPosixPermissions", "3.1.0")
def setPermissions(path: Path, permissions: Set[PosixFilePermission]): F[Path]

Set file permissions from set of PosixFilePermission.

Set file permissions from set of PosixFilePermission.

Note: this will only work for POSIX supporting file systems.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def size(path: Path): F[Long]

Returns the size of a file (in bytes).

Returns the size of a file (in bytes).

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def tail(path: Path, chunkSize: Int, offset: Long, pollDelay: FiniteDuration): Stream[F, Byte]

Returns an infinite stream of data from the file at the specified path. Starts reading from the specified offset and upon reaching the end of the file, polls every pollDuration for additional updates to the file.

Returns an infinite stream of data from the file at the specified path. Starts reading from the specified offset and upon reaching the end of the file, polls every pollDuration for additional updates to the file.

Read operations are limited to emitting chunks of the specified chunk size but smaller chunks may occur.

If an error occurs while reading from the file, the overall stream fails.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def tempDirectory(dir: Option[Path], prefix: String, attributes: Seq[FileAttribute[_]]): Resource[F, Path]

Creates a Resource which can be used to create a temporary directory. The directory is created during resource allocation, and removed during its release.

Creates a Resource which can be used to create a temporary directory. The directory is created during resource allocation, and removed during its release.

Value Params
attributes

an optional list of file attributes to set atomically when creating the directory

dir

the directory which the temporary directory will be created in. Pass in None to use the default system temp directory

prefix

the prefix string to be used in generating the directory's name

Returns

a resource containing the path of the temporary directory

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def tempFile(dir: Option[Path], prefix: String, suffix: String, attributes: Seq[FileAttribute[_]]): Resource[F, Path]

Creates a Resource which can be used to create a temporary file. The file is created during resource allocation, and removed during its release.

Creates a Resource which can be used to create a temporary file. The file is created during resource allocation, and removed during its release.

Value Params
attributes

an optional list of file attributes to set atomically when creating the file

dir

the directory which the temporary file will be created in. Pass in None to use the default system temp directory

prefix

the prefix string to be used in generating the file's name

suffix

the suffix string to be used in generating the file's name

Returns

a resource containing the path of the temporary file

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def walk(start: Path, maxDepth: Int, options: Seq[FileVisitOption]): Stream[F, Path]

Creates a stream of JPaths contained in a given file tree down to a given depth.

Creates a stream of JPaths contained in a given file tree down to a given depth.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def walk(start: Path, options: Seq[FileVisitOption]): Stream[F, Path]

Creates a stream of JPaths contained in a given file tree, respecting the supplied options. Depth is unlimited.

Creates a stream of JPaths contained in a given file tree, respecting the supplied options. Depth is unlimited.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def walk(start: Path): Stream[F, Path]

Creates a stream of JPaths contained in a given file tree. Depth is unlimited.

Creates a stream of JPaths contained in a given file tree. Depth is unlimited.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def watch(path: Path, types: Seq[EventType], modifiers: Seq[Modifier], pollTimeout: FiniteDuration): Stream[F, Event]

Watches a single path.

Watches a single path.

Alias for creating a watcher and watching the supplied path, releasing the watcher when the resulting stream is finalized.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use Watcher.default", "3.1.0")
def watcher: Resource[F, Watcher[F]]

Creates a Watcher for the default file system.

Creates a Watcher for the default file system.

The watcher is returned as a resource. To use the watcher, lift the resource to a stream, watch or register 1 or more paths, and then return watcher.events().

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def writeAll(path: Path, flags: Seq[StandardOpenOption]): (F, Byte) => INothing

Writes all data to the file at the specified java.nio.file.JPath.

Writes all data to the file at the specified java.nio.file.JPath.

Adds the WRITE flag to any other OpenOption flags specified. By default, also adds the CREATE flag.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def writeCursor(path: Path, flags: Seq[OpenOption]): Resource[F, WriteCursor[F]]

Returns a WriteCursor for the specified path.

Returns a WriteCursor for the specified path.

The WRITE option is added to the supplied flags. If the APPEND option is present in flags, the offset is initialized to the current size of the file.

Deprecated
Inherited from
DeprecatedFilesApi
@deprecated("Use overload which uses fs2.io.file.Path", "3.1.0")
def writeRotate(computePath: F[Path], limit: Long, flags: Seq[StandardOpenOption]): (F, Byte) => INothing

Writes all data to a sequence of files, each limited in size to limit.

Writes all data to a sequence of files, each limited in size to limit.

The computePath operation is used to compute the path of the first file and every subsequent file. Typically, the next file should be determined by analyzing the current state of the filesystem -- e.g., by looking at all files in a directory and generating a unique name.

Deprecated
Inherited from
DeprecatedFilesApi

Implicits

Inherited implicits

implicit protected
val F: Async[F]
Inherited from
DeprecatedFilesApi