Files
fil/docs/snippets/csharp/plugins/min_length_validator.md
Henrik Jess Nielsen b4c07d3693
All checks were successful
Deploy fil (kreuzberg) / deploy (push) Successful in 49s
Nomad changes
2026-06-01 23:40:55 +02:00

1.1 KiB

using Kreuzberg;

var validator = new MinimumLengthValidator();
ValidatorRegistry.Register(validator);

public class MinimumLengthValidator : IValidator
{
    private const int MinimumLength = 10;

    public string Name => "min-length-validator";
    public string Version => "1.0.0";

    public void Initialize()
    {
        Console.WriteLine($"Minimum length validator initialized (min: {MinimumLength})");
    }

    public void Shutdown()
    {
        Console.WriteLine("Minimum length validator shut down");
    }

    public void Validate(ExtractionResult result, ExtractionConfig config)
    {
        if (result.Content.Length < MinimumLength)
        {
            throw new KreuzbergException(
                $"Content length {result.Content.Length} is below minimum {MinimumLength}",
                1001
            );
        }
    }

    public bool ShouldValidate(ExtractionResult result, ExtractionConfig config)
    {
        return !string.IsNullOrEmpty(result.Content);
    }

    public int Priority()
    {
        return 50;
    }
}