public static Task <OperationResult <TOutput> > ExecuteAsync <TOutput>(this FabricRequest request, TimeSpan maxTimeout, CancellationToken cancellationToken)
        {
            TimeBasedCondition condition = new TimeBasedCondition(maxTimeout);

            return(ExecuteAsync <TOutput>(request, condition, cancellationToken));
        }
        public static Task ExecuteAsync(this FabricRequest request, TimeSpan delayBetweenRetries, TimeSpan maxTimeout, CancellationToken cancellationToken)
        {
            TimeBasedCondition condition = new TimeBasedCondition(maxTimeout);

            return(ExecuteAsync(request, condition, delayBetweenRetries, x => x, cancellationToken));
        }