template <>
class WireServer
Defined at line 2171 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/cpp/fidl/fuchsia.io/cpp/wire_messaging.h
Pure-virtual interface to be implemented by a server.
This interface uses typed channels (i.e. |::fidl::ClientEnd
<
::fuchsia_io::Linkable>|
and |::fidl::ServerEnd
<
::fuchsia_io::Linkable>|).
Public Methods
void LinkInto (::fuchsia_io::wire::LinkableLinkIntoRequest * request, LinkIntoCompleter::Sync & completer)
Creates a link to this this object with name `dst` in the directory represented by
`dst_parent_token`.
`dst` must be a resolved object name. Including "/" in the string will return
`ZX_ERR_INVALID_ARGS`.
This method requires the maximal set of rights supported by the filesystem for this object.
For files this would typically be [`Rights.READ_BYTES`], [`Rights.WRITE_BYTES`],
[`Rights.GET_ATTRIBUTES`] and [`Rights.UPDATE_ATTRIBUTES`]. Some filesystems might also
support the [`Rights.EXECUTE`] right. Insufficient rights will result in
`ZX_ERR_ACCESS_DENIED`.
If this object has no links and is *NOT* an unnamed temporary object (objects opened with
`Flags.FLAG_CREATE_AS_UNNAMED_TEMPORARY`), it will fail with `ZX_ERR_NOT_FOUND`.
For unnamed temporary objects, use LinkInto to give it a name. Upon successful completion,
the object will be permanently linked to the filesystem. Requires that the unnamed temporary
object is linkable, if not, it will fail with `ZX_ERR_NOT_FOUND`.
This method does not have the same atomicity properties has the `Directory::Link` method,
which means that calling `Open` then `LinkInto` is not equivalent to `Directory::Link`
because `LinkInto` will not prevent the source from being renamed or unlinked.
void WireServer ()
Defined at line 2174 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/cpp/fidl/fuchsia.io/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 2175 of file fidling/gen/sdk/fidl/fuchsia.io/fuchsia.io/cpp/fidl/fuchsia.io/cpp/wire_messaging.h