FileSystem ClassNFX Class Library

[This is preliminary documentation and is subject to change.]

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 Aum Cluster Big-Transactional File System (BoltFS). NFX library provides compatibility wrapper 'NFX.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
Inheritance Hierarchy

OnlineSystem Object
  NFX DisposableObject
    NFX.ApplicationModel ApplicationComponent
      NFX.IO.FileSystem FileSystem
        NFX.IO.FileSystem.GoogleDrive.V2 GoogleDriveFileSystem
        NFX.IO.FileSystem.Local LocalFileSystem
        NFX.IO.FileSystem.S3.V4 S3V4FileSystem
        NFX.IO.FileSystem.SVN SVNFileSystem

Namespace: NFX.IO.FileSystem
Assembly: NFX (in NFX.dll) Version: 3.0.0.1 (3.0.0.1)
Syntax

public abstract class FileSystem : ApplicationComponent, 
	IFileSystemImplementation, IFileSystem, IApplicationComponent, INamed, IDisposable, 
	IConfigurable
See Also