blob: d383bbc3e3a41730b9263c7303ec13107c386099 [file] [log] [blame]
// Copyright 2019 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.developer.bridge;
using fuchsia.developer.remotecontrol as rc;
using fuchsia.device;
enum DaemonError {
TARGET_CACHE_ERROR = 1;
TARGET_STATE_ERROR = 2;
RCS_CONNECTION_ERROR = 3;
};
[Discoverable]
protocol Daemon {
/// Returns the input.
EchoString(string:256 value) -> (string:256 response);
/// Lists targets by nodename.
/// TODO(fxb/52798): Use an iterator instead of a limited vector.
ListTargets(string:fuchsia.device.DEVICE_NAME_MAX value) -> (vector<Target>:512 response);
/// Make the daemon exit.
Quit() -> (bool success);
/// Gets a remote control proxy for the given target.
/// The target param expects an exact match with a target's
/// nodename.
GetRemoteControl(
string:fuchsia.device.DEVICE_NAME_MAX target,
request<rc.RemoteControl> remote) -> () error DaemonError;
};