public OperationResult<R> executeWithRetry(RetryPolicy retry) throws ConnectionException { ConnectionException lastException = null; retry.begin(); do { try { return execute(); } catch (ConnectionException ex) { if (ex instanceof IsRetryableException) lastException = ex; else throw ex; } } while (retry.allowRetry()); throw lastException; } }
public OperationResult<R> executeWithRetry(RetryPolicy retry) throws ConnectionException { ConnectionException lastException = null; retry.begin(); do { try { return execute(); } catch (ConnectionException ex) { if (ex instanceof IsRetryableException) lastException = ex; else throw ex; } } while (retry.allowRetry()); throw lastException; } }