template <>

class WireServer

Defined at line 7317 of file fidling/gen/sdk/fidl/fuchsia.pkg/fuchsia.pkg/cpp/fidl/fuchsia.pkg/cpp/wire_messaging.h

Pure-virtual interface to be implemented by a server.

This interface uses typed channels (i.e. |::fidl::ClientEnd

<

::fuchsia_pkg::RepositoryManager>|

and |::fidl::ServerEnd

<

::fuchsia_pkg::RepositoryManager>|).

Public Methods

void Add (::fuchsia_pkg::wire::RepositoryManagerAddRequest * request, AddCompleter::Sync & completer)

Adds a repository. This will overwrite the repository if it already exists.

+ request `repo` a repository to add to the resolver.

* error a zx_status value indicating failure. One of the following:

* `ZX_ERR_ACCESS_DENIED` if editing repositories is permanently disabled.

* `ZX_ERR_ALREADY_EXISTS` if the repository already exists.

* `ZX_ERR_INVALID_ARGS` if the repository is malformed.

void Remove (::fuchsia_pkg::wire::RepositoryManagerRemoveRequest * request, RemoveCompleter::Sync & completer)

Removes a repository.

Removing a repository will prevent future packages from being cached from this repository,

but in-flight downloads may not be interrupted.

+ request `repo_url` the URL of the repository we want to remove.

* error a zx_status value indicating failure. One of the following:

* `ZX_ERR_ACCESS_DENIED` if editing repositories is permanently disabled or the

`repo_url` matches a static repository.

* `ZX_ERR_INVALID_ARGS` if the `repo_url` is malformed.

* `ZX_ERR_NOT_FOUND` if the repository does not exist.

void AddMirror (::fuchsia_pkg::wire::RepositoryManagerAddMirrorRequest * request, AddMirrorCompleter::Sync & completer)

Adds a mirror to a repository. This will overwrite the mirror if it already exists.

+ request `repo_url` the URL of the repository to add the mirror to.

+ request `mirror` the mirror config used to add the mirror.

* error a zx_status value indicating failure. One of the following:

* `ZX_ERR_ALREADY_EXISTS` if the mirror for this repository already exists.

* `ZX_ERR_INVALID_ARGS` if the `repo_url` or the `mirror` is malformed.

* `ZX_ERR_NOT_FOUND` if the repository does not exist.

void RemoveMirror (::fuchsia_pkg::wire::RepositoryManagerRemoveMirrorRequest * request, RemoveMirrorCompleter::Sync & completer)

Removes a mirror from a repository.

Removing a mirror will prevent future packages from being cached from that mirror, but

in-flight downloads may not be interrupted.

+ request `repo_url` the URL of the mirror's repository.

+ request `mirror_url` the URL of the mirror we want to remove.

* error a zx_status value indicating failure. One of the following:

* `ZX_ERR_INVALID_ARGS` if the `repo_url` or the `mirror_url` is malformed.

* `ZX_ERR_NOT_FOUND` if the repository or mirror does not exist.

void List (::fuchsia_pkg::wire::RepositoryManagerListRequest * request, ListCompleter::Sync & completer)

Returns an iterator over all repositories.

+ request `iterator` a request for an iterator.

void WireServer ()

Defined at line 7320 of file fidling/gen/sdk/fidl/fuchsia.pkg/fuchsia.pkg/cpp/fidl/fuchsia.pkg/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 7321 of file fidling/gen/sdk/fidl/fuchsia.pkg/fuchsia.pkg/cpp/fidl/fuchsia.pkg/cpp/wire_messaging.h