/// <summary> /// Handling the finally from ExecuteInternal. /// </summary> /// <param name="deferred"></param> /// <param name="listeners"></param> /// <param name="context"></param> private void HandleFinally(ICollection <System.Exception> deferred, IRepeatListener[] listeners, IRepeatContext context) { try { if (deferred.Any()) { System.Exception exception = deferred.First(); Logger.Debug("Handling fatal exception explicitly (rethrowing first of {0}): {1} : {2}", deferred.Count, exception.GetType().Name, exception.Message ); Rethrow(exception); } } finally { try { foreach (IRepeatListener interceptor in _listeners) { interceptor.Close(context); } } finally { context.Close(); } } }
/// <summary> /// Handling the finally from ExecuteInternal. /// </summary> /// <param name="deferred"></param> /// <param name="listeners"></param> /// <param name="context"></param> private void HandleFinally(ICollection<System.Exception> deferred,IRepeatListener[] listeners,IRepeatContext context) { try { if (deferred.Any()) { System.Exception exception = deferred.First(); Logger.Debug("Handling fatal exception explicitly (rethrowing first of {0}): {1} : {2}", deferred.Count, exception.GetType().Name, exception.Message ); Rethrow(exception); } } finally { try { foreach (IRepeatListener interceptor in _listeners) { interceptor.Close(context); } } finally { context.Close(); } } }