template <class T>

class GetCallData

Defined at line 61 of file ../../src/virtualization/lib/guest_interaction/client/client_operation_state.h

Manages the transfer of a file from the guest VM to the Fuchsia host.

GetCallData will continually write new data from the guest into the

specified destination location. When the gRPC channel is terminated, the

termination status is queried and final status is reported through the

caller-supplied callback.

Public Members

ClientContext ctx_
unique_ptr reader_
GetResponse response_
T platform_interface_

Public Methods

void GetCallData<T> (int32_t fd, TransferCallback callback)

Defined at line 63 of file ../../src/virtualization/lib/guest_interaction/client/client_operation_state.h

void Proceed (bool ok)

Proceed is called when the completion queue signals that the most recent

Read operation has completed and there is new data that can be processed.

From the gRPC documentation for a client Read operation:

`ok` indicates whether there is a valid message that got read. If not, you

know that there are certainly no more messages that can ever be read from

this stream. For the client-side operations, this only happens because the

call is dead.

The client attempts to write incoming data into the open file until gRPC

indicates that the call is dead at which point it queries for final status

and reports the transfer status back to the caller through the callback.

Defined at line 81 of file ../../src/virtualization/lib/guest_interaction/client/client_operation_state.h