Topaz Retry with Unity Interception

Topics: Transient Fault Handling Application Block ("Topaz")
Jun 22, 2015 at 9:29 PM
Hello,

I'm using Unity to register a class to an interface and in the process of doing so, utilizing Unity interceptors as well. For one instance, I have the following:
container.RegisterType<IService, Service>(
    new Interceptor<InterfaceInterceptor>(),
    new InterceptionBehavior<RetryBehavior>(),
    new InterceptionBehavior<LogBehavior>());
The RetryBehavior looks like this:
        /// <inheritdoc />
        public override IMethodReturn Invoke(IMethodInvocation input, GetNextInterceptionBehaviorDelegate getNext)
        {
            var result = this.retryPolicy.ExecuteAsync<TResult>(
                () =>
                {
                    var innerResult = getNext()(input, getNext);

                    return innerResult.ReturnValue as Task<TResult>;
                });

            return input.CreateMethodReturn(result);
        }
The problem is, the Invoke of the LogBehavior class is only hit the first time. I'd like to log each of the retries. Is this possible? The retry is working correctly as I see the service being hit several times as expected.