diff options
Diffstat (limited to 'crates/configuration/src/state.rs')
-rw-r--r-- | crates/configuration/src/state.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/crates/configuration/src/state.rs b/crates/configuration/src/state.rs index 5a51d5b..de58d4b 100644 --- a/crates/configuration/src/state.rs +++ b/crates/configuration/src/state.rs @@ -1,5 +1,6 @@ mod cache_key; mod routing; +mod rule; use async_nats::jetstream::Context; use sqlx::PgPool; @@ -44,6 +45,13 @@ impl AppState { ) -> Result<AppHandle, AppError> { let local_config: LocalConfig = serde_json::from_value(configuration.misc.clone())?; + local_config + .nats + .subject + .split(".") + .next() + .ok_or_else(|| anyhow::anyhow!("expected a dot separated config for nats subjects"))?; + create_stream(&services.jetstream, &local_config.nats).await?; Ok(AppHandle(Arc::new(Self { |