pub struct ServedRepository { /* private fields */ }Expand description
A Repository being served over HTTP.
Implementations§
Source§impl ServedRepository
impl ServedRepository
Sourcepub async fn get(&self, path: impl AsRef<str>) -> Result<Vec<u8>, Error>
pub async fn get(&self, path: impl AsRef<str>) -> Result<Vec<u8>, Error>
Request the given path served by the repository over HTTP.
Sourcepub fn local_url(&self) -> String
pub fn local_url(&self) -> String
Returns the URL that can be used to connect to this repository from this device.
Sourcepub async fn list_packages(&self) -> Result<Vec<PackageEntry>, Error>
pub async fn list_packages(&self) -> Result<Vec<PackageEntry>, Error>
Returns a sorted vector of all packages contained in this repository.
Sourcepub fn get_mirror_config_builder(&self) -> MirrorConfigBuilder
pub fn get_mirror_config_builder(&self) -> MirrorConfigBuilder
Generates a MirrorConfigBuilder that points to this served repository.
Sourcepub fn make_repo_config(&self, url: RepositoryUrl) -> RepositoryConfig
pub fn make_repo_config(&self, url: RepositoryUrl) -> RepositoryConfig
Generate a RepositoryConfig suitable for configuring a package resolver to use this
served repository.
Sourcepub fn make_repo_config_with_subscribe(
&self,
url: RepositoryUrl,
) -> RepositoryConfig
pub fn make_repo_config_with_subscribe( &self, url: RepositoryUrl, ) -> RepositoryConfig
Generate a RepositoryConfig suitable for configuring a package resolver to use this
served repository. Set subscribe on the mirror configs to true.
Sourcepub fn make_repo_config_with_local_mirror(
&self,
url: RepositoryUrl,
) -> RepositoryConfig
pub fn make_repo_config_with_local_mirror( &self, url: RepositoryUrl, ) -> RepositoryConfig
Generate a RepositoryConfig suitable for configuring a package resolver to use this
served repository with local mirroring enabled.
Sourcepub fn make_repo_config_with_persistent_storage(
&self,
url: RepositoryUrl,
) -> RepositoryConfig
pub fn make_repo_config_with_persistent_storage( &self, url: RepositoryUrl, ) -> RepositoryConfig
Generate a RepositoryConfig that permits persisting metadata.
Sourcepub async fn send_auto_event(&self, event: &Event)
pub async fn send_auto_event(&self, event: &Event)
Send an SSE event to all clients subscribed to /auto.
Sourcepub async fn wait_for_n_connected_auto_clients(&self, n: usize)
pub async fn wait_for_n_connected_auto_clients(&self, n: usize)
Waits until send_auto_event would attempt to send an Event to exactly
n clients. Panics if extra clients are connected.
Sourcepub async fn drop_all_auto_clients(&self)
pub async fn drop_all_auto_clients(&self)
Errors all currently existing /auto Response<Body> streams.
Sourcepub fn stop(self) -> impl Future<Output = ()>
pub fn stop(self) -> impl Future<Output = ()>
Gracefully signal the server to stop and returns a future that resolves when it terminates.
Sourcepub fn connection_attempts(&self) -> u64
pub fn connection_attempts(&self) -> u64
Number of connection attempts.
Auto Trait Implementations§
impl Freeze for ServedRepository
impl !RefUnwindSafe for ServedRepository
impl Send for ServedRepository
impl Sync for ServedRepository
impl Unpin for ServedRepository
impl !UnwindSafe for ServedRepository
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
Source§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
Source§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
§impl<T> InstanceFromServiceTransport<T> for T
impl<T> InstanceFromServiceTransport<T> for T
§fn from_service_transport(handle: T) -> T
fn from_service_transport(handle: T) -> T
T to [Self]§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> IntoAny for T
impl<T> IntoAny for T
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>
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>
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