// SPDX-License-Identifier: BUSL-1.1 // Copyright (c) StellaOps using StellaOps.Scanner.Core.Epss; namespace StellaOps.Scanner.Worker.Processing; /// /// Null implementation of IEpssProvider for when EPSS storage is not configured. /// internal sealed class NullEpssProvider : IEpssProvider { public Task GetCurrentAsync(string cveId, CancellationToken cancellationToken = default) => Task.FromResult(null); public Task GetCurrentBatchAsync(IEnumerable cveIds, CancellationToken cancellationToken = default) => Task.FromResult(new EpssBatchResult { Found = [], NotFound = cveIds.ToList(), ModelDate = DateOnly.MinValue }); public Task GetAsOfDateAsync(string cveId, DateOnly asOfDate, CancellationToken cancellationToken = default) => Task.FromResult(null); public Task> GetHistoryAsync(string cveId, DateOnly startDate, DateOnly endDate, CancellationToken cancellationToken = default) => Task.FromResult>([]); public Task GetLatestModelDateAsync(CancellationToken cancellationToken = default) => Task.FromResult(null); public Task IsAvailableAsync(CancellationToken cancellationToken = default) => Task.FromResult(false); }