C# Класс SmartSync.DeploymentRepository

Показать файл Открыть проект

Открытые методы

Метод Описание
CreateSnapshotFromDirectory ( DirectoryInfo dirRoot, string comment, bool>.Func filter = null ) : SnapshotId
CreateSnapshotFromFiles ( FileInfo>.IEnumerable fileList, string comment ) : SnapshotId
FromToken ( string tok ) : SnapshotId
GetAddedItemsBetweenSnapshots ( SnapshotId currentId, SnapshotId targetId ) : IEnumerable
GetDeletedItemsBetweenSnapshots ( SnapshotId currentId, SnapshotId targetId ) : IEnumerable
GetLatestSnapshot ( ) : SnapshotInfo
GetLatestSnapshotId ( ) : SnapshotId
GetPreviousSnapshot ( SnapshotInfo snapshotInfo ) : SnapshotInfo
GetPreviousSnapshotId ( SnapshotId snapshotId ) : SnapshotId
GetSnapshotInfo ( SnapshotId snapshotId ) : SnapshotInfo
GetSnapshotItems ( SnapshotId token ) : IEnumerable
Initialize ( ) : bool
ListAllSnapshots ( ) : IEnumerable
ListSnapshotsBetween ( SnapshotId firstId, SnapshotId lastId ) : IEnumerable

List snapshots between first id and last id inclusive.

PopulateDirectoryFromSnapshot ( SnapshotId snapshotId, DirectoryInfo dirRoot ) : void

Copies files from snapshot to dirRoot.

Doesn't delete any data, only adds or modifies data under dirRoot.

ProcessDeletionsBetweenSnapshot ( SnapshotId currentId, SnapshotId targetId, DirectoryInfo dirRoot ) : void
UpdateDirectoryFromSnapshot ( SnapshotId currentId, SnapshotId targetId, DirectoryInfo dirRoot ) : void

Защищенные методы

Метод Описание
DeploymentRepository ( ) : System
SafeCombinePath ( DirectoryInfo dirInfo, string path ) : string

This does a path concatenation but verifies that the resulting file path is a results in a path underneath the root. This is a security best practice to avoid folks modifying files by creating relative paths such as "foo\..\..\bar"

TryCopyFile ( string src, string dst, bool logCopyFiles = true ) : bool
TryDeleteFile ( string path ) : bool

Приватные методы

Метод Описание
ListFilesInDirectory ( DirectoryInfo dirRoot, DirectoryInfo curDir, bool>.Func filter ) : FileInfo>>.IEnumerable

Описание методов

CreateSnapshotFromDirectory() публичный Метод

public CreateSnapshotFromDirectory ( DirectoryInfo dirRoot, string comment, bool>.Func filter = null ) : SnapshotId
dirRoot System.IO.DirectoryInfo
comment string
filter bool>.Func
Результат SnapshotId

CreateSnapshotFromFiles() публичный абстрактный Метод

public abstract CreateSnapshotFromFiles ( FileInfo>.IEnumerable fileList, string comment ) : SnapshotId
fileList FileInfo>.IEnumerable
comment string
Результат SnapshotId

DeploymentRepository() защищенный Метод

protected DeploymentRepository ( ) : System
Результат System

FromToken() публичный абстрактный Метод

public abstract FromToken ( string tok ) : SnapshotId
tok string
Результат SnapshotId

GetAddedItemsBetweenSnapshots() публичный Метод

public GetAddedItemsBetweenSnapshots ( SnapshotId currentId, SnapshotId targetId ) : IEnumerable
currentId SnapshotId
targetId SnapshotId
Результат IEnumerable

GetDeletedItemsBetweenSnapshots() публичный Метод

public GetDeletedItemsBetweenSnapshots ( SnapshotId currentId, SnapshotId targetId ) : IEnumerable
currentId SnapshotId
targetId SnapshotId
Результат IEnumerable

GetLatestSnapshot() публичный Метод

public GetLatestSnapshot ( ) : SnapshotInfo
Результат SnapshotInfo

GetLatestSnapshotId() публичный абстрактный Метод

public abstract GetLatestSnapshotId ( ) : SnapshotId
Результат SnapshotId

GetPreviousSnapshot() публичный Метод

public GetPreviousSnapshot ( SnapshotInfo snapshotInfo ) : SnapshotInfo
snapshotInfo SnapshotInfo
Результат SnapshotInfo

GetPreviousSnapshotId() публичный абстрактный Метод

public abstract GetPreviousSnapshotId ( SnapshotId snapshotId ) : SnapshotId
snapshotId SnapshotId
Результат SnapshotId

GetSnapshotInfo() публичный абстрактный Метод

public abstract GetSnapshotInfo ( SnapshotId snapshotId ) : SnapshotInfo
snapshotId SnapshotId
Результат SnapshotInfo

GetSnapshotItems() публичный абстрактный Метод

public abstract GetSnapshotItems ( SnapshotId token ) : IEnumerable
token SnapshotId
Результат IEnumerable

Initialize() публичный абстрактный Метод

public abstract Initialize ( ) : bool
Результат bool

ListAllSnapshots() публичный Метод

public ListAllSnapshots ( ) : IEnumerable
Результат IEnumerable

ListSnapshotsBetween() публичный Метод

List snapshots between first id and last id inclusive.
public ListSnapshotsBetween ( SnapshotId firstId, SnapshotId lastId ) : IEnumerable
firstId SnapshotId A more recently created snapshot.
lastId SnapshotId An id older than first Id
Результат IEnumerable

PopulateDirectoryFromSnapshot() публичный Метод

Copies files from snapshot to dirRoot.
Doesn't delete any data, only adds or modifies data under dirRoot.
public PopulateDirectoryFromSnapshot ( SnapshotId snapshotId, DirectoryInfo dirRoot ) : void
snapshotId SnapshotId The snapshot id
dirRoot System.IO.DirectoryInfo Root to extract
Результат void

ProcessDeletionsBetweenSnapshot() публичный Метод

public ProcessDeletionsBetweenSnapshot ( SnapshotId currentId, SnapshotId targetId, DirectoryInfo dirRoot ) : void
currentId SnapshotId
targetId SnapshotId
dirRoot System.IO.DirectoryInfo
Результат void

SafeCombinePath() защищенный Метод

This does a path concatenation but verifies that the resulting file path is a results in a path underneath the root. This is a security best practice to avoid folks modifying files by creating relative paths such as "foo\..\..\bar"
protected SafeCombinePath ( DirectoryInfo dirInfo, string path ) : string
dirInfo System.IO.DirectoryInfo
path string
Результат string

TryCopyFile() защищенный Метод

protected TryCopyFile ( string src, string dst, bool logCopyFiles = true ) : bool
src string
dst string
logCopyFiles bool
Результат bool

TryDeleteFile() защищенный Метод

protected TryDeleteFile ( string path ) : bool
path string
Результат bool

UpdateDirectoryFromSnapshot() публичный Метод

public UpdateDirectoryFromSnapshot ( SnapshotId currentId, SnapshotId targetId, DirectoryInfo dirRoot ) : void
currentId SnapshotId
targetId SnapshotId
dirRoot System.IO.DirectoryInfo
Результат void