Class EkmServiceLimitedTimeRetryPolicy (2.30.0)

A retry policy for EkmServiceConnection based on elapsed time.

This policy stops retrying if:

  • An RPC returns a non-transient error.
  • The elapsed time in the retry loop exceeds a prescribed duration.

In this class the following status codes are treated as transient errors:

Constructors

EkmServiceLimitedTimeRetryPolicy(std::chrono::duration< DurationRep, DurationPeriod >)

Constructor given a std::chrono::duration<> object.

See Also

https://en.cppreference.com/w/cpp/chrono/duration for more information about std::chrono::duration.

Parameters
Name Description
maximum_duration std::chrono::duration< DurationRep, DurationPeriod >

the maximum time allowed before the policy expires. While the application can express this time in any units they desire, the class truncates to milliseconds.

typename DurationRep

a placeholder to match the Rep tparam for duration's type. The semantics of this template parameter are documented in std::chrono::duration<>. In brief, the underlying arithmetic type used to store the number of ticks. For our purposes it is simply a formal parameter.

typename DurationPeriod

a placeholder to match the Period tparam for duration's type. The semantics of this template parameter are documented in std::chrono::duration<>. In brief, the length of the tick in seconds, expressed as a std::ratio<>. For our purposes it is simply a formal parameter.

EkmServiceLimitedTimeRetryPolicy(EkmServiceLimitedTimeRetryPolicy &&)

Parameter
Name Description
rhs EkmServiceLimitedTimeRetryPolicy &&

EkmServiceLimitedTimeRetryPolicy(EkmServiceLimitedTimeRetryPolicy const &)

Parameter
Name Description
rhs EkmServiceLimitedTimeRetryPolicy const &

Functions

maximum_duration() const

Returns
Type Description
std::chrono::milliseconds

virtual OnFailure(Status const &)

Parameter
Name Description
status Status const &
Returns
Type Description
bool

virtual IsExhausted() const

Returns
Type Description
bool

virtual IsPermanentFailure(Status const &) const

Parameter
Name Description
status Status const &
Returns
Type Description
bool

virtual clone() const

Creates a new instance of the policy, reset to the initial state.

Returns
Type Description
std::unique_ptr< EkmServiceRetryPolicy >

Type Aliases

BaseType

Alias Of: EkmServiceRetryPolicy