/// <summary>Constructor - sets default values of some properties</summary>
 public Config()
 {
     DirPath = String.Empty;
     PruneRules = new PruneRules() { TreeNumFilesLimit = ConfigPruneNumFilesMaxValue, TreeNumItemsLimit = 0, TreeTotalSizeLimit = 0, FileAgeLimit = TimeSpan.Zero };
     CreateDirectoryIfNeeded = true;
     PruneMode = PruneMode.PruneFiles;
     MaxInitialAutoCleanupIterations = 100;
     MaxEntriesToDeletePerIteration = 100;
 }
 /// <summary>Copy constructor</summary>
 public Config(Config rhs)
 {
     DirPath = rhs.DirPath;
     PruneRules = new PruneRules(rhs.PruneRules);
     CreateDirectoryIfNeeded = rhs.CreateDirectoryIfNeeded;
     PruneMode = rhs.PruneMode;
     MaxInitialAutoCleanupIterations = rhs.MaxInitialAutoCleanupIterations;
     MaxEntriesToDeletePerIteration = rhs.MaxEntriesToDeletePerIteration;
 }
 /// <summary>Copy constructor</summary>
 public PruneRules(PruneRules rhs)
     : this()
 {
     TreeNumItemsLimit = rhs.TreeNumItemsLimit;
     TreeNumFilesLimit = rhs.TreeNumFilesLimit;
     TreeTotalSizeLimit = rhs.TreeTotalSizeLimit;
     FileAgeLimit = rhs.FileAgeLimit;
 }