Zero Install .NET API 2.20.0
ZeroInstall.Store.FileSystem.DirectoryBuilder Class Reference

Builds a file system directory on-disk. More...

Inheritance diagram for ZeroInstall.Store.FileSystem.DirectoryBuilder:
NanoByte::Common::Threading::MarshalNoTimeout ZeroInstall.Store.FileSystem.IBuilder ZeroInstall.Store.FileSystem.IForwardOnlyBuilder

Public Member Functions

 DirectoryBuilder (string path, IBuilder? innerBuilder=null)
 Creates a new builder. More...
 
void AddDirectory (string path)
 Adds a subdirectory to the implementation. More...
 
void AddFile (string path, Stream stream, UnixTime modifiedTime, bool executable=false)
 Adds a file to the implementation. More...
 
void AddHardlink (string path, string target, bool executable=false)
 Adds a hardlink to the implementation. More...
 
void AddSymlink (string path, string target)
 Adds a symbolic link to the implementation. More...
 
void Rename (string path, string target)
 Renames a file or directory in the implementation. More...
 
void Remove (string path)
 Removes a file or directory from the implementation. More...
 
void MarkAsExecutable (string path)
 Marks a previously added file as executable. More...
 
void TurnIntoSymlink (string path)
 Turns a previously added file into a symlink. More...
 

Properties

string Path [get]
 The path to the directory to build the implementation in.
 
string AllowedHardlinkRoot [get]
 A directory all hardlink targets must be a child of. Defaults to Path.
 

Detailed Description

Builds a file system directory on-disk.

Constructor & Destructor Documentation

◆ DirectoryBuilder()

ZeroInstall.Store.FileSystem.DirectoryBuilder.DirectoryBuilder ( string  path,
IBuilder innerBuilder = null 
)
inline

Creates a new builder.

Parameters
pathThe path to the directory to build the implementation in.
innerBuilderAn additional IBuilder to pass all calls on to as well. Usually ManifestBuilder.

Member Function Documentation

◆ AddDirectory()

void ZeroInstall.Store.FileSystem.DirectoryBuilder.AddDirectory ( string  path)
inline

Adds a subdirectory to the implementation.

Implements ZeroInstall.Store.FileSystem.IForwardOnlyBuilder.

◆ AddFile()

void ZeroInstall.Store.FileSystem.DirectoryBuilder.AddFile ( string  path,
Stream  stream,
UnixTime  modifiedTime,
bool  executable = false 
)
inline

Adds a file to the implementation.

Implements ZeroInstall.Store.FileSystem.IForwardOnlyBuilder.

◆ AddHardlink()

void ZeroInstall.Store.FileSystem.DirectoryBuilder.AddHardlink ( string  path,
string  target,
bool  executable = false 
)
inline

Adds a hardlink to the implementation.

Implements ZeroInstall.Store.FileSystem.IForwardOnlyBuilder.

◆ AddSymlink()

void ZeroInstall.Store.FileSystem.DirectoryBuilder.AddSymlink ( string  path,
string  target 
)
inline

Adds a symbolic link to the implementation.

Implements ZeroInstall.Store.FileSystem.IForwardOnlyBuilder.

◆ MarkAsExecutable()

void ZeroInstall.Store.FileSystem.DirectoryBuilder.MarkAsExecutable ( string  path)
inline

Marks a previously added file as executable.

Implements ZeroInstall.Store.FileSystem.IBuilder.

◆ Remove()

void ZeroInstall.Store.FileSystem.DirectoryBuilder.Remove ( string  path)
inline

Removes a file or directory from the implementation.

Implements ZeroInstall.Store.FileSystem.IBuilder.

◆ Rename()

void ZeroInstall.Store.FileSystem.DirectoryBuilder.Rename ( string  path,
string  target 
)
inline

Renames a file or directory in the implementation.

Implements ZeroInstall.Store.FileSystem.IBuilder.

◆ TurnIntoSymlink()

void ZeroInstall.Store.FileSystem.DirectoryBuilder.TurnIntoSymlink ( string  path)
inline

Turns a previously added file into a symlink.

Implements ZeroInstall.Store.FileSystem.IBuilder.


The documentation for this class was generated from the following file: