/// <summary> /// Конструктор. /// </summary> /// <param name="executable">Выполняемое.</param> /// <param name="coreBaseResourceErrors">Ядро. Основа. Ресурсы. Ошибки.</param> /// <param name="dataBaseSettings">Настройки основы данных.</param> /// <param name="cacheSettings">Настройки кэширования.</param> /// <param name="cache">Кэш.</param> /// <param name="coreCachingResourceErrors">Ресурсы ошибок ядра кэширования.</param> public ModDummyMainCachingJobOptionsDummyManyToManyGetService( Func <Task <ModDummyMainBaseCommonJobOptionListGetOutput> > executable, CoreBaseResourceErrors coreBaseResourceErrors, DataBaseSettings dataBaseSettings, ICoreCachingCommonClientConfigSettings cacheSettings, ICoreCachingCache cache, CoreCachingResourceErrors coreCachingResourceErrors ) : base(executable, coreBaseResourceErrors) { if (cacheSettings.IsCachingEnabled) { var client = new CoreCachingClientWithChangeAndRead <ModDummyMainBaseCommonJobOptionListGetOutput>( "Options.DummyManyToMany.Get", cacheSettings, cache, coreCachingResourceErrors ); var tags = new[] { dataBaseSettings.DummyManyToMany.DbTableWithSchema }; Executable = () => { return(client.Read(() => executable.Invoke(), null, tags)); }; } }
/// <summary> /// Конструктор. /// </summary> /// <param name="executable">Выполняемое.</param> /// <param name="coreBaseResourceErrors">Ядро. Основа. Ресурсы. Ошибки.</param> /// <param name="dataBaseSettings">Настройки основы данных.</param> /// <param name="cacheSettings">Настройки кэширования.</param> /// <param name="cache">Кэш.</param> /// <param name="coreCachingResourceErrors">Ресурсы ошибок ядра кэширования.</param> public ModProductCachingJobListGetService( Func <ModProductBaseJobListGetInput, Task <ModProductBaseJobListGetOutput> > executable, CoreBaseResourceErrors coreBaseResourceErrors, DataBaseSettings dataBaseSettings, ICoreCachingCommonClientConfigSettings cacheSettings, ICoreCachingCache cache, CoreCachingResourceErrors coreCachingResourceErrors ) : base(executable, coreBaseResourceErrors) { if (cacheSettings.IsCachingEnabled) { var client = new CoreCachingClientWithChangeAndRead <ModProductBaseJobListGetOutput>( "List.Get", cacheSettings, cache, coreCachingResourceErrors ); var tags = new[] { dataBaseSettings.Product.DbTableWithSchema }; Executable = input => { var keys = new object[] { input.DataObjectProductCategoryName, input.DataObjectProductCategoryIds, input.DataObjectProductCategoryId, input.DataName, input.DataIds, input.DataPageNumber, input.DataPageSize, input.DataSortField, input.DataSortDirection }; return(client.Read(() => executable.Invoke(input), keys, tags)); }; } }
/// <summary> /// Конструктор. /// </summary> /// <param name="executable">Выполняемое.</param> /// <param name="coreBaseResourceErrors">Ядро. Основа. Ресурсы. Ошибки.</param> /// <param name="dataBaseSettings">Настройки основы данных.</param> /// <param name="cacheSettings">Настройки кэширования.</param> /// <param name="cache">Кэш.</param> /// <param name="coreCachingResourceErrors">Ресурсы ошибок ядра кэширования.</param> public ModDummyMainCachingJobItemGetService( Func <ModDummyMainBaseJobItemGetInput, Task <ModDummyMainBaseJobItemGetOutput> > executable, CoreBaseResourceErrors coreBaseResourceErrors, DataBaseSettings dataBaseSettings, ICoreCachingCommonClientConfigSettings cacheSettings, ICoreCachingCache cache, CoreCachingResourceErrors coreCachingResourceErrors ) : base(executable, coreBaseResourceErrors) { if (cacheSettings.IsCachingEnabled) { var client = new CoreCachingClientWithChangeAndRead <ModDummyMainBaseJobItemGetOutput>( "Item.Get", cacheSettings, cache, coreCachingResourceErrors ); var tags = new[] { dataBaseSettings.DummyMain.DbTableWithSchema, dataBaseSettings.DummyManyToMany.DbTableWithSchema, dataBaseSettings.DummyMainDummyManyToMany.DbTableWithSchema, dataBaseSettings.DummyOneToMany.DbTableWithSchema }; Executable = input => { var keys = new object[] { input.DataId, input.DataName }; return(client.Read(() => executable.Invoke(input), keys, tags)); }; } }