Skip to content

Ftp Server MS SQL File System Implementation

alexhiggins732 edited this page May 21, 2019 · 1 revision

FtpServer.MsSqlFileSystem

A Microsoft SQL File System for use with Fubar Development's Portable FTP Server.

See sample project here:

FtpServer.MsSqlFileSystem

Contents

MsSqlDirectoryEntry type

Namespace

FtpServer.MsSqlFileSystem

Summary

A IUnixDirectoryEntry implementation for MsSqlFileSystem functionality.

#ctor(fileSystem,dirInfo) constructor

Summary

Initializes a new instance of the MsSqlDirectoryEntry class.

Parameters
Name Type Description
fileSystem FtpServer.MsSqlFileSystem.MsSqlFileSystem The file system this entry belongs to.
dirInfo Sql.IO.SqlDirectoryInfo The SqlDirectoryInfo to extract the information from.

CreatedTime property

Summary

Inherit from parent.

FileSystem property

Summary

Inherit from parent.

Group property

Summary

Inherit from parent.

Info property

Summary

Gets the underlying SqlDirectoryInfo.

IsDeletable property

Summary

Inherit from parent.

IsRoot property

Summary

Inherit from parent.

LastWriteTime property

Summary

Inherit from parent.

Name property

Summary

Inherit from parent.

NumberOfLinks property

Summary

Inherit from parent.

Owner property

Summary

Inherit from parent.

Permissions property

Summary

Inherit from parent.

MsSqlFileEntry type

Namespace

FtpServer.MsSqlFileSystem

Summary

A IUnixFileEntry implementation for MsSqlFileSystem functionality.

#ctor(fileSystem,info) constructor

Summary

Initializes a new instance of the MsSqlFileEntry class.

Parameters
Name Type Description
fileSystem FtpServer.MsSqlFileSystem.MsSqlFileSystem The MsSqlFileEntry this entry belongs to.
info Sql.IO.SqlFileInfo The SqlFileInfo to extract the information from.

CreatedTime property

Summary

Inherit from parent.

FileSystem property

Summary

Inherit from parent.

Group property

Summary

Inherit from parent.

Info property

Summary

Gets the underlying SqlFileInfo.

LastWriteTime property

Summary

Inherit from parent.

Name property

Summary

Inherit from parent.

NumberOfLinks property

Summary

Inherit from parent.

Owner property

Summary

Inherit from parent.

Permissions property

Summary

Inherit from parent.

Size property

Summary

Inherit from parent.

MsSqlFileSystem type

Namespace

FtpServer.MsSqlFileSystem

Summary

A IUnixFileSystem implementation that uses the MS SQL FileTables and FileStreams to provide file system functionality.

#ctor(rootPath,allowNonEmptyDirectoryDelete) constructor

Summary

Initializes a new instance of the MsSqlFileSystem class.

Parameters
Name Type Description
rootPath System.String The path to use as root.
allowNonEmptyDirectoryDelete System.Boolean Defines whether the deletion of non-empty directories is allowed.

#ctor(rootPath,allowNonEmptyDirectoryDelete,streamBufferSize) constructor

Summary

Initializes a new instance of the MsSqlFileSystem class.

Parameters
Name Type Description
rootPath System.String The path to use as root.
allowNonEmptyDirectoryDelete System.Boolean Defines whether the deletion of non-empty directories is allowed.
streamBufferSize System.Int32 Buffer size to be used in async IO methods.

DefaultStreamBufferSize constants

Summary

The default buffer size for copying from one stream to another.

FileSystemEntryComparer property

Summary

Inherit from parent.

Root property

Summary

Inherit from parent.

SupportsAppend property

Summary

Inherit from parent.

SupportsNonEmptyDirectoryDelete property

Summary

Inherit from parent.

AppendAsync() method

Summary

Inherit from parent.

Parameters

This method has no parameters.

CreateAsync() method

Summary

Inherit from parent.

Parameters

This method has no parameters.

CreateDirectoryAsync() method

Summary

Inherit from parent.

Parameters

This method has no parameters.

Dispose() method

Summary

Disposes the current instance of the MsSqlFileSystem.

Parameters

This method has no parameters.

GetEntriesAsync() method

Summary

Inherit from parent.

Parameters

This method has no parameters.

GetEntryByNameAsync() method

Summary

Inherit from parent.

Parameters

This method has no parameters.

MoveAsync() method

Summary

Inherit from parent.

Parameters

This method has no parameters.

OpenReadAsync() method

Summary

Inherit from parent.

Parameters

This method has no parameters.

ReplaceAsync() method

Summary

Inherit from parent.

Parameters

This method has no parameters.

SetMacTimeAsync(entry,modify,access,create,cancellationToken) method

Summary

Sets the modify/access/create timestamp of a file system item.

Returns

The modified IUnixFileSystemEntry.

Parameters
Name Type Description
entry FubarDev.FtpServer.FileSystem.IUnixFileSystemEntry The IUnixFileSystemEntry to change the timestamp for.
modify System.Nullable{System.DateTimeOffset} The modification timestamp.
access System.Nullable{System.DateTimeOffset} The access timestamp.
create System.Nullable{System.DateTimeOffset} The creation timestamp.
cancellationToken System.Threading.CancellationToken The cancellation token.

UnlinkAsync() method

Summary

Inherit from parent.

Parameters

This method has no parameters.

MsSqlFileSystemOptions type

Namespace

FtpServer.MsSqlFileSystem

Summary

Options for MsSqlFileSystem based file system access.

AllowNonEmptyDirectoryDelete property

Summary

Gets or sets a value indicating whether deletion of non-empty directories is allowed.

RootPath property

Summary

Gets or sets the root path for all users.

StreamBufferSize property

Summary

Gets or sets the buffer size to be used in async IO methods.

UseUserIdAsSubFolder property

Summary

Gets or sets a value indicating whether the user ID should be used as sub directory.

MsSqlFileSystemProvider type

Namespace

FtpServer.MsSqlFileSystem

Summary

A IFileSystemClassFactory factory implementation to MsSqlFileSystem functionality for file system access.

#ctor(options) constructor

Summary

Initializes a new instance of the MsSqlFileSystemProvider class.

Parameters
Name Type Description
options Microsoft.Extensions.Options.IOptions{FtpServer.MsSqlFileSystem.MsSqlFileSystemOptions} The file system options.

Create(userId,isAnonymous) method

Summary

Returns a new MsSqlFileSystem instance implementation of the IUnixFileSystem.

Returns

Returns a new MsSqlFileSystem instance.

Parameters
Name Type Description
userId System.String The userId of the current user.
isAnonymous System.Boolean A flag indicating if the login is anonymous.

Create(accountInformation) method

Summary

Returns a new MsSqlFileSystem instance implementation of the IUnixFileSystem.

Returns

Returns a new MsSqlFileSystem instance.

Parameters
Name Type Description
accountInformation FubarDev.FtpServer.IAccountInformation The IAccountInformation of the current user.

MsSqlFtpServerBuilderExtensions type

Namespace

FtpServer.MsSqlFileSystem

Summary

Extension methods for IFtpServerBuilder using to configure the MsSqlFileSystem using Dependency Injection.

UseMsSqlFileSystem(builder) method

Summary

Registers a MsSqlFileSystemProvider implementation of the IFileSystemClassFactory to provide a MsSqlFileSystem API.

Returns

the server builder used to configure the FTP server.

Parameters
Name Type Description
builder FubarDev.FtpServer.IFtpServerBuilder The server builder used to configure the FTP server.

Clone this wiki locally