template <>

class WireWeakAsyncClientImpl

Defined at line 9014 of file fidling/gen/sdk/fidl/fuchsia.pkg/fuchsia.pkg/cpp/fidl/fuchsia.pkg/cpp/wire_messaging.h

Public Methods

::fidl::internal::WireThenable< ::fuchsia_pkg::NeededBlobs::OpenMetaBlob> OpenMetaBlob ()

Opens the package's metadata blob for writing. `GetMissingBlobs()`

should not be called until writing the meta blob or this request

responds with `false`.

If the package was already cached, server will close the channel with a

`ZX_OK` epitaph.

- response `writer` is used to write the blob. If `writer` is absent,

the blob is already cached and so does not need to be written.

* error an OpenBlobError indicating failure. Clients may retry this

request, though the server end may abort this cache operation on

errors it considers to be fatal.

Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.

::fidl::internal::WireThenable< ::fuchsia_pkg::NeededBlobs::OpenBlob> OpenBlob (const ::fuchsia_pkg::wire::BlobId & blob_id, bool allow_existing)

Opens a blob for writing.

+ request `blob_id` the blob id describing this blob.

+ request `allow_existing` whether to open the blob even if it is already present.

- response `writer` is used to write the blob. If `writer` is absent,

the blob is already cached and so does not need to be written.

* error an OpenBlobError indicating failure. Clients may retry this

request, though the server end may abort this cache operation on

errors it considers to be fatal.

Allocates 56 bytes of request buffer on the stack. The callback is stored on the heap.

::fidl::internal::WireThenable< ::fuchsia_pkg::NeededBlobs::BlobWritten> BlobWritten (const ::fuchsia_pkg::wire::BlobId & blob_id)

Indicates that a blob opened by `Open[Meta]Blob` has been successfully

written.

A client should call this once the blob has been fully written using

the `writer` returned by `Open[Meta]Blob`.

+ request `blob_id` the blob id describing this blob.

* error a BlobWrittenError indicating failure. Clients may retry the

`Open[Meta]Blob` request that prompted this call, though the server

end may abort this cache operation on errors it considers to be fatal.

Allocates 48 bytes of request buffer on the stack. The callback is stored on the heap.

::fidl::internal::WireThenable< ::fuchsia_pkg::NeededBlobs::Abort> Abort ()

Aborts this caching operation for the package.

Any open blobs and any missing blobs iterator will be closed. Any `dir`

provided to the associated [`PackageCache.Get`] request will also be

closed. Once this request is acknowledged, this channel will be closed.

Note, dropping this NeededBlobs channel without writing all needed blobs

will also abort the package cache operation. However, this API provides

the ability to wait for the operation to be torn down.

Allocates 16 bytes of request buffer on the stack. The callback is stored on the heap.