pub mod store;
use std::sync::Arc;
use crate::store::Store;
use datapress_core::backend::Backend;
use datapress_core::config::AppConfig;
pub async fn serve(cfg: AppConfig) -> std::io::Result<()> {
datapress_core::banner::print();
let store: Arc<dyn Backend> =
Arc::new(Store::load(&cfg).await.expect("failed to load datasets"));
datapress_core::server::serve(cfg, store, "DataFusion").await
}
pub async fn serve_with_shutdown(
cfg: AppConfig,
shutdown: impl std::future::Future<Output = ()> + Send + 'static,
) -> std::io::Result<()> {
datapress_core::banner::print();
let store: Arc<dyn Backend> =
Arc::new(Store::load(&cfg).await.expect("failed to load datasets"));
datapress_core::server::serve_with_shutdown(cfg, store, "DataFusion", shutdown).await
}