Skip to content

Commit d970bb8

Browse files
committed
refactor: [#950] rename DatabaseDriver to Driver
1 parent 954295a commit d970bb8

File tree

5 files changed

+29
-30
lines changed

5 files changed

+29
-30
lines changed

src/core/databases/driver.rs

+8-9
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,8 @@ use super::{Builder, Database};
1717
/// - [Torrust Tracker](https://docs.rs/torrust-tracker).
1818
///
1919
/// For more information about persistence.
20-
#[allow(clippy::module_name_repetitions)]
2120
#[derive(Serialize, Deserialize, PartialEq, Eq, Debug, derive_more::Display, Clone)]
22-
pub enum DatabaseDriver {
21+
pub enum Driver {
2322
/// The Sqlite3 database driver.
2423
Sqlite3,
2524
/// The `MySQL` database driver.
@@ -32,9 +31,9 @@ pub enum DatabaseDriver {
3231
///
3332
/// ```rust,no_run
3433
/// use torrust_tracker::core::databases;
35-
/// use torrust_tracker::core::databases::driver::DatabaseDriver;
34+
/// use torrust_tracker::core::databases::driver::Driver;
3635
///
37-
/// let db_driver = DatabaseDriver::Sqlite3;
36+
/// let db_driver = Driver::Sqlite3;
3837
/// let db_path = "./storage/tracker/lib/database/sqlite3.db".to_string();
3938
/// let database = databases::driver::build(&db_driver, &db_path);
4039
/// ```
@@ -43,9 +42,9 @@ pub enum DatabaseDriver {
4342
///
4443
/// ```rust,no_run
4544
/// use torrust_tracker::core::databases;
46-
/// use torrust_tracker::core::databases::driver::DatabaseDriver;
45+
/// use torrust_tracker::core::databases::driver::Driver;
4746
///
48-
/// let db_driver = DatabaseDriver::MySQL;
47+
/// let db_driver = Driver::MySQL;
4948
/// let db_path = "mysql://db_user:db_user_secret_password@mysql:3306/torrust_tracker".to_string();
5049
/// let database = databases::driver::build(&db_driver, &db_path);
5150
/// ```
@@ -62,10 +61,10 @@ pub enum DatabaseDriver {
6261
/// # Panics
6362
///
6463
/// This function will panic if unable to create database tables.
65-
pub fn build(driver: &DatabaseDriver, db_path: &str) -> Result<Box<dyn Database>, Error> {
64+
pub fn build(driver: &Driver, db_path: &str) -> Result<Box<dyn Database>, Error> {
6665
let database = match driver {
67-
DatabaseDriver::Sqlite3 => Builder::<Sqlite>::build(db_path),
68-
DatabaseDriver::MySQL => Builder::<Mysql>::build(db_path),
66+
Driver::Sqlite3 => Builder::<Sqlite>::build(db_path),
67+
Driver::MySQL => Builder::<Mysql>::build(db_path),
6968
}?;
7069

7170
database.create_database_tables().expect("Could not create database tables.");

src/core/databases/error.rs

+13-13
Original file line numberDiff line numberDiff line change
@@ -7,51 +7,51 @@ use std::sync::Arc;
77
use r2d2_mysql::mysql::UrlError;
88
use torrust_tracker_located_error::{DynError, Located, LocatedError};
99

10-
use super::driver::DatabaseDriver;
10+
use super::driver::Driver;
1111

1212
#[derive(thiserror::Error, Debug, Clone)]
1313
pub enum Error {
1414
/// The query unexpectedly returned nothing.
1515
#[error("The {driver} query unexpectedly returned nothing: {source}")]
1616
QueryReturnedNoRows {
1717
source: LocatedError<'static, dyn std::error::Error + Send + Sync>,
18-
driver: DatabaseDriver,
18+
driver: Driver,
1919
},
2020

2121
/// The query was malformed.
2222
#[error("The {driver} query was malformed: {source}")]
2323
InvalidQuery {
2424
source: LocatedError<'static, dyn std::error::Error + Send + Sync>,
25-
driver: DatabaseDriver,
25+
driver: Driver,
2626
},
2727

2828
/// Unable to insert a record into the database
2929
#[error("Unable to insert record into {driver} database, {location}")]
3030
InsertFailed {
3131
location: &'static Location<'static>,
32-
driver: DatabaseDriver,
32+
driver: Driver,
3333
},
3434

3535
/// Unable to delete a record into the database
3636
#[error("Failed to remove record from {driver} database, error-code: {error_code}, {location}")]
3737
DeleteFailed {
3838
location: &'static Location<'static>,
3939
error_code: usize,
40-
driver: DatabaseDriver,
40+
driver: Driver,
4141
},
4242

4343
/// Unable to connect to the database
4444
#[error("Failed to connect to {driver} database: {source}")]
4545
ConnectionError {
4646
source: LocatedError<'static, UrlError>,
47-
driver: DatabaseDriver,
47+
driver: Driver,
4848
},
4949

5050
/// Unable to create a connection pool
5151
#[error("Failed to create r2d2 {driver} connection pool: {source}")]
5252
ConnectionPool {
5353
source: LocatedError<'static, r2d2::Error>,
54-
driver: DatabaseDriver,
54+
driver: Driver,
5555
},
5656
}
5757

@@ -61,11 +61,11 @@ impl From<r2d2_sqlite::rusqlite::Error> for Error {
6161
match err {
6262
r2d2_sqlite::rusqlite::Error::QueryReturnedNoRows => Error::QueryReturnedNoRows {
6363
source: (Arc::new(err) as DynError).into(),
64-
driver: DatabaseDriver::Sqlite3,
64+
driver: Driver::Sqlite3,
6565
},
6666
_ => Error::InvalidQuery {
6767
source: (Arc::new(err) as DynError).into(),
68-
driver: DatabaseDriver::Sqlite3,
68+
driver: Driver::Sqlite3,
6969
},
7070
}
7171
}
@@ -77,7 +77,7 @@ impl From<r2d2_mysql::mysql::Error> for Error {
7777
let e: DynError = Arc::new(err);
7878
Error::InvalidQuery {
7979
source: e.into(),
80-
driver: DatabaseDriver::MySQL,
80+
driver: Driver::MySQL,
8181
}
8282
}
8383
}
@@ -87,14 +87,14 @@ impl From<UrlError> for Error {
8787
fn from(err: UrlError) -> Self {
8888
Self::ConnectionError {
8989
source: Located(err).into(),
90-
driver: DatabaseDriver::MySQL,
90+
driver: Driver::MySQL,
9191
}
9292
}
9393
}
9494

95-
impl From<(r2d2::Error, DatabaseDriver)> for Error {
95+
impl From<(r2d2::Error, Driver)> for Error {
9696
#[track_caller]
97-
fn from(e: (r2d2::Error, DatabaseDriver)) -> Self {
97+
fn from(e: (r2d2::Error, Driver)) -> Self {
9898
let (err, driver) = e;
9999
Self::ConnectionPool {
100100
source: Located(err).into(),

src/core/databases/mysql.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ use torrust_tracker_primitives::info_hash::InfoHash;
1111
use torrust_tracker_primitives::PersistentTorrents;
1212
use tracing::debug;
1313

14-
use super::driver::DatabaseDriver;
14+
use super::driver::Driver;
1515
use super::{Database, Error};
1616
use crate::core::auth::{self, Key};
1717
use crate::shared::bit_torrent::common::AUTH_KEY_LENGTH;
1818

19-
const DRIVER: DatabaseDriver = DatabaseDriver::MySQL;
19+
const DRIVER: Driver = Driver::MySQL;
2020

2121
pub struct Mysql {
2222
pool: Pool<MySqlConnectionManager>,

src/core/databases/sqlite.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@ use r2d2_sqlite::SqliteConnectionManager;
88
use torrust_tracker_primitives::info_hash::InfoHash;
99
use torrust_tracker_primitives::{DurationSinceUnixEpoch, PersistentTorrents};
1010

11-
use super::driver::DatabaseDriver;
11+
use super::driver::Driver;
1212
use super::{Database, Error};
1313
use crate::core::auth::{self, Key};
1414

15-
const DRIVER: DatabaseDriver = DatabaseDriver::Sqlite3;
15+
const DRIVER: Driver = Driver::Sqlite3;
1616

1717
pub struct Sqlite {
1818
pool: Pool<SqliteConnectionManager>,
@@ -29,7 +29,7 @@ impl Database for Sqlite {
2929
/// Will return `r2d2::Error` if `db_path` is not able to create `SqLite` database.
3030
fn new(db_path: &str) -> Result<Sqlite, Error> {
3131
let cm = SqliteConnectionManager::file(db_path);
32-
Pool::new(cm).map_or_else(|err| Err((err, DatabaseDriver::Sqlite3).into()), |pool| Ok(Sqlite { pool }))
32+
Pool::new(cm).map_or_else(|err| Err((err, Driver::Sqlite3).into()), |pool| Ok(Sqlite { pool }))
3333
}
3434

3535
/// Refer to [`databases::Database::create_database_tables`](crate::core::databases::Database::create_database_tables).

src/core/mod.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -453,7 +453,7 @@ use std::panic::Location;
453453
use std::sync::Arc;
454454
use std::time::Duration;
455455

456-
use databases::driver::DatabaseDriver;
456+
use databases::driver::Driver;
457457
use derive_more::Constructor;
458458
use tokio::sync::mpsc::error::SendError;
459459
use torrust_tracker_clock::clock::Time;
@@ -567,8 +567,8 @@ impl Tracker {
567567
stats_repository: statistics::Repo,
568568
) -> Result<Tracker, databases::error::Error> {
569569
let driver = match config.database.driver {
570-
database::Driver::Sqlite3 => DatabaseDriver::Sqlite3,
571-
database::Driver::MySQL => DatabaseDriver::MySQL,
570+
database::Driver::Sqlite3 => Driver::Sqlite3,
571+
database::Driver::MySQL => Driver::MySQL,
572572
};
573573

574574
let database = Arc::new(databases::driver::build(&driver, &config.database.path)?);

0 commit comments

Comments
 (0)