Example #1
0
        /// <summary>
        /// Add external Emeraude files options
        /// </summary>
        /// <param name="options"></param>
        /// <param name="filesOptionsAction"></param>
        public static void ConfigureFilesInfrastructure(
            this EmOptions options,
            Action <EmFilesOptions> filesOptionsAction)
        {
            EmFilesOptions filesOptions = new EmFilesOptions();

            filesOptionsAction.Invoke(filesOptions);
            options.AddExternalOptions(filesOptions);
        }
        /// <summary>
        /// Registers system file management services.
        /// </summary>
        /// <param name="services"></param>
        /// <param name="options"></param>
        /// <returns></returns>
        public static IServiceCollection RegisterEmeraudeSystemFilesManagement(
            this IServiceCollection services,
            EmFilesOptions options)
        {
            services.AddScoped <ISystemFilesService, SystemFilesService>();
            services.AddScoped <IFilesValidationProvider, FilesValidationProvider>();
            services.AddScoped <IFoldersInitializer, FoldersInitializer>();
            services.AddScoped <IUploadService, UploadService>();
            services.AddScoped <IRootsService, RootsService>();

            return(services);
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="ClientUploadApiController"/> class.
 /// </summary>
 /// <param name="emeraudeOptionsAccessor"></param>
 public ClientUploadApiController(IOptions <EmOptions> emeraudeOptionsAccessor)
 {
     this.filesOptions = emeraudeOptionsAccessor.Value.GetFilesOptions();
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="FilesValidationProvider"/> class.
 /// </summary>
 /// <param name="optionsAccessor"></param>
 public FilesValidationProvider(IOptions <EmOptions> optionsAccessor)
 {
     this.options = optionsAccessor.Value.GetFilesOptions();
 }