public BackupDirectoryNamingConvention(
     ITimePeriodFromFilesystemNameExtractor timePeriodExtractor
     , IBackupFileNamingConvention backupFileNamingConvention)
 {
     TimePeriodExtractor        = timePeriodExtractor;
     BackupFileNamingConvention = backupFileNamingConvention;
 }
예제 #2
0
        public TestSqlServerProxy(IBackupFileNamingConvention fileNamingConvention, string databaseName)
        {
            Check.DoRequireArgumentNotNull(fileNamingConvention, "fileNamingConvention");
            Check.DoRequireArgumentNotNull(databaseName, "databaseName");

            FileNamingConvention = fileNamingConvention;
            DatabaseName         = databaseName;
        }
        /// <summary>
        ///     Factory method creating convention for calendar month folders and given file naming convention.
        /// </summary>
        /// <param name="fileNamingConvention">
        ///     File naming convention to use.
        /// </param>
        /// <returns>
        /// </returns>
        public static BackupDirectoryNamingConvention CreateMonthlyConvention(IBackupFileNamingConvention fileNamingConvention)
        {
            Check.DoRequireArgumentNotNull(fileNamingConvention, "fileNamingConvention");

            var monthDirectoryNameParser = new BackupFilesystemObjectNameParser(
                "(.+)", RestoreBackupLib.BackupFileNamingConvention.DefaultMonthTimestampFormat, null);

            var monthPeriodExtractor = TimePeriodFromFilesystemNameExtractor.CreateForCalendarMonths(monthDirectoryNameParser);

            var result = new BackupDirectoryNamingConvention(monthPeriodExtractor, fileNamingConvention);

            return(result);
        }
예제 #4
0
        public BackupFileFolderInfo(IBackupFileNamingConvention fileNamingConvention, DirectoryInfo directoryInfo, DateTime startTime, DateTime?endTime)
        {
            Check.DoRequireArgumentNotNull(fileNamingConvention, "fileNamingConvention");
            Check.DoRequireArgumentNotNull(directoryInfo, "directoryInfo");
            Check.DoCheckArgument(endTime > startTime, "Time period");

            DirectoryInfo = directoryInfo;
            StartTime     = startTime;

            PeriodEndDeclaredExplicitly = endTime.HasValue;
            EndTime = endTime.HasValue ? endTime.Value : directoryInfo.LastWriteTime;

            BackupFileNamingConvention = fileNamingConvention;
        }
예제 #5
0
        /// <summary>
        ///     Factory method creating catalog for calendar month folders and given file naming convention.
        /// </summary>
        /// <param name="fileNamingConvention">
        ///     File naming convention to use.
        /// </param>
        public static BackupFileCatalog CreateMonthlyCatalog(string databaseBackupFolder, IBackupFileNamingConvention fileNamingConvention)
        {
            Check.DoRequireArgumentNotNull(databaseBackupFolder, "databaseBackupFolder");
            Check.DoRequireArgumentNotNull(fileNamingConvention, "fileNamingConvention");


            var namingConvention = BackupDirectoryNamingConvention.CreateMonthlyConvention(fileNamingConvention);

            var result = new BackupFileCatalog(namingConvention, databaseBackupFolder);

            return(result);
        }