blob: 1441321ce29b29f7fe555300852d036d3433ffa6 [file] [log] [blame]
// Copyright 2020 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.examples;
// [START max]
const MAX_STRING_LENGTH uint64 = 32;
// [END max]
// [START echo]
@discoverable
protocol Echo {
EchoString(struct {
value string:MAX_STRING_LENGTH;
}) -> (struct {
response string:MAX_STRING_LENGTH;
});
SendString(struct {
value string:MAX_STRING_LENGTH;
});
-> OnString(struct {
response string:MAX_STRING_LENGTH;
});
};
// [END echo]
// [START launcher]
@discoverable
protocol EchoLauncher {
GetEcho(struct {
echo_prefix string:MAX_STRING_LENGTH;
}) -> (resource struct {
response client_end:Echo;
});
GetEchoPipelined(resource struct {
echo_prefix string:MAX_STRING_LENGTH;
request server_end:Echo;
});
};
// [END launcher]
service EchoService {
regular_echo client_end:Echo;
reversed_echo client_end:Echo;
};