pub struct SourceManager {
pub sources: Vec<BoxedSource>,
pub mirrors: MirrorsConfig,
pub youtube_cipher_manager: Option<Arc<YouTubeCipherManager>>,
pub youtube_stream_ctx: Option<Arc<YoutubeStreamContext>>,
pub http_pool: Arc<HttpClientPool>,
pub player_config: PlayerConfig,
}Fields§
§sources: Vec<BoxedSource>§mirrors: MirrorsConfig§youtube_cipher_manager: Option<Arc<YouTubeCipherManager>>§youtube_stream_ctx: Option<Arc<YoutubeStreamContext>>§http_pool: Arc<HttpClientPool>§player_config: PlayerConfigImplementations§
Source§impl SourceManager
impl SourceManager
pub fn new(config: &AppConfig) -> Self
pub async fn load( &self, identifier: &str, routeplanner: Option<Arc<dyn RoutePlanner>>, ) -> LoadResult
pub async fn load_search( &self, query: &str, types: &[String], routeplanner: Option<Arc<dyn RoutePlanner>>, ) -> Option<SearchResult>
pub async fn resolve_track( &self, track_info: &TrackInfo, routeplanner: Option<Arc<dyn RoutePlanner>>, ) -> Result<BoxedTrack, String>
pub fn source_names(&self) -> Vec<String>
pub fn get_proxy_config(&self, source_name: &str) -> Option<HttpProxyConfig>
Auto Trait Implementations§
impl !RefUnwindSafe for SourceManager
impl !UnwindSafe for SourceManager
impl Freeze for SourceManager
impl Send for SourceManager
impl Sync for SourceManager
impl Unpin for SourceManager
impl UnsafeUnpin for SourceManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Declassify for T
impl<T> Declassify for T
type Declassified = T
fn declassify(self) -> T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more