private static void RegisterMessageHandlers(HttpConfiguration config, ICorrelationIdValueProvider correlationIdProvider) { config.MessageHandlers.Add(new SaveCorrelationId(correlationIdProvider)); }
private static void RegisterServices(HttpConfiguration config, ICorrelationIdValueProvider correlationIdProvider) { //Register implementation of IExceptionHandler config.Services.Replace(typeof(IExceptionHandler), new ConvertExceptionToFulcrumResponse(correlationIdProvider)); }
/// <summary> /// Constructor. /// </summary> /// <param name="correlationIdProvider">A value provider that knows how to get the correlation id from the execution context.</param> public ConvertExceptionToFulcrumResponse(ICorrelationIdValueProvider correlationIdProvider) : this(correlationIdProvider, null) { }
/// <summary> /// Constructor. /// </summary> /// <param name="correlationIdProvider">A value provider that knows how to get the correlation id from the execution context.</param> /// <param name="logHandler">A log handler that knows how to log exceptions</param> public ConvertExceptionToFulcrumResponse(ICorrelationIdValueProvider correlationIdProvider, IFulcrumLogger logHandler) { _correlationIdProvider = correlationIdProvider; _logHandler = logHandler; }
/// <summary> /// Constructor. /// </summary> /// <param name="correlationIdValueProvider">A provider that knows how to save correlations id on the execution context.</param> public SaveCorrelationId(ICorrelationIdValueProvider correlationIdValueProvider) { InternalContract.RequireNotNull(correlationIdValueProvider, nameof(correlationIdValueProvider)); _correlationIdValueProvider = correlationIdValueProvider; }