pub struct PackageResolverSynchronousProxy { /* private fields */ }
Implementations§
Source§impl PackageResolverSynchronousProxy
impl PackageResolverSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<PackageResolverEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<PackageResolverEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
Sourcepub fn resolve(
&self,
package_url: &str,
dir: ServerEnd<DirectoryMarker>,
___deadline: MonotonicInstant,
) -> Result<PackageResolverResolveResult, Error>
pub fn resolve( &self, package_url: &str, dir: ServerEnd<DirectoryMarker>, ___deadline: MonotonicInstant, ) -> Result<PackageResolverResolveResult, Error>
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>,
___deadline: MonotonicInstant,
) -> Result<PackageResolverResolveWithContextResult, Error>
pub fn resolve_with_context( &self, package_url: &str, context: &ResolutionContext, dir: ServerEnd<DirectoryMarker>, ___deadline: MonotonicInstant, ) -> Result<PackageResolverResolveWithContextResult, Error>
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,
___deadline: MonotonicInstant,
) -> Result<PackageResolverGetHashResult, Error>
pub fn get_hash( &self, package_url: &PackageUrl, ___deadline: MonotonicInstant, ) -> Result<PackageResolverGetHashResult, Error>
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 SynchronousProxy for PackageResolverSynchronousProxy
impl SynchronousProxy for PackageResolverSynchronousProxy
Source§type Proxy = PackageResolverProxy
type Proxy = PackageResolverProxy
The async proxy for the same protocol.
Source§type Protocol = PackageResolverMarker
type Protocol = PackageResolverMarker
The protocol which this
Proxy
controls.Source§fn from_channel(inner: Channel) -> Self
fn from_channel(inner: Channel) -> Self
Create a proxy over the given channel.
Source§fn into_channel(self) -> Channel
fn into_channel(self) -> Channel
Convert the proxy back into a channel.
Source§fn as_channel(&self) -> &Channel
fn as_channel(&self) -> &Channel
Get a reference to the proxy’s underlying channel. Read more
Auto Trait Implementations§
impl Freeze for PackageResolverSynchronousProxy
impl RefUnwindSafe for PackageResolverSynchronousProxy
impl Send for PackageResolverSynchronousProxy
impl Sync for PackageResolverSynchronousProxy
impl Unpin for PackageResolverSynchronousProxy
impl UnwindSafe for PackageResolverSynchronousProxy
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