AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
Aws::Client::AdaptiveRetryStrategy Class Reference

#include <AdaptiveRetryStrategy.h>

Inheritance diagram for Aws::Client::AdaptiveRetryStrategy:
[legend]

Public Member Functions

 AdaptiveRetryStrategy (long maxAttempts=3)
 
 AdaptiveRetryStrategy (std::shared_ptr< RetryQuotaContainer > retryQuotaContainer, long maxAttempts=3)
 
virtual bool HasSendToken () override
 
virtual void RequestBookkeeping (const HttpResponseOutcome &httpResponseOutcome) override
 
virtual void RequestBookkeeping (const HttpResponseOutcome &httpResponseOutcome, const AWSError< CoreErrors > &lastError) override
 
const char * GetStrategyName () const override
 

Public Member Functions inherited from Aws::Client::StandardRetryStrategy

 StandardRetryStrategy (long maxAttempts=3)
 
 StandardRetryStrategy (std::shared_ptr< RetryQuotaContainer > retryQuotaContainer, long maxAttempts=3)
 
virtual bool ShouldRetry (const AWSError< CoreErrors > &error, long attemptedRetries) const override
 
virtual long CalculateDelayBeforeNextRetry (const AWSError< CoreErrors > &error, long attemptedRetries) const override
 
virtual long GetMaxAttempts () const override
 
const char * GetStrategyName () const override
 

Public Member Functions inherited from Aws::Client::RetryStrategy

virtual ~RetryStrategy ()=default
 
virtual void GetSendToken ()
 

Protected Attributes

 
bool m_fastFail = false
 

Protected Attributes inherited from Aws::Client::StandardRetryStrategy

 
 

Detailed Description

A retry strategy that builds on the standard strategy and introduces congestion control through client side rate limiting.

Definition at line 118 of file AdaptiveRetryStrategy.h.

Constructor & Destructor Documentation

◆ AdaptiveRetryStrategy() [1/2]

Aws::Client::AdaptiveRetryStrategy::AdaptiveRetryStrategy ( long  maxAttempts = 3)

C-tors

◆ AdaptiveRetryStrategy() [2/2]

Aws::Client::AdaptiveRetryStrategy::AdaptiveRetryStrategy ( std::shared_ptr< RetryQuotaContainer retryQuotaContainer,
long  maxAttempts = 3 
)

Member Function Documentation

◆ GetStrategyName()

const char * Aws::Client::AdaptiveRetryStrategy::GetStrategyName ( ) const
inlineoverridevirtual

Get return strategy name.

Reimplemented from Aws::Client::RetryStrategy.

Definition at line 142 of file AdaptiveRetryStrategy.h.

◆ HasSendToken()

virtual bool Aws::Client::AdaptiveRetryStrategy::HasSendToken ( )
overridevirtual

Retrieve and consume a send token. Returns true if send token is available.

If there is not sufficient capacity, HasSendToken() will either sleep a certain amount of time until the rate limiter can retrieve a token from its token bucket or return false indicating there is insufficient capacity.

Reimplemented from Aws::Client::RetryStrategy.

◆ RequestBookkeeping() [1/2]

virtual void Aws::Client::AdaptiveRetryStrategy::RequestBookkeeping ( const HttpResponseOutcome httpResponseOutcome)
overridevirtual

Update status, like the information of retry quota when receiving a response.

Reimplemented from Aws::Client::StandardRetryStrategy.

◆ RequestBookkeeping() [2/2]

virtual void Aws::Client::AdaptiveRetryStrategy::RequestBookkeeping ( const HttpResponseOutcome httpResponseOutcome,
const AWSError< CoreErrors > &  lastError 
)
overridevirtual

Member Data Documentation

◆ m_fastFail

bool Aws::Client::AdaptiveRetryStrategy::m_fastFail = false
protected

Definition at line 146 of file AdaptiveRetryStrategy.h.

◆ m_retryTokenBucket

RetryTokenBucket Aws::Client::AdaptiveRetryStrategy::m_retryTokenBucket
protected

Definition at line 145 of file AdaptiveRetryStrategy.h.


The documentation for this class was generated from the following file: