Interface IFileSystemCapabilities
  
  Supplies capabilities for the file system. The implementation must be thread safe
 
  
  
  Assembly: NFX.dll
  Syntax
  
    public interface IFileSystemCapabilities
   
  Properties
  
  
  
  
  IsReadonly
  Indicates whether file system supports modification of its files and structure
 
  
  Declaration
  
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  MaxDirectoryNameLength
  Returns maximum allowed length of a directory name
 
  
  Declaration
  
    int MaxDirectoryNameLength { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Int32 | 
         | 
      
    
  
  
  
  
  MaxFileNameLength
  Returns maximum allowed length of a file name
 
  
  Declaration
  
    int MaxFileNameLength { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Int32 | 
         | 
      
    
  
  
  
  
  MaxFilePathLength
  Returns maximum allowed length of the whole path that includes directory name/s and/or separator chars and/or file name
 
  
  Declaration
  
    int MaxFilePathLength { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Int32 | 
         | 
      
    
  
  
  
  
  MaxFileSize
  Returns the maximum size of a file
 
  
  Declaration
  
    ulong MaxFileSize { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.UInt64 | 
         | 
      
    
  
  
  
  
  PathSeparatorCharacters
  Returns understood path separator characters
 
  
  Declaration
  
    char[] PathSeparatorCharacters { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Char[] | 
         | 
      
    
  
  
  
  
  SupportsAsyncronousAPI
  Defines if this FileSystem implements Async methods in real asynchronous manner.
By default asynchronous methods are actually executed syncronously and return Task with execution result or exception
 
  
  Declaration
  
    bool SupportsAsyncronousAPI { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsCreationTimestamps
  
  
  Declaration
  
    bool SupportsCreationTimestamps { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsCreationUserNames
  
  
  Declaration
  
    bool SupportsCreationUserNames { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  
  Indicates whether the file system supports custom metadata for files and folders
 
  
  Declaration
  
    bool SupportsCustomMetadata { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsDirectoryRenaming
  
  
  Declaration
  
    bool SupportsDirectoryRenaming { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsDirectorySizes
  
  
  Declaration
  
    bool SupportsDirectorySizes { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsFileModification
  
  
  Declaration
  
    bool SupportsFileModification { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsFileRenaming
  
  
  Declaration
  
    bool SupportsFileRenaming { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsFileSizes
  
  
  Declaration
  
    bool SupportsFileSizes { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsLastAccessTimestamps
  
  
  Declaration
  
    bool SupportsLastAccessTimestamps { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsLastAccessUserNames
  
  
  Declaration
  
    bool SupportsLastAccessUserNames { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsModificationTimestamps
  
  
  Declaration
  
    bool SupportsModificationTimestamps { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsModificationUserNames
  
  
  Declaration
  
    bool SupportsModificationUserNames { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsReadonlyDirectories
  
  
  Declaration
  
    bool SupportsReadonlyDirectories { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsReadonlyFiles
  
  
  Declaration
  
    bool SupportsReadonlyFiles { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsSecurity
  Indicates whether the file system supports security permissions
 
  
  Declaration
  
    bool SupportsSecurity { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsStreamSeek
  
  
  Declaration
  
    bool SupportsStreamSeek { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsTransactions
  Indicates whether a file system supports transactions
 
  
  Declaration
  
    bool SupportsTransactions { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  
  
  
  SupportsVersioning
  Indicates whether a file system supports versioning
 
  
  Declaration
  
    bool SupportsVersioning { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Boolean | 
         | 
      
    
  
  Extension Methods