1// Copyright 2017 The gRPC Authors
2// All rights reserved.
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8//     http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15// An integration test service that covers all the method signature permutations
16// of unary/streaming requests/responses.
17
18syntax = "proto3";
19
20package grpc.testing;
21
22option java_package = "io.grpc.testing.protobuf";
23option java_outer_classname = "SimpleServiceProto";
24option java_multiple_files = true;
25
26// A simple service for test.
27service SimpleService {
28  // Simple unary RPC.
29  rpc UnaryRpc (SimpleRequest) returns (SimpleResponse) {}
30
31  // Simple client-to-server streaming RPC.
32  rpc ClientStreamingRpc (stream SimpleRequest) returns (SimpleResponse) {}
33
34  // Simple server-to-client streaming RPC.
35  rpc ServerStreamingRpc (SimpleRequest) returns (stream SimpleResponse) {}
36
37  // Simple bidirectional streaming RPC.
38  rpc BidiStreamingRpc (stream SimpleRequest) returns (stream SimpleResponse) {}
39}
40
41// A simple request message type for test.
42message SimpleRequest {
43  // An optional string message for test.
44  string requestMessage = 1;
45}
46
47// A simple response message type for test.
48message SimpleResponse {
49  // An optional string message for test.
50  string responseMessage = 1;
51}
52