reactive_graph_graphql_api/graphql_system.rs
1use std::sync::Arc;
2
3use async_trait::async_trait;
4use springtime_di::injectable;
5
6use reactive_graph_lifecycle::Lifecycle;
7
8use crate::GraphQLQueryService;
9use crate::GraphQLSchemaManager;
10
11#[injectable]
12#[async_trait]
13pub trait GraphQLSystem: Lifecycle {
14 fn get_graphql_query_service(&self) -> Arc<dyn GraphQLQueryService + Send + Sync>;
15
16 fn get_graphql_schema_manager(&self) -> Arc<dyn GraphQLSchemaManager + Send + Sync>;
17}