pub struct SecretsManagerService { /* private fields */ }Expand description
The Secrets Manager service handler.
Implementations§
Source§impl SecretsManagerService
impl SecretsManagerService
pub fn new() -> Self
Sourcepub fn with_lambda_invoker(self, invoker: Arc<dyn LambdaInvoker>) -> Self
pub fn with_lambda_invoker(self, invoker: Arc<dyn LambdaInvoker>) -> Self
Attach a Lambda invoker so RotateSecret can dispatch the
four-step rotation state machine against the customer’s
rotation Lambda. When absent, RotateSecret falls back to the
in-process simulation (used by tests and bare deployments).
pub fn store(&self) -> AccountRegionStore<SecretsState>
pub fn lambda_invoker(&self) -> Option<&Arc<dyn LambdaInvoker>>
Trait Implementations§
Source§impl Default for SecretsManagerService
impl Default for SecretsManagerService
Source§impl ServiceHandler for SecretsManagerService
impl ServiceHandler for SecretsManagerService
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.
fn iam_action(&self, operation: &str) -> Option<String>
fn iam_resource( &self, operation: &str, input: &Value, ctx: &RequestContext, ) -> Option<String>
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
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 SecretsManagerService
impl !RefUnwindSafe for SecretsManagerService
impl Send for SecretsManagerService
impl Sync for SecretsManagerService
impl Unpin for SecretsManagerService
impl UnsafeUnpin for SecretsManagerService
impl !UnwindSafe for SecretsManagerService
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