class Controller
Defined at line 10184 of file fidling/gen/sdk/fidl/fuchsia.component/fuchsia.component/hlcpp/fuchsia/component/cpp/fidl.h
A protocol used to operate on a component.
One may get access to a `Controller` when creating a component with the
`Realm.CreateChild` method. You may also obtain a `Controller` for an
existing child component with the `Realm.OpenController` method.
Public Methods
void ~Controller ()
void Start (::fuchsia::component::StartChildArgs args, ::fidl::InterfaceRequest< ::fuchsia::component::ExecutionController> execution_controller, StartCallback callback)
Start the component, optionally providing additional handles to be given
to the component. Returns INSTANCE_ALREADY_RUNNING if the instance is
currently running.
void IsStarted (IsStartedCallback callback)
Returns true if this instance is currently running.
void OpenExposedDir (::fidl::InterfaceRequest< ::fuchsia::io::Directory> exposed_dir, OpenExposedDirCallback callback)
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.
void GetExposedDictionary (GetExposedDictionaryCallback callback)
Returns the dictionary containing the component's exposed capabilities.
void GetOutputDictionary (GetOutputDictionaryCallback callback)
Returns a reference to the component's output dictionary, which may be
interacted with by using the fuchsia.component.runtime.Capabilities API.
void Destroy (DestroyCallback callback)
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.
Protected Methods
void handle_unknown_method (uint64_t ordinal, bool method_has_response)
Friends
class Controller_Stub