#[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 Intercept for RecursionDetectionInterceptor
impl Intercept for RecursionDetectionInterceptor
source§fn name(&self) -> &'static str
fn name(&self) -> &'static str
The name of this interceptor, used in error messages for debugging.
source§fn modify_before_signing(
&self,
context: &mut BeforeTransmitInterceptorContextMut<'_>,
_runtime_components: &RuntimeComponents,
_cfg: &mut ConfigBag,
) -> Result<(), BoxError>
fn modify_before_signing( &self, context: &mut BeforeTransmitInterceptorContextMut<'_>, _runtime_components: &RuntimeComponents, _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: &BeforeSerializationInterceptorContextRef<'_>,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_before_execution( &self, context: &BeforeSerializationInterceptorContextRef<'_>, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
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 BeforeSerializationInterceptorContextMut<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn modify_before_serialization( &self, context: &mut BeforeSerializationInterceptorContextMut<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
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: &BeforeSerializationInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_before_serialization( &self, context: &BeforeSerializationInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
A hook called before the input message is marshalled
into a transport
message. Read more
source§fn read_after_serialization(
&self,
context: &BeforeTransmitInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_after_serialization( &self, context: &BeforeTransmitInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
A hook called after the input message is marshalled into
a transport message. Read more
source§fn modify_before_retry_loop(
&self,
context: &mut BeforeTransmitInterceptorContextMut<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn modify_before_retry_loop( &self, context: &mut BeforeTransmitInterceptorContextMut<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
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: &BeforeTransmitInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_before_attempt( &self, context: &BeforeTransmitInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
A hook called before each attempt at sending the transmission
request message to the service. Read more
source§fn read_before_signing(
&self,
context: &BeforeTransmitInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_before_signing( &self, context: &BeforeTransmitInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
A hook called before the transport request message is signed. Read more
source§fn read_after_signing(
&self,
context: &BeforeTransmitInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_after_signing( &self, context: &BeforeTransmitInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
A hook called after the transport request message is signed. Read more
source§fn modify_before_transmit(
&self,
context: &mut BeforeTransmitInterceptorContextMut<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn modify_before_transmit( &self, context: &mut BeforeTransmitInterceptorContextMut<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
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. Read more
source§fn read_before_transmit(
&self,
context: &BeforeTransmitInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_before_transmit( &self, context: &BeforeTransmitInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
A hook called before the transport request message is sent to the
service. Read more
source§fn read_after_transmit(
&self,
context: &BeforeDeserializationInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_after_transmit( &self, context: &BeforeDeserializationInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
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 BeforeDeserializationInterceptorContextMut<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn modify_before_deserialization( &self, context: &mut BeforeDeserializationInterceptorContextMut<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
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: &BeforeDeserializationInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_before_deserialization( &self, context: &BeforeDeserializationInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
A hook called before the transport response message is unmarshalled Read more
source§fn read_after_deserialization(
&self,
context: &AfterDeserializationInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_after_deserialization( &self, context: &AfterDeserializationInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
A hook called after the transport response message is unmarshalled. Read more
source§fn modify_before_attempt_completion(
&self,
context: &mut FinalizerInterceptorContextMut<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn modify_before_attempt_completion( &self, context: &mut FinalizerInterceptorContextMut<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
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: &FinalizerInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_after_attempt( &self, context: &FinalizerInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
A hook called when an attempt is completed. Read more
source§fn modify_before_completion(
&self,
context: &mut FinalizerInterceptorContextMut<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn modify_before_completion( &self, context: &mut FinalizerInterceptorContextMut<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
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
source§fn read_after_execution(
&self,
context: &FinalizerInterceptorContextRef<'_>,
runtime_components: &RuntimeComponents,
cfg: &mut ConfigBag,
) -> Result<(), Box<dyn Error + Sync + Send>>
fn read_after_execution( &self, context: &FinalizerInterceptorContextRef<'_>, runtime_components: &RuntimeComponents, cfg: &mut ConfigBag, ) -> Result<(), Box<dyn Error + Sync + Send>>
A hook called when an execution is completed. Read more
Auto Trait Implementations§
impl Freeze for RecursionDetectionInterceptor
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
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>
Creates a shared type from an unshared type.