Namespace Azos.IO.FileSystem
Classes
DeleteFilesJob
Represents a job(a scheduled event) which deletes FS files
FileSystem
Provides a base for various file system abstractions. FileSystem abstractions are mostly useful for working with components/classes that may need to inter-operate not only with local file system but also with distributed systems like ApacheHDFS, SVN, GIT, or Sky Cluster Big-Transactional File System (BoltFS). Azos library provides compatibility wrapper 'Azos.IO.FileSystem.Local.LocalFileSystem' for access to local machine file system (which is based on this class and is implemented using a traditional System.IO.* set of classes). The FileSystem abstraction supports the following concepts: versioning, transactions, metadata, security; however it does not guarantee that every implementation is capable of providing all of these functions. Query "GeneralCapabilities" and "InstanceCapabilities" to see what functions are supported by a particular instance. This class is not thread-safe unless stated otherwise on method level, however multiple threads are allowed to obtain their own FileSystemSession object via a call to StartSession() which is thread safe
FileSystemDirectory
Represents a directory item in a file system. This class is NOT thread-safe
FileSystemException
General Azos file system specific exception
FileSystemFile
Represents a file in a file system. This class is NOT thread-safe
FileSystemSession
Represents a user-impersonated session of working with a file system. This class is NOT thread-safe
FileSystemSessionConnectParams
Provides parameters for new sessions establishment
FileSystemSessionItem
Represents an abstraction for items kept in a file system - i.e. directories and files.This class is NOT thread-safe
FileSystemStream
Represents a stream that can work with contents of FileSystem. This class is NOT thread-safe
Interfaces
IFileSystem
Stipulates contract for various file system abstractions. FileSystem abstractions are mostly useful for working with components/classes that may need to inter-operate not only with local file system but also with distributed systems like ApacheHDFS, SVN, GIT, or Sky Cluster File System. Azos library provides compatibility wrapper 'Azos.IO.FileSystem.Local.LocalFileSystem' for access to local machine file system (which is based on this class and is implemented using a traditional System.IO.* set of classes). The FileSystem abstraction supports the following concepts: versioning, transactions, metadata, security; however it does not guarantee that every implementation is capable of providing all of these functions. Query "GeneralCapabilities" and "InstanceCapabilities" to see what functions are supported by a particular instance.
IFileSystemCapabilities
Supplies capabilities for the file system. The implementation must be thread safe
IFileSystemHandle
Denotes a handle for item in a file system. For example: in a distributed system this may be some form of unique file/directory id (i.e. a GUID) or object instance internal to implementation
IFileSystemImplementation
IFileSystemTransactionHandle
Denotes a handle for transaction in a file system. For example: in a distributed system this may be an object instance holding information about transaction which is internal to implementation
IFileSystemVersion
Decorates entities that represent version for file systems that support versioning