30 lines
1.0 KiB
C#
30 lines
1.0 KiB
C#
using Microsoft.Extensions.DependencyInjection;
|
|
|
|
namespace StellaOps.Scanner.Reachability.Witnesses;
|
|
|
|
/// <summary>
|
|
/// Extension methods for registering suppression witness services.
|
|
/// Sprint: SPRINT_20260106_001_002 (SUP-019)
|
|
/// </summary>
|
|
public static class SuppressionWitnessServiceCollectionExtensions
|
|
{
|
|
/// <summary>
|
|
/// Adds suppression witness services to the dependency injection container.
|
|
/// </summary>
|
|
/// <param name="services">The service collection.</param>
|
|
/// <returns>The service collection for chaining.</returns>
|
|
public static IServiceCollection AddSuppressionWitnessServices(this IServiceCollection services)
|
|
{
|
|
// Register builder
|
|
services.AddSingleton<ISuppressionWitnessBuilder, SuppressionWitnessBuilder>();
|
|
|
|
// Register DSSE signer
|
|
services.AddSingleton<ISuppressionDsseSigner, SuppressionDsseSigner>();
|
|
|
|
// Register TimeProvider if not already registered
|
|
services.AddSingleton(TimeProvider.System);
|
|
|
|
return services;
|
|
}
|
|
}
|