Skip to main content

nestrs_idempotency/
module.rs

1use crate::options::IdempotencyOptions;
2use axum::Router;
3use nestrs_core::{DynamicModule, ProviderRegistry};
4use std::any::TypeId;
5use std::sync::Arc;
6
7pub struct IdempotencyModule;
8
9impl IdempotencyModule {
10    pub fn register(options: IdempotencyOptions) -> DynamicModule {
11        let mut registry = ProviderRegistry::new();
12        registry.register_use_value::<IdempotencyOptions>(Arc::new(options));
13        DynamicModule::from_parts(
14            registry,
15            Router::new(),
16            vec![TypeId::of::<IdempotencyOptions>()],
17        )
18    }
19}