/
vshmidt
/
masstransit
Обзор
Документация
Войти
/
vshmidt
/
masstransit
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/MassTransit/Caching/Internals/INodeValueFactory.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.Caching.Internals { using System.Threading.Tasks; /// <summary> /// Holds a queue of pending values, attemping to resolve them in order until /// one of them completes, and then using the completing value for any pending /// values instead of calling their factory methods. /// </summary> /// <typeparam name="TValue">The value type</typeparam> public interface INodeValueFactory<TValue> where TValue : class { /// <summary> /// Returns the final value of the factory, either completed or faulted /// </summary> Task<TValue> Value { get; } /// <summary> /// Add a pending value to the factory, which will either use a previously /// completed value or become the new factory method for the value. /// </summary> /// <param name="pendingValue">The factory method</param> void Add(IPendingValue<TValue> pendingValue); /// <summary> /// Called by the node tracker to create the value, which is then redistributed to the indices. /// Should not be called by another as it's used to resolve the value. /// </summary> /// <returns>The ultimate value task, either completed or faulted</returns> Task<TValue> CreateValue(); } }