/
vshmidt
/
masstransit
Обзор
Документация
Войти
/
vshmidt
/
masstransit
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/MassTransit/Middleware/ScopeExecuteFilter.cs
31 строка
1008 B
denys.kozhevnikov
Cleanup using
25 янв 2023, 22:00
25 янв 2023, 22:00
15c3b8b
Код
Авторство
О чём код?
namespace MassTransit.Middleware { using System.Threading.Tasks; using DependencyInjection; public class ScopeExecuteFilter<TActivity, TArguments> : IFilter<ExecuteContext<TArguments>> where TArguments : class where TActivity : class, IExecuteActivity<TArguments> { readonly IExecuteActivityScopeProvider<TActivity, TArguments> _scopeProvider; public ScopeExecuteFilter(IExecuteActivityScopeProvider<TActivity, TArguments> scopeProvider) { _scopeProvider = scopeProvider; } public async Task Send(ExecuteContext<TArguments> context, IPipe<ExecuteContext<TArguments>> next) { await using IExecuteScopeContext<TArguments> scope = await _scopeProvider.GetScope(context).ConfigureAwait(false); await next.Send(scope.Context).ConfigureAwait(false); } public void Probe(ProbeContext context) { context.CreateFilterScope("scope"); } } }