Show / Hide Table of Contents

Class DiskFileAccess

Inheritance
object
DiskFileAccess
Implements
IFileAccess
Inherited Members
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
Namespace: SuperOffice.IO.Files
Assembly: SoCore.dll
Syntax
public class DiskFileAccess : IFileAccess

Constructors

DiskFileAccess()

Declaration
public DiskFileAccess()

Properties

ArchivePath

Declaration
public string ArchivePath { get; }
Property Value
Type Description
string

TemplatesPath

Declaration
public string TemplatesPath { get; }
Property Value
Type Description
string

TemporaryPath

Declaration
public string TemporaryPath { get; }
Property Value
Type Description
string

Methods

CreateDirectoryIfNotExists(string)

Declaration
public void CreateDirectoryIfNotExists(string path)
Parameters
Type Name Description
string path

CreateForWriteAsync(string, CancellationToken)

Declaration
public Task<Stream> CreateForWriteAsync(string path, CancellationToken cancellationToken = default)
Parameters
Type Name Description
string path
CancellationToken cancellationToken
Returns
Type Description
Task<Stream>

DirectoryExists(string)

Declaration
public bool DirectoryExists(string path)
Parameters
Type Name Description
string path
Returns
Type Description
bool

DirectoryGetFileInfosAsync(string, CancellationToken)

Declaration
public Task<SoFileInfo[]> DirectoryGetFileInfosAsync(string path, CancellationToken cancellationToken = default)
Parameters
Type Name Description
string path
CancellationToken cancellationToken
Returns
Type Description
Task<SoFileInfo[]>

DirectoryGetFilesAsync(string, string, bool, CancellationToken)

Declaration
public Task<string[]> DirectoryGetFilesAsync(string path, string searchPattern, bool searchInSubdirectories = false, CancellationToken cancellationToken = default)
Parameters
Type Name Description
string path
string searchPattern
bool searchInSubdirectories
CancellationToken cancellationToken
Returns
Type Description
Task<string[]>

EnsureAccess(Action)

Impersonation for Windows Disk File Access. For Azure File Access this is a noop.

Declaration
public void EnsureAccess(Action action)
Parameters
Type Name Description
Action action

EnsureAccess(Func<Task>)

Impersonation for Windows Disk File Access. For Azure File Access this is a noop.

Declaration
public Task EnsureAccess(Func<Task> action)
Parameters
Type Name Description
Func<Task> action
Returns
Type Description
Task

EnsureAccess<T>(Func<T>)

Impersonation for Windows Disk File Access. For Azure File Access this is a noop.

Declaration
public T EnsureAccess<T>(Func<T> func)
Parameters
Type Name Description
Func<T> func
Returns
Type Description
T
Type Parameters
Name Description
T

FileDeleteAsync(string, CancellationToken)

Declaration
public Task FileDeleteAsync(string path, CancellationToken cancellationToken = default)
Parameters
Type Name Description
string path
CancellationToken cancellationToken
Returns
Type Description
Task

FileExistsAsync(string, CancellationToken)

Declaration
public Task<bool> FileExistsAsync(string path, CancellationToken cancellationToken = default)
Parameters
Type Name Description
string path
CancellationToken cancellationToken
Returns
Type Description
Task<bool>

GetDirectoryName(string)

Declaration
public string GetDirectoryName(string path)
Parameters
Type Name Description
string path
Returns
Type Description
string

GetFileName(string)

Declaration
public string GetFileName(string path)
Parameters
Type Name Description
string path
Returns
Type Description
string

GetFileNameWithoutExtension(string)

Declaration
public string GetFileNameWithoutExtension(string path)
Parameters
Type Name Description
string path
Returns
Type Description
string

OpenReadOnlyNoLockAsync(string, CancellationToken)

Open a file/blob for reading

Declaration
public Task<Stream> OpenReadOnlyNoLockAsync(string path, CancellationToken cancellationToken = default)
Parameters
Type Name Description
string path
CancellationToken cancellationToken
Returns
Type Description
Task<Stream>
Remarks

Will call System.IO.File.Open() or Azure.Storage.Blobs.BlobClient.OpenRead()

Exceptions
Type Condition
SoFileNotFoundException

Wraps System.IO.FileNotFoundException and Azure.RequestFailedException when Status is 404. Check for SoFileNotFoundException instead of doing FileExists before call to this method.

PathCombine(params string[])

Declaration
public string PathCombine(params string[] paths)
Parameters
Type Name Description
string[] paths
Returns
Type Description
string

PathGetExtension(string)

Declaration
public string PathGetExtension(string path)
Parameters
Type Name Description
string path
Returns
Type Description
string

PathGetFileName(string)

Declaration
public string PathGetFileName(string path)
Parameters
Type Name Description
string path
Returns
Type Description
string

PathGetInvalidFileNameChars()

Declaration
public char[] PathGetInvalidFileNameChars()
Returns
Type Description
char[]

SaveStreamToFileAsync(Stream, string, CancellationToken)

Save a stream to file/blob

Declaration
public Task SaveStreamToFileAsync(Stream stream, string path, CancellationToken cancellationToken = default)
Parameters
Type Name Description
Stream stream
string path
CancellationToken cancellationToken
Returns
Type Description
Task
Remarks

Will call System.IO.File.Create() or Azure.Storage.Blobs.BlobClient.Upload(), both implementations will overwrite any existing file/blob.

Implements

IFileAccess

Extension Methods

EnumUtil.MapEnums<From, To>(From)
Converters.MapEnums<From, To>(From)
ObjectExtensions.AssignByReflection<T>(T, T)
ObjectExtensions.GraphCopy<T>(T)
© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top