pub struct Aip194Strict;Expand description
A polling policy that strictly follows AIP-194.
This policy must be decorated to limit the number of polling attempts or the duration of the polling loop.
The policy interprets AIP-194 strictly. It examines the status code to determine if the polling loop may continue.
§Example
let policy = Aip194Strict.with_attempt_limit(3);
let state = PollingState::default().set_attempt_count(4_u32);
assert!(policy.on_error(&state, transient_error()).is_exhausted());
use google_cloud_gax::error::{Error, rpc::Code, rpc::Status};
fn transient_error() -> Error { Error::service(Status::default().set_code(Code::Unavailable)) }Trait Implementations§
Source§impl Clone for Aip194Strict
impl Clone for Aip194Strict
Source§fn clone(&self) -> Aip194Strict
fn clone(&self) -> Aip194Strict
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for Aip194Strict
impl Debug for Aip194Strict
impl PollingErrorPolicy for Aip194Strict
Auto Trait Implementations§
impl Freeze for Aip194Strict
impl RefUnwindSafe for Aip194Strict
impl Send for Aip194Strict
impl Sync for Aip194Strict
impl Unpin for Aip194Strict
impl UnsafeUnpin for Aip194Strict
impl UnwindSafe for Aip194Strict
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> PollingErrorPolicyExt for Twhere
T: PollingErrorPolicy,
impl<T> PollingErrorPolicyExt for Twhere
T: PollingErrorPolicy,
Source§fn with_time_limit(self, maximum_duration: Duration) -> LimitedElapsedTime<Self>
fn with_time_limit(self, maximum_duration: Duration) -> LimitedElapsedTime<Self>
Decorate a PollingErrorPolicy to limit the total elapsed time in the
polling loop. Read more
Source§fn with_attempt_limit(self, maximum_attempts: u32) -> LimitedAttemptCount<Self>
fn with_attempt_limit(self, maximum_attempts: u32) -> LimitedAttemptCount<Self>
Decorate a PollingErrorPolicy to limit the number of poll attempts. Read more