template <>
class WireServer
Defined at line 7883 of file fidling/gen/sdk/fidl/fuchsia.component.runtime/fuchsia.component.runtime/cpp/fidl/fuchsia.component.runtime/cpp/wire_messaging.h
Pure-virtual interface to be implemented by a server.
This interface uses typed channels (i.e. |::fidl::ClientEnd
<
::fuchsia_component_runtime::Capabilities>|
and |::fidl::ServerEnd
<
::fuchsia_component_runtime::Capabilities>|).
Public Methods
void ConnectorCreate (::fuchsia_component_runtime::wire::CapabilitiesConnectorCreateRequest * request, ConnectorCreateCompleter::Sync & completer)
Creates a reference to a new connector capability. When the connector is
opened, the channel given to the open call will be sent over
`receiver_client_end`.
Make sure this method returns before passing the handle's peer to other
methods in this API. The creation may not be complete before then.
void DirConnectorCreate (::fuchsia_component_runtime::wire::CapabilitiesDirConnectorCreateRequest * request, DirConnectorCreateCompleter::Sync & completer)
Creates a reference to a new directory connector capability. When the
directory connector is opened, the channel given to the open call will
be sent over `receiver_client_end`.
Make sure this method returns before passing the handle's peer to other
methods in this API. The creation may not be complete before then.
void DictionaryCreate (::fuchsia_component_runtime::wire::CapabilitiesDictionaryCreateRequest * request, DictionaryCreateCompleter::Sync & completer)
Creates a reference to a new dictionary capability.
Make sure this method returns before passing the handle's peer to other
methods in this API. The creation may not be complete before then.
void DataCreate (::fuchsia_component_runtime::wire::CapabilitiesDataCreateRequest * request, DataCreateCompleter::Sync & completer)
Creates a reference to a new data capability with the given value.
Make sure this method returns before passing the handle's peer to other
methods in this API. The creation may not be complete before then.
void ConnectorRouterCreate (::fuchsia_component_runtime::wire::CapabilitiesConnectorRouterCreateRequest * request, ConnectorRouterCreateCompleter::Sync & completer)
Creates a reference to a new router capability that will return a
connector capability when used.
Make sure this method returns before passing the handle's peer to other
methods in this API. The creation may not be complete before then.
void DirConnectorRouterCreate (::fuchsia_component_runtime::wire::CapabilitiesDirConnectorRouterCreateRequest * request, DirConnectorRouterCreateCompleter::Sync & completer)
Creates a reference to a new router capability that will return a
directory connector capability when used.
Make sure this method returns before passing the handle's peer to other
methods in this API. The creation may not be complete before then.
void DictionaryRouterCreate (::fuchsia_component_runtime::wire::CapabilitiesDictionaryRouterCreateRequest * request, DictionaryRouterCreateCompleter::Sync & completer)
Creates a reference to a new router capability that will return a
dictionary capability when used.
Make sure this method returns before passing the handle's peer to other
methods in this API. The creation may not be complete before then.
void DataRouterCreate (::fuchsia_component_runtime::wire::CapabilitiesDataRouterCreateRequest * request, DataRouterCreateCompleter::Sync & completer)
Creates a reference to a new router capability that will return a data
value when used.
Make sure this method returns before passing the handle's peer to other
methods in this API. The creation may not be complete before then.
void InstanceTokenCreate (::fuchsia_component_runtime::wire::CapabilitiesInstanceTokenCreateRequest * request, InstanceTokenCreateCompleter::Sync & completer)
Creates a new instance token, which is an opaque identifier associated
with a specific component. This instance token will be associated with
the component this connection is opened from.
Make sure this method returns before passing the handle's peer to other
methods in this API. The creation may not be complete before then.
void ConnectorOpen (::fuchsia_component_runtime::wire::CapabilitiesConnectorOpenRequest * request, ConnectorOpenCompleter::Sync & completer)
Uses the provided `connector` to open a new connection by delivering
this channel to whoever created the connector.
If there is an error, it will be reported as a zx.Status epitaph on
`channel`.
If the `connector` event pair handle is not correlated with a handle
given to `ConnectorCreate`, this connection will be closed.
void DirConnectorOpen (::fuchsia_component_runtime::wire::CapabilitiesDirConnectorOpenRequest * request, DirConnectorOpenCompleter::Sync & completer)
Uses the provided `dir_connector` to open a new directory connection by
delivering this channel to whoever created the directory connector.
If there is an error, it will be reported as a zx.Status epitaph on
`channel`.
If the `dir_connector` event pair handle is not correlated with a handle
given to `DirConnectorCreate`, this connection will be closed.
`dir_connector` and `channel` are both required. `flags` and `path`
may be omitted.
void DictionaryInsert (::fuchsia_component_runtime::wire::CapabilitiesDictionaryInsertRequest * request, DictionaryInsertCompleter::Sync & completer)
Inserts a new `capability` into this `Dictionary` under the name `key`.
Overwrites any existing entry.
void DictionaryGet (::fuchsia_component_runtime::wire::CapabilitiesDictionaryGetRequest * request, DictionaryGetCompleter::Sync & completer)
Creates a new reference to the `capability` named `key` in this
dictionary, if that capability exists. That capability will remain in
the dictionary. To take a capability out of the dictionary, use
`DictionaryRemove`.
If `key` does not exist, `value` will not reference any capability and
the `NO_SUCH_CAPABILITY` error value will be returned.
Make sure this method returns before passing the handle's peer to other
methods in this API. The creation may not be complete before then.
void DictionaryRemove (::fuchsia_component_runtime::wire::CapabilitiesDictionaryRemoveRequest * request, DictionaryRemoveCompleter::Sync & completer)
Removes the `capability` named `key` from this dictionary and returns a
reference to it, if that capability exists.
`dictionary` and `key` are required. `capability` is optional, and when
set will become associated with the capability that was removed from the
dictionary.
If `key` does not exist, `value` will not reference any capability and
the `NO_SUCH_CAPABILITY` error value will be returned.
Make sure this method returns before passing the peer of `capability` to
other methods in this API. The creation may not be complete before then.
void DictionaryIterateKeys (::fuchsia_component_runtime::wire::CapabilitiesDictionaryIterateKeysRequest * request, DictionaryIterateKeysCompleter::Sync & completer)
Opens an iterator which can be used to iterate over the keys of this
dictionary.
void DataGet (::fuchsia_component_runtime::wire::CapabilitiesDataGetRequest * request, DataGetCompleter::Sync & completer)
Returns the `Data` value that was provided to the `DataCreate` call used
with `data_handle`.
void ConnectorRouterRoute (::fuchsia_component_runtime::wire::CapabilitiesConnectorRouterRouteRequest * request, ConnectorRouterRouteCompleter::Sync & completer)
Attempts to produce a `Connector` capability from this
`ConnectorRouter`.
`request` contains context for this route, and `instance_token`
references the component that the routing operation is being performed
for.
This will return:
- `SUCCESS` if `connector` has been associated with a connector.
- `UNAVAILABLE` if the capability is unavailable, in which case
`connector` will be closed.
- An error, if the operation failed.
void DirConnectorRouterRoute (::fuchsia_component_runtime::wire::CapabilitiesDirConnectorRouterRouteRequest * request, DirConnectorRouterRouteCompleter::Sync & completer)
Attempts to produce a `DirConnector` capability from this
`DirConnectorRouter`.
`request` contains context for this route, and `instance_token`
references the component that the routing operation is being performed
for.
This will return:
- `SUCCESS` if `dir_connector` has been associated with a connector.
- `UNAVAILABLE` if the capability is unavailable, in which case
`dir_connector` will be closed.
- An error, if the operation failed.
void DictionaryRouterRoute (::fuchsia_component_runtime::wire::CapabilitiesDictionaryRouterRouteRequest * request, DictionaryRouterRouteCompleter::Sync & completer)
Attempts to produce a `Dictionary` capability from this
`DictionaryRouter`.
`request` contains context for this route, and `instance_token`
references the component that the routing operation is being performed
for.
This will return:
- `SUCCESS` if `dictionary` has been associated with a connector.
- `UNAVAILABLE` if the capability is unavailable, in which case
`dictionary` will be closed.
- An error, if the operation failed.
void DataRouterRoute (::fuchsia_component_runtime::wire::CapabilitiesDataRouterRouteRequest * request, DataRouterRouteCompleter::Sync & completer)
Attempts to produce a `Data` capability from this `DataRouter`.
`request` contains context for this route, and `instance_token`
references the component that the routing operation is being performed
for.
This will return:
- `SUCCESS` if `data` has been associated with a connector.
- `UNAVAILABLE` if the capability is unavailable, in which case `data`
will be closed.
- An error, if the operation failed.
void CapabilityAssociateHandle (::fuchsia_component_runtime::wire::CapabilitiesCapabilityAssociateHandleRequest * request, CapabilityAssociateHandleCompleter::Sync & completer)
Associates `other_handle` with the same capability referenced by
`capability_handle`.
Typically if one already has `capability_handle` the handle can be
duplicated to make a new handle that references the same object, but
this doesn't work when someone else has provided a handle that should be
associated with an existing object.
void WireServer ()
Defined at line 7886 of file fidling/gen/sdk/fidl/fuchsia.component.runtime/fuchsia.component.runtime/cpp/fidl/fuchsia.component.runtime/cpp/wire_messaging.h
Handler bind_handler (async_dispatcher_t * dispatcher)
|bind_handler| returns a handler that binds incoming connections to this
server implementation.
The returned handler borrows the server instance.
The server must outlive the provided |dispatcher|. Only after
the dispatcher is shutdown will it be safe to destroy the servers.
The server should not be moved.
void ~WireServer ()
Defined at line 7887 of file fidling/gen/sdk/fidl/fuchsia.component.runtime/fuchsia.component.runtime/cpp/fidl/fuchsia.component.runtime/cpp/wire_messaging.h