#[non_exhaustive]pub struct RecursionDetectionInterceptor { /* private fields */ }
Expand description
Recursion Detection Interceptor
This interceptor inspects the value of the AWS_LAMBDA_FUNCTION_NAME
and _X_AMZN_TRACE_ID
environment
variables to detect if the request is being invoked in a Lambda function. If it is, the X-Amzn-Trace-Id
header
will be set. This enables downstream services to prevent accidentally infinitely recursive invocations spawned
from Lambda.
Implementations§
Trait Implementations§
source§impl Default for RecursionDetectionInterceptor
impl Default for RecursionDetectionInterceptor
source§fn default() -> RecursionDetectionInterceptor
fn default() -> RecursionDetectionInterceptor
Returns the “default value” for a type. Read more
source§impl Interceptor<Request<SdkBody>, Response<SdkBody>> for RecursionDetectionInterceptor
impl Interceptor<Request<SdkBody>, Response<SdkBody>> for RecursionDetectionInterceptor
source§fn modify_before_signing(
&self,
context: &mut InterceptorContext<HttpRequest, HttpResponse>,
_cfg: &mut ConfigBag
) -> Result<(), BoxError>
fn modify_before_signing( &self, context: &mut InterceptorContext<HttpRequest, HttpResponse>, _cfg: &mut ConfigBag ) -> Result<(), BoxError>
A hook called before the transport request message is signed.
This method has the ability to modify and return a new transport
request message of the same type. Read more
source§fn read_before_execution(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_before_execution( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called at the start of an execution, before the SDK
does anything else. Read more
source§fn modify_before_serialization(
&self,
context: &mut InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn modify_before_serialization( &self, context: &mut InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called before the input message is marshalled into a
transport message.
This method has the ability to modify and return a new
request message of the same type. Read more
source§fn read_before_serialization(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_before_serialization( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called before the input message is marshalled
into a transport
message. Read more
source§fn read_after_serialization(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_after_serialization( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
/// A hook called after the input message is marshalled into
/// a transport message.
///
/// When: This will ALWAYS be called once per execution, except when a
/// failure occurs earlier in the request pipeline. The duration
/// between invocation of this hook and
before_serialization
is very
/// close to the amount of time spent marshalling the request.
///
/// Available Information: The InterceptorContext::input()
/// and InterceptorContext::request() are ALWAYS available.
/// Other information WILL NOT be available.
///
/// Error Behavior: If errors are raised by this hook,
/// execution will jump to modify_before_completion
with the raised
/// error as the InterceptorContext::output_or_error().source§fn modify_before_retry_loop(
&self,
context: &mut InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn modify_before_retry_loop( &self, context: &mut InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called before the retry loop is entered. This method
has the ability to modify and return a new transport request
message of the same type, except when a failure occurs earlier in the request pipeline. Read more
source§fn read_before_attempt(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_before_attempt( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called before each attempt at sending the transmission
request message to the service. Read more
source§fn read_before_signing(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_before_signing( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called before the transport request message is signed. Read more
source§fn read_after_signing(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_after_signing( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called after the transport request message is signed. Read more
source§fn modify_before_transmit(
&self,
context: &mut InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn modify_before_transmit( &self, context: &mut InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
/// A hook called before the transport request message is sent to the
/// service. This method has the ability to modify and return
/// a new transport request message of the same type.
///
/// When: This will ALWAYS be called once per attempt, except when a
/// failure occurs earlier in the request pipeline. This method may be
/// called multiple times in the event of retries.
///
/// Available Information: The InterceptorContext::input()
/// and InterceptorContext::request() are ALWAYS available.
/// The
http::Request
may have been modified by earlier
/// modify_before_transmit
hooks, and may be modified further by later
/// hooks. Other information WILL NOT be available.
/// In the event of retries, the InterceptorContext
will not include
/// changes made in previous attempts (e.g. by request signers or
other interceptors). Read moresource§fn read_before_transmit(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_before_transmit( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called before the transport request message is sent to the
service. Read more
source§fn read_after_transmit(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_after_transmit( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called after the transport request message is sent to the
service and a transport response message is received. Read more
source§fn modify_before_deserialization(
&self,
context: &mut InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn modify_before_deserialization( &self, context: &mut InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called before the transport response message is unmarshalled.
This method has the ability to modify and return a new transport
response message of the same type. Read more
source§fn read_before_deserialization(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_before_deserialization( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called before the transport response message is unmarshalled Read more
source§fn read_after_deserialization(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_after_deserialization( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called after the transport response message is unmarshalled. Read more
source§fn modify_before_attempt_completion(
&self,
context: &mut InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn modify_before_attempt_completion( &self, context: &mut InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called when an attempt is completed. This method has the
ability to modify and return a new output message or error
matching the currently-executing operation. Read more
source§fn read_after_attempt(
&self,
context: &InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn read_after_attempt( &self, context: &InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called when an attempt is completed. Read more
source§fn modify_before_completion(
&self,
context: &mut InterceptorContext<TxReq, TxRes>,
cfg: &mut ConfigBag
) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
fn modify_before_completion( &self, context: &mut InterceptorContext<TxReq, TxRes>, cfg: &mut ConfigBag ) -> Result<(), Box<dyn Error + Send + Sync + 'static, Global>>
A hook called when an execution is completed.
This method has the ability to modify and return a new
output message or error matching the currently - executing
operation. Read more
Auto Trait Implementations§
impl RefUnwindSafe for RecursionDetectionInterceptor
impl Send for RecursionDetectionInterceptor
impl Sync for RecursionDetectionInterceptor
impl Unpin for RecursionDetectionInterceptor
impl UnwindSafe for RecursionDetectionInterceptor
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