chore: fix error if no id
This commit is contained in:
parent
7f15375e44
commit
6469d0e041
104
src/defs.rs
104
src/defs.rs
@ -90,33 +90,35 @@ impl AppDataConn {
|
||||
pub async fn new(name: String, stores_settings: Vec<StoreSettings>, key: &str) -> Self {
|
||||
let mut datastores: HashMap<String,DataPool> = HashMap::new();
|
||||
for settings in stores_settings.iter() {
|
||||
match settings.datastore {
|
||||
DataStore::Redis => {
|
||||
datastores.insert(
|
||||
settings.id.to_owned(),
|
||||
DataPool::Redis(RedisPool::new(settings.to_owned()).connect_pool().await)
|
||||
);
|
||||
},
|
||||
DataStore::Mysql => {
|
||||
datastores.insert(
|
||||
settings.id.to_owned(),
|
||||
DataPool::Mysql(MysqlPool::new(settings.to_owned(),key).await.connect_pool().await)
|
||||
);
|
||||
},
|
||||
DataStore::Postgres => {
|
||||
datastores.insert(
|
||||
settings.id.to_owned(),
|
||||
DataPool::Postgres(PostgresPool::new(settings.to_owned(),key).await.connect_pool().await)
|
||||
);
|
||||
},
|
||||
DataStore::Sqlite => {
|
||||
datastores.insert(
|
||||
settings.id.to_owned(),
|
||||
DataPool::Sqlite(SqlitePool::new(settings.to_owned()).connect_pool().await)
|
||||
);
|
||||
},
|
||||
_ => continue,
|
||||
};
|
||||
if !settings.id.is_empty() { // && datastores_settings.len() == 1usize {
|
||||
match settings.datastore {
|
||||
DataStore::Redis => {
|
||||
datastores.insert(
|
||||
settings.id.to_owned(),
|
||||
DataPool::Redis(RedisPool::new(settings.to_owned()).connect_pool().await)
|
||||
);
|
||||
},
|
||||
DataStore::Mysql => {
|
||||
datastores.insert(
|
||||
settings.id.to_owned(),
|
||||
DataPool::Mysql(MysqlPool::new(settings.to_owned(),key).await.connect_pool().await)
|
||||
);
|
||||
},
|
||||
DataStore::Postgres => {
|
||||
datastores.insert(
|
||||
settings.id.to_owned(),
|
||||
DataPool::Postgres(PostgresPool::new(settings.to_owned(),key).await.connect_pool().await)
|
||||
);
|
||||
},
|
||||
DataStore::Sqlite => {
|
||||
datastores.insert(
|
||||
settings.id.to_owned(),
|
||||
DataPool::Sqlite(SqlitePool::new(settings.to_owned()).connect_pool().await)
|
||||
);
|
||||
},
|
||||
_ => continue,
|
||||
};
|
||||
}
|
||||
}
|
||||
Self {
|
||||
name,
|
||||
@ -174,29 +176,33 @@ impl AppDataConn {
|
||||
let debug = envmnt::get_isize("DEBUG",0);
|
||||
let mut status = false;
|
||||
for con in &datastores_settings {
|
||||
match con.datastore {
|
||||
DataStore::Redis => {
|
||||
status = match self.get_redis(&con.id).await {
|
||||
Ok(_pool) => {
|
||||
if debug > 0 {
|
||||
println!("app_data_conn found redis pool");
|
||||
}
|
||||
true
|
||||
},
|
||||
Err(e) => {
|
||||
if StoreSettings::check_required_id(datastores_settings.to_owned(),&con.id) {
|
||||
panic!("Error app_data_conn required: {}",e);
|
||||
} else {
|
||||
println!("Error app_data_conn: {}",e);
|
||||
}
|
||||
false
|
||||
},
|
||||
if con.id.is_empty() { // && datastores_settings.len() == 1usize {
|
||||
status = true;
|
||||
} else {
|
||||
match con.datastore {
|
||||
DataStore::Redis => {
|
||||
status = match self.get_redis(&con.id).await {
|
||||
Ok(_pool) => {
|
||||
if debug > 0 {
|
||||
println!("app_data_conn found redis pool");
|
||||
}
|
||||
true
|
||||
},
|
||||
Err(e) => {
|
||||
if StoreSettings::check_required_id(datastores_settings.to_owned(),&con.id) {
|
||||
panic!("Error app_data_conn required: {}",e);
|
||||
} else {
|
||||
println!("Error app_data_conn: {}",e);
|
||||
}
|
||||
false
|
||||
},
|
||||
}
|
||||
}
|
||||
_ => {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
_ => {
|
||||
continue;
|
||||
}
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
status
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user