/// <summary> /// Конструктор. /// </summary> /// <param name="services">Сервисы.</param> public StorageService(IServiceProvider services) : base(services) { SmallImages = new MediaStorage(services, "images", new CacheRecycleConfig() { MaxSize = 12 * 1024 * 1024, NormalSize = 10 * 1024 * 1024, MaxFiles = 1200, NormalFiles = 1000 }, "Маленькие изображения"); FullSizeMediaFiles = new MediaStorage(services, "media", new CacheRecycleConfig() { MaxSize = 48 * 1024 * 1024, NormalSize = 40 * 1024 * 1024, MaxFiles = 240, NormalFiles = 200 }, "Полноразмерные медиафайлы"); ThreadData = new ThreadDataStorage(services, "threads", new CacheRecycleConfig() { MaxSize = 12 * 1024 * 1024, NormalSize = 10 * 1024 * 1024, MaxFiles = 500, NormalFiles = 400 }, "Данные тредов"); PostData = new PostDataStorage(services, "posting", new CacheRecycleConfig() { MaxSize = 12 * 1024 * 1024, NormalSize = 10 * 1024 * 1024, MaxFiles = 240, NormalFiles = 200 }, "Данные постинга", new PostingMediaStore(services, "posting-img", new CacheRecycleConfig() { MaxSize = 12 * 1024 * 1024, NormalSize = 10 * 1024 * 1024, MaxFiles = 120, NormalFiles = 100 }, "Изображения постинга")); Drafts = new DraftDataStorage(services, "drafts", "Черновики", new DraftMediaStore(services, "drafts-img", "Изображения черновиков")); Archives = new ArchiveStore(services, "archive", "Архив"); CurrentPostStore = new CurrentPostStore(services, "other", "currentposts.cache"); CustomData = new CustomDataStore(services, "custom", new CacheRecycleConfig() { MaxSize = 6 * 1024 * 1024, NormalSize = 5 * 1024 * 1024, MaxFiles = 120, NormalFiles = 100 }, "Прочие данные"); CacheFolders = new ICacheFolderInfo[] { ThreadData, SmallImages, FullSizeMediaFiles, PostData, PostData.MediaStorage, Drafts, Drafts.MediaStorage, Archives, CustomData }; }