[dbi]: make ogs_dbi_final depend on the selected database driver

This commit is contained in:
Alexander Couzens 2022-08-23 17:39:16 +02:00
parent f0c97bff19
commit 0e0de176fe
3 changed files with 11 additions and 5 deletions

View File

@ -31,6 +31,7 @@ extern "C" {
struct ogs_dbi_s {
const char *name;
void (*final)(void);
/* session */
int (*session_data)(char *supi, ogs_s_nssai_t *s_nssai, char *dnn,
ogs_session_data_t *data);

View File

@ -63,6 +63,14 @@ int ogs_dbi_select_interface(const char *dbi_name)
return -1;
}
void ogs_dbi_final(void)
{
if (!dbi_selected)
return;
dbi_selected->final();
}
/* ims */
int ogs_dbi_msisdn_data(
char *imsi_or_msisdn_bcd, ogs_msisdn_data_t *msisdn_data)

View File

@ -164,6 +164,8 @@ ogs_mongoc_t *ogs_mongoc(void)
ogs_dbi_t ogs_dbi_mongo_interface = {
.name = "mongo",
/* final */
.final = ogs_mongoc_final,
/* session */
.session_data = ogs_dbi_mongo_session_data,
/* ims */
@ -201,8 +203,3 @@ int ogs_dbi_mongo_init(const char *db_uri)
return OGS_OK;
}
void ogs_dbi_final()
{
ogs_mongoc_final();
}