pub struct HttpRepositoryClient { /* private fields */ }Expand description
Client for a Debian repository served via HTTP.
Instances are bound to a base URL, which represents the base directory.
Distributions (typically) exist in a dists/<distribution> directory.
Distributions have an InRelease and/or Release file under it.
Implementations§
Source§impl HttpRepositoryClient
impl HttpRepositoryClient
Sourcepub fn new(url: impl IntoUrl) -> Result<Self>
pub fn new(url: impl IntoUrl) -> Result<Self>
Construct an instance bound to the specified URL.
Sourcepub fn new_client(client: Client, url: impl IntoUrl) -> Result<Self>
pub fn new_client(client: Client, url: impl IntoUrl) -> Result<Self>
Construct an instance using the given Client and URL.
The given URL should be the value that follows the
deb line in apt sources files. e.g. for
deb https://deb.debian.org/debian stable main, the value would be
https://deb.debian.org/debian. The URL typically has a dists/ directory
underneath.
Trait Implementations§
Source§impl DataResolver for HttpRepositoryClient
impl DataResolver for HttpRepositoryClient
Source§fn get_path<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_path<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get the content of a relative path as an async reader. Read more
Source§fn get_path_with_digest_verification<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
expected_size: u64,
expected_digest: ContentDigest,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_path_with_digest_verification<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
expected_size: u64,
expected_digest: ContentDigest,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Obtain a reader that performs content integrity checking. Read more
Source§fn get_path_decoded<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
compression: Compression,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_path_decoded<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
compression: Compression,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get the content of a relative path with decompression transparently applied.
Source§fn get_path_decoded_with_digest_verification<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
compression: Compression,
expected_size: u64,
expected_digest: ContentDigest,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_path_decoded_with_digest_verification<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
compression: Compression,
expected_size: u64,
expected_digest: ContentDigest,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Like Self::get_path_decoded() but also perform content integrity verification. Read more
Source§impl Debug for HttpRepositoryClient
impl Debug for HttpRepositoryClient
Source§impl RepositoryRootReader for HttpRepositoryClient
impl RepositoryRootReader for HttpRepositoryClient
Source§fn release_reader_with_distribution_path<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ReleaseReader>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn release_reader_with_distribution_path<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ReleaseReader>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Obtain a ReleaseReader given a distribution path. Read more
Source§fn release_reader<'life0, 'life1, 'async_trait>(
&'life0 self,
distribution: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ReleaseReader>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn release_reader<'life0, 'life1, 'async_trait>(
&'life0 self,
distribution: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn ReleaseReader>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Obtain a ReleaseReader for a given distribution. Read more
Source§fn fetch_inrelease<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<ReleaseFile<'static>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn fetch_inrelease<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<ReleaseFile<'static>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Fetch and parse an
InRelease file at the relative path specified. Read moreSource§fn fetch_release<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<ReleaseFile<'static>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn fetch_release<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<ReleaseFile<'static>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Fetch and parse an
Release file at the relative path specified. Read moreSource§fn fetch_inrelease_or_release<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
inrelease_path: &'life1 str,
release_path: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<ReleaseFile<'static>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn fetch_inrelease_or_release<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
inrelease_path: &'life1 str,
release_path: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<ReleaseFile<'static>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§fn fetch_binary_package_generic<'fetch, 'life0, 'async_trait>(
&'life0 self,
fetch: BinaryPackageFetch<'fetch>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'fetch: 'async_trait,
'life0: 'async_trait,
fn fetch_binary_package_generic<'fetch, 'life0, 'async_trait>(
&'life0 self,
fetch: BinaryPackageFetch<'fetch>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'fetch: 'async_trait,
'life0: 'async_trait,
Fetch a binary package given a BinaryPackageFetch instruction. Read more
Source§fn fetch_binary_package_deb_reader<'fetch, 'life0, 'async_trait>(
&'life0 self,
fetch: BinaryPackageFetch<'fetch>,
) -> Pin<Box<dyn Future<Output = Result<BinaryPackageReader<Cursor<Vec<u8>>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'fetch: 'async_trait,
'life0: 'async_trait,
fn fetch_binary_package_deb_reader<'fetch, 'life0, 'async_trait>(
&'life0 self,
fetch: BinaryPackageFetch<'fetch>,
) -> Pin<Box<dyn Future<Output = Result<BinaryPackageReader<Cursor<Vec<u8>>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'fetch: 'async_trait,
'life0: 'async_trait,
Fetch a binary package given a BinaryPackageFetch instruction. Read more
Source§fn fetch_source_package_generic<'fetch, 'life0, 'async_trait>(
&'life0 self,
fetch: SourcePackageFetch<'fetch>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'fetch: 'async_trait,
'life0: 'async_trait,
fn fetch_source_package_generic<'fetch, 'life0, 'async_trait>(
&'life0 self,
fetch: SourcePackageFetch<'fetch>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn AsyncRead + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'fetch: 'async_trait,
'life0: 'async_trait,
Fetch a source package file given a SourcePackageFetch instruction. Read more
Auto Trait Implementations§
impl Freeze for HttpRepositoryClient
impl !RefUnwindSafe for HttpRepositoryClient
impl Send for HttpRepositoryClient
impl Sync for HttpRepositoryClient
impl Unpin for HttpRepositoryClient
impl !UnwindSafe for HttpRepositoryClient
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