Add Client::browse_user (sends GetShareFileList, code 4, connecting first if needed via the same queue-and-flush path as search replies) and take_browse_result. A new SharedFileListResponseHandler parses the peer's code-5 reply into SharedDirectory entries, forwarded as ClientOperation::BrowseResult and stored per user. Verified end to end: a second real client browses a sharer and receives its file listing.
29 lines
744 B
Rust
29 lines
744 B
Rust
// Core modules
|
|
pub mod actor;
|
|
pub mod client;
|
|
pub mod dispatcher;
|
|
pub mod download_store;
|
|
pub mod error;
|
|
pub mod message;
|
|
pub mod peer;
|
|
pub mod shares;
|
|
pub mod types;
|
|
#[macro_use]
|
|
pub mod utils;
|
|
|
|
// Prelude module for commonly used items
|
|
pub mod prelude {
|
|
pub use crate::actor::server_actor::PeerAddress;
|
|
pub use crate::types::{
|
|
DownloadStatus, File, Search, SearchResult, Transfer,
|
|
};
|
|
pub use crate::{debug, error, info, trace, warn};
|
|
}
|
|
|
|
// Re-export commonly used types
|
|
pub use actor::server_actor::{PeerAddress, UserMessage};
|
|
pub use client::{Client, ClientSettings};
|
|
pub use error::{Result, SoulseekRs};
|
|
pub use message::peer::SharedDirectory;
|
|
pub use types::{DownloadStatus, File, Search, SearchResult, Transfer};
|