HttpRepositoryClient

Struct HttpRepositoryClient 

Source
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

Source

pub fn new(url: impl IntoUrl) -> Result<Self>

Construct an instance bound to the specified URL.

Source

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

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,

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,

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,

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,

Like Self::get_path_decoded() but also perform content integrity verification. Read more
Source§

impl Debug for HttpRepositoryClient

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl RepositoryRootReader for HttpRepositoryClient

Source§

fn url(&self) -> Result<Url>

Obtain the URL to which this reader is bound.
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,

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,

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,

Fetch and parse an InRelease file at the relative path specified. Read more
Source§

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 more
Source§

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,

Fetch and parse either an InRelease or Release file at the relative path specified. Read more
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,

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,

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,

Fetch a source package file given a SourcePackageFetch instruction. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more