Пример #1
0
        public static void RestoreSnapshot(RestoreOptions o)
        {
            var snapshotStore = CreateSnapshotStore(o.Repository);

            Stream OpenWrite(string blobName)
            {
                var file = Path.Combine(o.Directory, blobName);

                DirectoryUtil.CreateParent(file);

                var mode = o.Overwrite
                    ? FileMode.Create
                    : FileMode.CreateNew;

                return(new FileStream(file, mode, FileAccess.Write));
            }

            snapshotStore.RetrieveSnapshot(
                o.SnapshotId,
                new Fuzzy(
                    o.IncludePatterns,
                    FuzzyOption.EmptyMatchesAll),
                OpenWrite);
        }