VFSBuilder

VFS: Builder

Models the interface expected for VFS implementation builders, which should accept a uniform set of baseline settings (such as readOnly status, or the root path). Specialized FS implementations may extend this interface with additional settings.

Parameters

VFS

Concrete virtual file system type under implementation.

Inheritors

Properties

Link copied to clipboard

Defines a mapping of local integer IDs to indexed bundle info records; this type is used to satisfy deferred reads, which require bundles to be available after startup.

Link copied to clipboard
abstract var caseSensitive: Boolean

Whether the backing file-system should be considered case-sensitive. In this mode, two paths with different casing are considered two separate files.

Link copied to clipboard
abstract var deferred: Boolean

Whether to defer reads and copies into the VFS until files are requested; in this operating mode, the VFS contents are indexed for later use, and then consumed on-demand.

Link copied to clipboard
abstract var enableSymlinks: Boolean

Whether the backing file-system supports symbolic links, or is expected to support symbolic links. If this flag is passed as false, then symbolic link read and write operations will be rejected without consulting the backing file-system implementation (as applicable).

Link copied to clipboard
abstract var policy: GuestVFSPolicy

Specifies security policies, and allowed access rights, for a guest's use of this file-system. If a requested guest I/O operation is not permitted by the attached policy, it is rejected without consultation of the backing file-system (as applicable).

Link copied to clipboard
abstract var readOnly: Boolean

Whether the backing file-system should be considered read-only. In this mode, all writes are rejected without consultation of the backing file-system (as applicable).

Link copied to clipboard

Defines a registry of string paths to VFS object info descriptors, which are used to satisfy deferred reads; such structures are produced by indexing embedded VFS bundles.

Link copied to clipboard
abstract var root: String

Specifies the root path for the file-system, which is typically set to /. On non-Unix and non-Linux systems, this may be customized to, say, "C:/".

Link copied to clipboard
abstract var workingDirectory: String

Specifies the current-working-directory to apply when the file-system is initialized. This is typically set to the root path (/).

Functions

Link copied to clipboard
abstract fun build(): VFS

Collect all the current settings, apply defaults where needed, and construct the requested VFS implementation.

Link copied to clipboard

Set the bundles which should be consulted for deferred reads.

Link copied to clipboard

Set the caseSensitive status of the file-system managed by this VFS implementation.

Link copied to clipboard

Set the deferred status of the file-system managed by this VFS implementation.

Link copied to clipboard

Set the enableSymlinks setting of the file-system managed by this VFS implementation.

Link copied to clipboard

Set the active policy for guest I/O operations.

Link copied to clipboard

Set the readOnly status of the file-system managed by this VFS implementation.

Link copied to clipboard

Set the registry of known paths, which is used for deferred reads and writes.

Link copied to clipboard

Set the root path of the file-system managed by this VFS implementation.

Link copied to clipboard

Set the initial workingDirectory path of the file-system managed by this VFS implementation.