Esempio n. 1
0
 /// <summary>
 /// Generates the default file hash for the specified priority.
 /// </summary>
 /// <param name="filePath">The full path to the file on disk.</param>
 /// <param name="priority">FileBackupPriority</param>
 /// <returns></returns>
 public byte[] GenerateDefaultHash(string filePath, FileBackupPriority priority)
 {
     if (priority == FileBackupPriority.Low)
     {
         return(Generate20ByteFileHash(filePath));
     }
     else if (priority == FileBackupPriority.Medium)
     {
         return(Generate32ByteFileHash(filePath));
     }
     else if (priority == FileBackupPriority.High)
     {
         return(Generate64ByteFileHash(filePath));
     }
     else if (priority == FileBackupPriority.Meta)
     {
         return(Generate64ByteFileHash(filePath));
     }
     else
     {
         throw new NotImplementedException("Unexpected file backup priority type: " + priority);
     }
 }
Esempio n. 2
0
 /// <summary>
 /// Gets the default hash algorithm used for a specified priority type.
 /// </summary>
 /// <param name="priority"></param>
 /// <returns></returns>
 public HashAlgorithmName GetDefaultHashAlgorithm(FileBackupPriority priority)
 {
     if (priority == FileBackupPriority.Low)
     {
         return(HashAlgorithmName.SHA1);
     }
     else if (priority == FileBackupPriority.Medium)
     {
         return(HashAlgorithmName.SHA256);
     }
     else if (priority == FileBackupPriority.High)
     {
         return(HashAlgorithmName.SHA512);
     }
     else if (priority == FileBackupPriority.Meta)
     {
         return(HashAlgorithmName.SHA512);
     }
     else
     {
         throw new NotImplementedException("Unexpected file backup priority type: " + priority);
     }
 }