using Microsoft.Extensions.Options; namespace BinaryLane.Api.V2.Configuration; /// Validates client options at application startup. public sealed class BinaryLaneOptionsValidator : IValidateOptions { /// public ValidateOptionsResult Validate(string? name, BinaryLaneOptions options) { if (options is null) { return ValidateOptionsResult.Fail("BinaryLane options are required."); } if (!BinaryLaneOptions.IsValid(options)) { return ValidateOptionsResult.Fail( "BinaryLane BaseUrl must be an absolute HTTPS URL and RequestTimeoutSeconds must be between 1 and 300."); } return ValidateOptionsResult.Success; } }