public SharpZipArchiver( ITempFileStreamFactory tempFileStreamFactory, TempFileOptions tempFileOptions) { _tempFileStreamFactory = tempFileStreamFactory; _tempFileOptions = tempFileOptions; _arrayPool = ArrayPool <byte> .Create(); }
public TempFilesInitService( TempFileOptions tempFileOptions, ILogger <TempFilesInitService> logger) { _tempFileOptions = tempFileOptions ?? throw new ArgumentNullException(nameof(tempFileOptions)); tempFileOptions.AssertValid(); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
public TempFileStreamFactory(TempFileOptions tempFileOptions) { if (String.IsNullOrWhiteSpace(tempFileOptions.TempPath)) { throw new ArgumentNullException(nameof(tempFileOptions.TempPath)); } _tempFileOptions = tempFileOptions ?? throw new ArgumentNullException(nameof(tempFileOptions)); tempFileOptions.AssertValid(); }
public TempDirCleaner(ILogger <TempDirCleaner> logger, TempFileOptions options) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); if (options == null) { throw new ArgumentNullException(nameof(options)); } _frequency = TimeSpan.FromHours(options.CleaningFrequencyHours); _ttl = TimeSpan.FromHours(options.FileTtlHours); _tempPath = options.TempPath; }
/// <summary> /// Adds all services for working with temp file streams to services. /// </summary> public static IServiceCollection AddTempFileServices( this IServiceCollection services, TempFileOptions tempFileOptions) { if (services == null) { throw new ArgumentNullException(nameof(services)); } if (tempFileOptions == null) { throw new ArgumentNullException(nameof(tempFileOptions)); } tempFileOptions.AssertValid(); services.TryAddSingleton(tempFileOptions); services.TryAddSingleton <ITempFileStreamFactory, TempFileStreamFactory>(); services.AddAppInitializer <TempFilesInitService>(); return(services); }
/// <summary> /// Adds temp directory cleaner as hosted service. /// </summary> public static IServiceCollection AddTempDirCleaner(this IServiceCollection services, TempFileOptions tempFileOptions) { if (services == null) { throw new ArgumentNullException(nameof(services)); } if (tempFileOptions == null) { throw new ArgumentNullException(nameof(tempFileOptions)); } tempFileOptions.AssertValid(); services.TryAddSingleton(tempFileOptions); services.AddHostedService <TempDirCleaner>(); return(services); }
/// <summary> /// Adds SharpZip archiver to services. /// </summary> public static IServiceCollection AddSharpZipArchiver(this IServiceCollection services, TempFileOptions tempFileOptions) { if (services == null) { throw new ArgumentNullException(nameof(services)); } if (tempFileOptions == null) { throw new ArgumentNullException(nameof(tempFileOptions)); } services.TryAddSingleton <IArchiver, SharpZipArchiver>(); // requires temp file subsystem services.AddTempFileServices(tempFileOptions); return(services); }