pub struct CloudFormationService { /* private fields */ }Expand description
The AWSim CloudFormation service handler.
Implementations§
Trait Implementations§
Source§impl Default for CloudFormationService
impl Default for CloudFormationService
Source§impl ServiceHandler for CloudFormationService
impl ServiceHandler for CloudFormationService
Source§fn service_name(&self) -> &str
fn service_name(&self) -> &str
The AWS service name (e.g., “s3”, “sqs”, “dynamodb”).
Source§fn signing_name(&self) -> &str
fn signing_name(&self) -> &str
The signing name used in SigV4 Authorization headers.
Usually the same as service_name, but not always.
Source§fn handle<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
operation: &'life1 str,
input: Value,
ctx: &'life2 RequestContext,
) -> Pin<Box<dyn Future<Output = Result<Value, AwsError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn handle<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
operation: &'life1 str,
input: Value,
ctx: &'life2 RequestContext,
) -> Pin<Box<dyn Future<Output = Result<Value, AwsError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Handle an AWS API operation.
Source§fn routes(&self) -> Vec<RouteDefinition>
fn routes(&self) -> Vec<RouteDefinition>
Route definitions for REST-protocol services.
Not needed for RPC-style protocols (awsJson, awsQuery).
Source§fn handle_streaming<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
operation: &'life1 str,
input: Value,
ctx: &'life2 RequestContext,
) -> Pin<Box<dyn Future<Output = Result<HandlerResult, AwsError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn handle_streaming<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
operation: &'life1 str,
input: Value,
ctx: &'life2 RequestContext,
) -> Pin<Box<dyn Future<Output = Result<HandlerResult, AwsError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Streaming-aware variant. The default delegates to
handle and
wraps the JSON result so existing services don’t need to do
anything; services that genuinely stream (Bedrock data plane)
override this and return HandlerResult::Streaming.Source§fn snapshot(&self) -> Option<Vec<u8>>
fn snapshot(&self) -> Option<Vec<u8>>
Serialize the service’s state to bytes for persistence. Read more
Source§fn restore(&self, _data: &[u8]) -> Result<(), String>
fn restore(&self, _data: &[u8]) -> Result<(), String>
Restore the service’s state from a previous snapshot. Read more
Source§fn rehydrate(&self) -> Result<(), String>
fn rehydrate(&self) -> Result<(), String>
Called after every service has been restored from its
snapshot, before the gateway begins serving traffic. Read more
fn iam_action(&self, _operation: &str) -> Option<String>
fn iam_resource( &self, _operation: &str, _input: &Value, _ctx: &RequestContext, ) -> Option<String>
Source§fn tick<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn tick<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Periodic tick. The gateway spawns a single 1-second loop that
calls
tick on every registered service after the server is up.
Use this hook for time-driven behavior that doesn’t fit into the
request path: SQS visibility-timeout reclamation, DynamoDB TTL
expiry, Lambda event-source-mapping polling, S3 lifecycle
transitions, EventBridge schedule firing, SecretsManager
rotation, etc. Read moreAuto Trait Implementations§
impl Freeze for CloudFormationService
impl !RefUnwindSafe for CloudFormationService
impl Send for CloudFormationService
impl Sync for CloudFormationService
impl Unpin for CloudFormationService
impl UnsafeUnpin for CloudFormationService
impl !UnwindSafe for CloudFormationService
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