template <>

class WireSyncClientImpl

Defined at line 1401 of file fidling/gen/sdk/fidl/fuchsia.component/fuchsia.component/cpp/fidl/fuchsia.component/cpp/wire_messaging.h

Methods to make a sync FIDL call directly on an unowned handle or a

const reference to a |::fidl::ClientEnd

<

::fuchsia_component::Controller>|,

avoiding setting up a client.

Public Methods

::fidl::WireResult< ::fuchsia_component::Controller::Start> Start (::fuchsia_component::wire::StartChildArgs args, ::fidl::ServerEnd< ::fuchsia_component::ExecutionController> && execution_controller)

Start the component, optionally providing additional handles to be given

to the component. Returns INSTANCE_ALREADY_RUNNING if the instance is

currently running.

Allocates 32 bytes of response buffer on the stack. Request is heap-allocated.

::fidl::WireResult< ::fuchsia_component::Controller::IsStarted> IsStarted ()

Returns true if this instance is currently running.

Allocates 48 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component::Controller::OpenExposedDir> OpenExposedDir (::fidl::ServerEnd< ::fuchsia_io::Directory> && exposed_dir)

Opens the exposed directory of the controlled component, through which

capabilities the component exposed via `ComponentDecl.exposes` are

available, on success.

Binding to the exposed directory requires that the component be

resolved, but it will not be started until/unless some capability is

requested that requires it to be.

If this component is destroyed, any outstanding connections to

`exposed_dir` will be closed.

Errors:

- `INSTANCE_CANNOT_RESOLVE`: This component failed to resolve.

Allocates 56 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component::Controller::GetExposedDictionary> GetExposedDictionary ()

Returns the dictionary containing the component's exposed capabilities.

Allocates 48 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component::Controller::GetOutputDictionary> GetOutputDictionary ()

Returns a reference to the component's output dictionary, which may be

interacted with by using the fuchsia.component.runtime.Capabilities API.

Allocates 48 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_component::Controller::Destroy> Destroy ()

Destroys this component. When this method returns, the component is

either destroyed or in the case of an error no destruction happened.

Errors:

- `ACCESS_DENIED`: Destruction of this component is not allowed.

Currently, this can happen if the component is a static child of its

parent.

- `INTERNAL`: Something prevented destruction from succeeding -- component

manager's logs will contain more detail.

Allocates 48 bytes of message buffer on the stack. No heap allocation necessary.