Struct fidl_fuchsia_pkg::PackageResolverProxy
source · pub struct PackageResolverProxy { /* private fields */ }
Implementations§
source§impl PackageResolverProxy
impl PackageResolverProxy
sourcepub fn take_event_stream(&self) -> PackageResolverEventStream
pub fn take_event_stream(&self) -> PackageResolverEventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
sourcepub fn resolve(
&self,
package_url: &str,
dir: ServerEnd<DirectoryMarker>
) -> QueryResponseFut<PackageResolverResolveResult>
pub fn resolve( &self, package_url: &str, dir: ServerEnd<DirectoryMarker> ) -> QueryResponseFut<PackageResolverResolveResult>
Populates or updates the cache of a package using an absolute package URL.
Ensures that a package, and any transitive subpackages, are on the local filesystem.
- request
package_url
the absolute package URL for a package. The following link describes the format: https://fuchsia.dev/fuchsia-src/concepts/packages/package_url. Resource paths are not allowed. - request
dir
a request for a directory that will be resolved when the package has been successfully cached. - returns a
resolved_context
, which can be passed toResolveWithContext
, with a relative URL, to resolve a subpackage of this package.
- error indicates failure. See
ResolveError
for values and error scenarios.
sourcepub fn resolve_with_context(
&self,
package_url: &str,
context: &ResolutionContext,
dir: ServerEnd<DirectoryMarker>
) -> QueryResponseFut<PackageResolverResolveWithContextResult>
pub fn resolve_with_context( &self, package_url: &str, context: &ResolutionContext, dir: ServerEnd<DirectoryMarker> ) -> QueryResponseFut<PackageResolverResolveWithContextResult>
Populates or updates the cache of a package using either an absolute or
a relative package URL. If relative, the package will be resolved
relative to the supplied context
.
Ensures that a package is on the local filesystem.
- request
package_url
the absolute or relative package URL for a package. If absolute, thecontext
is ignored, and the behavior is identical to callingResolve()
. A relativepackage_url
is a subpackage name. - request
context
aResolutionContext
associated with a previously resolved package, for resolving subpackages relative to that package. - request
dir
a request for a directory that will be resolved when the package has been successfully cached. - returns a
resolved_context
, which can be passed to a subsequent call toResolveWithContext
, with a relative URL, to resolve a subpackage of this package or subpackage.
- error indicates failure. See
ResolveError
for values and error scenarios.
sourcepub fn get_hash(
&self,
package_url: &PackageUrl
) -> QueryResponseFut<PackageResolverGetHashResult>
pub fn get_hash( &self, package_url: &PackageUrl ) -> QueryResponseFut<PackageResolverGetHashResult>
Determines the hash of a package.
- request
package_url
the package URL for a package.
- response
meta_far_blob_id
the hash of the package.
- error a zx_status value indicating failure. One of the following:
ZX_ERR_INTERNAL
if the resolver encountered an otherwise unspecified error while handling the request.ZX_ERR_NOT_FOUND
if the package does not exist in the repository specified bypackage_url
.ZX_ERR_BAD_STATE
if the resolver does not know about the repository specified bypackage_url
.
Trait Implementations§
source§impl Clone for PackageResolverProxy
impl Clone for PackageResolverProxy
source§fn clone(&self) -> PackageResolverProxy
fn clone(&self) -> PackageResolverProxy
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for PackageResolverProxy
impl Debug for PackageResolverProxy
source§impl PackageResolverProxyInterface for PackageResolverProxy
impl PackageResolverProxyInterface for PackageResolverProxy
type ResolveResponseFut = QueryResponseFut<Result<ResolutionContext, ResolveError>>
fn resolve( &self, package_url: &str, dir: ServerEnd<DirectoryMarker> ) -> Self::ResolveResponseFut
type ResolveWithContextResponseFut = QueryResponseFut<Result<ResolutionContext, ResolveError>>
fn resolve_with_context( &self, package_url: &str, context: &ResolutionContext, dir: ServerEnd<DirectoryMarker> ) -> Self::ResolveWithContextResponseFut
type GetHashResponseFut = QueryResponseFut<Result<BlobId, i32>>
fn get_hash(&self, package_url: &PackageUrl) -> Self::GetHashResponseFut
source§impl Proxy for PackageResolverProxy
impl Proxy for PackageResolverProxy
§type Protocol = PackageResolverMarker
type Protocol = PackageResolverMarker
The protocol which this
Proxy
controls.source§fn from_channel(inner: AsyncChannel) -> Self
fn from_channel(inner: AsyncChannel) -> Self
Create a proxy over the given channel.
source§fn into_channel(self) -> Result<AsyncChannel, Self>
fn into_channel(self) -> Result<AsyncChannel, Self>
Attempt to convert the proxy back into a channel. Read more
source§fn as_channel(&self) -> &AsyncChannel
fn as_channel(&self) -> &AsyncChannel
Get a reference to the proxy’s underlying channel. Read more
§fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
Attempt to convert the proxy back into a client end. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for PackageResolverProxy
impl Send for PackageResolverProxy
impl Sync for PackageResolverProxy
impl Unpin for PackageResolverProxy
impl !UnwindSafe for PackageResolverProxy
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