#[non_exhaustive]pub enum Addressing {
Single {
repo: RepoId,
},
Multi(MultiAddressing),
}Expand description
How a deployment maps a request to a repository.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Single
One configured repository, with optional addressing on unsigned RPCs.
Multi(MultiAddressing)
Routes by X-Repository. The adapters serve it (WP-1.30);
R-111(1)’s no-deployment-before-WP-1.14 rule still applies to the
whole branch (ticket expiry).
Implementations§
Source§impl Addressing
impl Addressing
Sourcepub fn resolve(
&self,
x_repository: Option<&str>,
signed: bool,
) -> Result<ResolvedRepo, ServerError>
pub fn resolve( &self, x_repository: Option<&str>, signed: bool, ) -> Result<ResolvedRepo, ServerError>
Resolve the request target using SPEC-TRANSPORT-CONNECT §7.4. Empty headers count as absent; identities are never normalized.
§Errors
invalid_argument for malformed identities or missing Multi headers;
unauthenticated for missing signed Single headers; not_found for
another well-formed identity on a Single deployment.
Trait Implementations§
Source§impl Clone for Addressing
impl Clone for Addressing
Source§impl Debug for Addressing
impl Debug for Addressing
impl Eq for Addressing
Source§impl PartialEq for Addressing
impl PartialEq for Addressing
impl StructuralPartialEq for Addressing
Auto Trait Implementations§
impl Freeze for Addressing
impl RefUnwindSafe for Addressing
impl Send for Addressing
impl Sync for Addressing
impl Unpin for Addressing
impl UnsafeUnpin for Addressing
impl UnwindSafe for Addressing
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