25 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
using Microsoft.Extensions.DependencyInjection;
 | 
						|
using StellaOps.Signer.Core;
 | 
						|
using StellaOps.Signer.Infrastructure.Auditing;
 | 
						|
using StellaOps.Signer.Infrastructure.ProofOfEntitlement;
 | 
						|
using StellaOps.Signer.Infrastructure.Quotas;
 | 
						|
using StellaOps.Signer.Infrastructure.ReleaseVerification;
 | 
						|
using StellaOps.Signer.Infrastructure.Signing;
 | 
						|
 | 
						|
namespace StellaOps.Signer.Infrastructure;
 | 
						|
 | 
						|
public static class ServiceCollectionExtensions
 | 
						|
{
 | 
						|
    public static IServiceCollection AddSignerPipeline(this IServiceCollection services)
 | 
						|
    {
 | 
						|
        services.AddSingleton<ISignerPipeline, SignerPipeline>();
 | 
						|
        services.AddSingleton<IProofOfEntitlementIntrospector, InMemoryProofOfEntitlementIntrospector>();
 | 
						|
        services.AddSingleton<IReleaseIntegrityVerifier, DefaultReleaseIntegrityVerifier>();
 | 
						|
        services.AddSingleton<ISignerQuotaService, InMemoryQuotaService>();
 | 
						|
        services.AddSingleton<IDsseSigner, HmacDsseSigner>();
 | 
						|
        services.AddSingleton<ISignerAuditSink, InMemorySignerAuditSink>();
 | 
						|
        services.AddSingleton(TimeProvider.System);
 | 
						|
        return services;
 | 
						|
    }
 | 
						|
}
 |