コード例 #1
0
 public static IBusOptions DecorateWithPublishFallback(
     this IBusOptions options, Func <Exception, bool> exceptionFilter) =>
 options.Decorate((name, serviceProvider, cachingBusFactory) =>
                  () => EasyCachingBusPolicyDecorator.WithPublishFallback(
                      name,
                      cachingBusFactory,
                      exceptionFilter));
コード例 #2
0
 public static IBusOptions DecorateWithRetry(
     this IBusOptions options,
     int retryCount,
     Func <Exception, bool> exceptionFilter,
     Func <int, TimeSpan> sleepDurationProvider = null) =>
 options.Decorate((name, serviceProvider, cachingBusFactory) =>
                  () => EasyCachingBusPolicyDecorator.WithRetry(
                      name,
                      cachingBusFactory,
                      retryCount,
                      exceptionFilter,
                      sleepDurationProvider));
コード例 #3
0
 public static IBusOptions DecorateWithCircuitBreaker(
     this IBusOptions options,
     ICircuitBreakerParameters initParameters,
     ICircuitBreakerParameters executeParameters,
     TimeSpan subscribeRetryInterval,
     Func <Exception, bool> exceptionFilter) =>
 options.Decorate((name, serviceProvider, cachingBusFactory) =>
                  () => EasyCachingBusPolicyDecorator.WithCircuitBreaker(
                      name,
                      cachingBusFactory,
                      initParameters,
                      executeParameters,
                      subscribeRetryInterval,
                      exceptionFilter));