Used r2d2 for db connection pool.
This commit is contained in:
1 parent
5df6d5afd1
commit
18f07ac215
8 files changed
+58
-54
No files matched your search
+6
-9
@@ -12,11 +12,11 @@ use async_channel;
|
||||
use futures::{pin_mut, select, FutureExt};
|
||||
use minijinja;
|
||||
use minijinja_autoreload::AutoReloader;
|
||||
use r2d2_sqlite::SqliteConnectionManager;
|
||||
|
||||
|
||||
use crate::events::Event;
|
||||
use crate::util::{CustomResult, Error, SQLiteConnectionFactory};
|
||||
use crate::webui::services::creat_db_pool;
|
||||
use crate::webui::services::{creat_db_pool, Services};
|
||||
use crate::webui::templates::MiniJinjaRenderer;
|
||||
use crate::webui::worker::event_processor_loop;
|
||||
|
||||
@@ -62,8 +62,6 @@ fn create_views_scope() -> Scope {
|
||||
.service(views::actions_partials)
|
||||
}
|
||||
|
||||
|
||||
|
||||
#[tokio::main]
|
||||
pub async fn web_ui_main(
|
||||
conn_fact: SQLiteConnectionFactory,
|
||||
@@ -76,16 +74,15 @@ pub async fn web_ui_main(
|
||||
// https://github.com/ivanceras/r2d2-sqlite) use
|
||||
// https://docs.rs/actix-web/4.3.1/actix_web/web/fn.block.html
|
||||
// in handlers.
|
||||
let pool = creat_db_pool(& conn_fact.path().unwrap());
|
||||
// let db_pool = web::Data::new();
|
||||
let cloned_conn_fact = conn_fact.clone();
|
||||
let pool = creat_db_pool(&conn_fact.path().unwrap());
|
||||
let services = Services::new(pool);
|
||||
|
||||
let server = HttpServer::new(move || {
|
||||
let template_reloader = create_auto_reloader(enable_template_autoreload);
|
||||
App::new()
|
||||
.app_data(web::Data::new(pool.clone()))
|
||||
.app_data(web::Data::new(services.clone()))
|
||||
.app_data(web::Data::new(template_reloader))
|
||||
.app_data(web::Data::new(event_sender.clone()))
|
||||
.app_data(web::Data::new(cloned_conn_fact.clone()))
|
||||
.service(create_static_scope())
|
||||
.service(create_api_scope())
|
||||
.service(create_views_scope())
|
||||
|
||||
Reference in new issue
Block a user