Skip to main content

linkrs_server/http/
state.rs

1use crate::storage::{
2    StorageClient, StorageOperationContextOps, StorageSchemaContextOps, StorageSyncContextOps,
3};
4use crate::HttpServer;
5use std::sync::Arc;
6
7#[derive(Clone)]
8pub struct AppState<
9    S: StorageClient
10        + StorageSchemaContextOps
11        + StorageSyncContextOps
12        + StorageOperationContextOps
13        + Clone
14        + 'static,
15> {
16    pub server: Arc<HttpServer<S>>,
17}
18
19impl<
20        S: StorageClient
21            + StorageSchemaContextOps
22            + StorageSyncContextOps
23            + StorageOperationContextOps
24            + Clone
25            + 'static,
26    > AppState<S>
27{
28    pub fn new(server: Arc<HttpServer<S>>) -> Self {
29        Self { server }
30    }
31}