Table of Contents

CacheValidatorFactory Class

Definition

Namespace
Cuemon.Data.Integrity
Assemblies
Cuemon.Data.Integrity.dll
Source
src/Cuemon.Data.Integrity/CacheValidatorFactory.cs

Provides access to factory methods for creating and configuring CacheValidator instances.

public static class CacheValidatorFactory
Inheritance
CacheValidatorFactory

Examples

The following example demonstrates how to create a from a file using .

using System;
using System.IO;
using Cuemon.Data.Integrity;
using Cuemon.Security;

namespace MyApp.Data;

public sealed class CacheValidatorFactoryExample
{
    public void Demonstrate()
    {
        var file = new FileInfo(Path.GetTempFileName());
        try
        {
            File.WriteAllText(file.FullName, "Hello, world!");

            CacheValidator validator = CacheValidatorFactory.CreateValidator(file);
            Console.WriteLine($"Created (UTC):  {validator.Created:O}");
            Console.WriteLine($"Modified (UTC): {validator.Modified:O}");
            Console.WriteLine($"Validation:     {validator.Validation}");
            Console.WriteLine($"Method:         {validator.Method}");
            Console.WriteLine($"Checksum:       {validator.Checksum.ToHexadecimalString()}");

            // Create validator using a custom hash algorithm
            CacheValidator shaValidator = CacheValidatorFactory.CreateValidator(
                file,
                () => HashFactory.CreateFnv128());
            Console.WriteLine($"SHA-256: {shaValidator.Checksum.ToHexadecimalString()}");
        }
        finally
        {
            file.Delete();
        }
    }
}

Methods

Name Description
CreateValidator(FileInfo, Func<Hash>, Action<FileChecksumOptions>)

Creates and returns an instance of CacheValidator from the specified file.

CreateValidator(Assembly, Func<Hash>, Action<FileChecksumOptions>)

Creates and returns an instance of CacheValidator from the specified assembly.