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();
        }
예제 #3
0
        /// <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);
        }
예제 #4
0
        /// <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);
        }