in src/Elastic.Channels/Diagnostics/IChannelCallbacks.cs [72:144]
public ChannelCallbackInvoker(ICollection<IChannelCallbacks<TEvent, TResponse>> channelCallbacks)
{
ExportExceptionCallback = channelCallbacks
.Select(e => e.ExportExceptionCallback)
.Where(e => e != null)
.Aggregate(ExportExceptionCallback, (s, f) => s + f);
ExportItemsAttemptCallback = channelCallbacks
.Select(e => e.ExportItemsAttemptCallback)
.Where(e => e != null)
.Aggregate(ExportItemsAttemptCallback, (s, f) => s + f);
ExportMaxRetriesCallback = channelCallbacks
.Select(e => e.ExportMaxRetriesCallback)
.Where(e => e != null)
.Aggregate(ExportMaxRetriesCallback, (s, f) => s + f);
ExportRetryCallback = channelCallbacks
.Select(e => e.ExportRetryCallback)
.Where(e => e != null)
.Aggregate(ExportRetryCallback, (s, f) => s + f);
ExportResponseCallback = channelCallbacks
.Select(e => e.ExportResponseCallback)
.Where(e => e != null)
.Aggregate(ExportResponseCallback, (s, f) => s + f);
ExportBufferCallback = channelCallbacks
.Select(e => e.ExportBufferCallback)
.Where(e => e != null)
.Aggregate((Action?)null, (s, f) => s + f);
ExportRetryableCountCallback = channelCallbacks
.Select(e => e.ExportRetryableCountCallback)
.Where(e => e != null)
.Aggregate(ExportRetryableCountCallback, (s, f) => s + f);
PublishToInboundChannelCallback = channelCallbacks
.Select(e => e.PublishToInboundChannelCallback)
.Where(e => e != null)
.Aggregate((Action?)null, (s, f) => s + f);
PublishToInboundChannelFailureCallback = channelCallbacks
.Select(e => e.PublishToInboundChannelFailureCallback)
.Where(e => e != null)
.Aggregate((Action?)null, (s, f) => s + f);
PublishToOutboundChannelCallback = channelCallbacks
.Select(e => e.PublishToOutboundChannelCallback)
.Where(e => e != null)
.Aggregate((Action?)null, (s, f) => s + f);
OutboundChannelStartedCallback = channelCallbacks
.Select(e => e.OutboundChannelStartedCallback)
.Where(e => e != null)
.Aggregate((Action?)null, (s, f) => s + f);
OutboundChannelExitedCallback = channelCallbacks
.Select(e => e.OutboundChannelExitedCallback)
.Where(e => e != null)
.Aggregate((Action?)null, (s, f) => s + f);
InboundChannelStartedCallback = channelCallbacks
.Select(e => e.InboundChannelStartedCallback)
.Where(e => e != null)
.Aggregate((Action?)null, (s, f) => s + f);
PublishToOutboundChannelFailureCallback = channelCallbacks
.Select(e => e.PublishToOutboundChannelFailureCallback)
.Where(e => e != null)
.Aggregate((Action?)null, (s, f) => s + f);
}