diff --git a/crates/librqbit/examples/custom_storage.rs b/crates/librqbit/examples/custom_storage.rs index 3f568dc..84754b4 100644 --- a/crates/librqbit/examples/custom_storage.rs +++ b/crates/librqbit/examples/custom_storage.rs @@ -1,7 +1,7 @@ use std::time::Duration; use librqbit::{ - storage::{mmap::MmapStorageFactory, StorageFactoryExt}, + storage::{examples::mmap::MmapStorageFactory, StorageFactoryExt}, SessionOptions, }; use tracing::info; diff --git a/crates/librqbit/src/storage/example.rs b/crates/librqbit/src/storage/examples/inmemory.rs similarity index 98% rename from crates/librqbit/src/storage/example.rs rename to crates/librqbit/src/storage/examples/inmemory.rs index 7fde403..38a279f 100644 --- a/crates/librqbit/src/storage/example.rs +++ b/crates/librqbit/src/storage/examples/inmemory.rs @@ -6,7 +6,7 @@ use parking_lot::RwLock; use crate::type_aliases::FileInfos; -use super::{StorageFactory, TorrentStorage}; +use crate::storage::{StorageFactory, TorrentStorage}; struct InMemoryPiece { bytes: Box<[u8]>, diff --git a/crates/librqbit/src/storage/mmap.rs b/crates/librqbit/src/storage/examples/mmap.rs similarity index 94% rename from crates/librqbit/src/storage/mmap.rs rename to crates/librqbit/src/storage/examples/mmap.rs index ffeb533..290cef7 100644 --- a/crates/librqbit/src/storage/mmap.rs +++ b/crates/librqbit/src/storage/examples/mmap.rs @@ -2,9 +2,10 @@ use anyhow::Context; use memmap2::{MmapMut, MmapOptions}; use parking_lot::RwLock; -use crate::{FileInfos, ManagedTorrentInfo}; - -use super::{StorageFactory, TorrentStorage}; +use crate::{ + storage::{StorageFactory, TorrentStorage}, + FileInfos, ManagedTorrentInfo, +}; #[derive(Default)] pub struct MmapStorageFactory {} diff --git a/crates/librqbit/src/storage/examples/mod.rs b/crates/librqbit/src/storage/examples/mod.rs new file mode 100644 index 0000000..0ac3ad0 --- /dev/null +++ b/crates/librqbit/src/storage/examples/mod.rs @@ -0,0 +1,2 @@ +pub mod inmemory; +pub mod mmap; diff --git a/crates/librqbit/src/storage/middleware/mod.rs b/crates/librqbit/src/storage/middleware/mod.rs new file mode 100644 index 0000000..e1b0fab --- /dev/null +++ b/crates/librqbit/src/storage/middleware/mod.rs @@ -0,0 +1,2 @@ +pub mod slow; +pub mod timing; diff --git a/crates/librqbit/src/storage/slow.rs b/crates/librqbit/src/storage/middleware/slow.rs similarity index 97% rename from crates/librqbit/src/storage/slow.rs rename to crates/librqbit/src/storage/middleware/slow.rs index 28f4dba..4e42ba2 100644 --- a/crates/librqbit/src/storage/slow.rs +++ b/crates/librqbit/src/storage/middleware/slow.rs @@ -2,7 +2,7 @@ use std::time::Duration; use rand_distr::Distribution; -use super::{StorageFactory, TorrentStorage}; +use crate::storage::{StorageFactory, TorrentStorage}; pub struct SlowStorageFactory { underlying_factory: U, diff --git a/crates/librqbit/src/storage/timing.rs b/crates/librqbit/src/storage/middleware/timing.rs similarity index 97% rename from crates/librqbit/src/storage/timing.rs rename to crates/librqbit/src/storage/middleware/timing.rs index 7451cd3..9d3210b 100644 --- a/crates/librqbit/src/storage/timing.rs +++ b/crates/librqbit/src/storage/middleware/timing.rs @@ -1,4 +1,4 @@ -use super::{StorageFactory, TorrentStorage}; +use crate::storage::{StorageFactory, TorrentStorage}; pub struct TimingStorageFactory { name: String, diff --git a/crates/librqbit/src/storage/mod.rs b/crates/librqbit/src/storage/mod.rs index f2420f5..063d280 100644 --- a/crates/librqbit/src/storage/mod.rs +++ b/crates/librqbit/src/storage/mod.rs @@ -1,8 +1,6 @@ -pub mod example; +pub mod examples; pub mod filesystem; -pub mod mmap; -pub mod slow; -pub mod timing; +pub mod middleware; use std::{ any::{Any, TypeId}, diff --git a/crates/librqbit/src/tests/e2e_stream.rs b/crates/librqbit/src/tests/e2e_stream.rs index c06857f..e8c9556 100644 --- a/crates/librqbit/src/tests/e2e_stream.rs +++ b/crates/librqbit/src/tests/e2e_stream.rs @@ -6,7 +6,7 @@ use tracing::info; use crate::{ create_torrent, - storage::{example::InMemoryExampleStorageFactory, StorageFactoryExt}, + storage::{examples::inmemory::InMemoryExampleStorageFactory, StorageFactoryExt}, AddTorrent, CreateTorrentOptions, Session, }; diff --git a/crates/rqbit/src/main.rs b/crates/rqbit/src/main.rs index 6698259..11a33e1 100644 --- a/crates/rqbit/src/main.rs +++ b/crates/rqbit/src/main.rs @@ -8,8 +8,9 @@ use librqbit::{ http_api::{HttpApi, HttpApiOptions}, http_api_client, librqbit_spawn, storage::{ - filesystem::FilesystemStorageFactory, slow::SlowStorageFactory, - timing::TimingStorageFactory, StorageFactoryExt, + filesystem::FilesystemStorageFactory, + middleware::{slow::SlowStorageFactory, timing::TimingStorageFactory}, + StorageFactoryExt, }, tracing_subscriber_config_utils::{init_logging, InitLoggingOptions}, AddTorrent, AddTorrentOptions, AddTorrentResponse, Api, ListOnlyResponse,