/
vshmidt
/
masstransit
Обзор
Документация
Войти
/
vshmidt
/
masstransit
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/Transports/MassTransit.Azure.ServiceBus.Core/Configuration/MessageSessionSagaRepositoryConfigurationExtensions.cs
34 строки
1 KB
Chris Patterson
Integration of all external packages into MassTransit, split out into Abstractions, Middleware, and the core MassTransit assembly.
22 янв 2022, 18:24
22 янв 2022, 18:24
b5b4f50
Код
Авторство
О чём код?
namespace MassTransit { using AzureServiceBusTransport; using Configuration; using Saga; public static class MessageSessionSagaRepositoryConfigurationExtensions { /// <summary> /// Configures the saga to use the Azure Service Bus session for saga persistence. /// </summary> /// <param name="configurator"></param> /// <typeparam name="T"></typeparam> /// <returns></returns> public static ISagaRegistrationConfigurator<T> MessageSessionRepository<T>(this ISagaRegistrationConfigurator<T> configurator) where T : class, ISaga { configurator.Repository(x => x.RegisterSagaRepository<T, MessageSessionContext, SagaConsumeContextFactory<MessageSessionContext, T>, MessageSessionSagaRepositoryContextFactory<T>>()); return configurator; } /// <summary> /// Use the Azure Service Bus session saga repository for sagas configured by type (without a specific generic call to AddSaga/AddSagaStateMachine) /// </summary> /// <param name="configurator"></param> public static void SetMessageSessionSagaRepositoryProvider(this IRegistrationConfigurator configurator) { configurator.SetSagaRepositoryProvider(new MessageSessionSagaRepositoryRegistrationProvider()); } } }