echo.proto 2.57 KB
Newer Older
zhujiashun's avatar
zhujiashun committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements.  See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership.  The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License.  You may obtain a copy of the License at
//
//   http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied.  See the License for the
// specific language governing permissions and limitations
// under the License.

gejun's avatar
gejun committed
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
syntax="proto2";
import "idl_options.proto";
option (idl_support) = true;
option cc_generic_services = true;
package test;

message EchoRequest {
    required string message = 1;
    optional int32 code = 2;
    optional bool close_fd = 3;
    optional int32 sleep_us = 4;
    optional int32 server_fail = 5;
};

message EchoResponse {
    required string message = 1;
    repeated int32 code_list = 2;
35
    optional uint64 receiving_socket_id = 3;
gejun's avatar
gejun committed
36 37 38 39 40 41
};

message ComboRequest {
    repeated EchoRequest requests = 1;
};

gejun's avatar
gejun committed
42 43 44 45 46 47 48 49
message BytesRequest {
    required bytes databytes = 1;
};

message BytesResponse {
    required bytes databytes = 1;
};

gejun's avatar
gejun committed
50 51 52 53 54 55 56
message ComboResponse {
    repeated EchoResponse responses = 1;
};

service EchoService {
    rpc Echo(EchoRequest) returns (EchoResponse);
    rpc ComboEcho(ComboRequest) returns (ComboResponse);
gejun's avatar
gejun committed
57 58
    rpc BytesEcho1(BytesRequest) returns (BytesResponse);
    rpc BytesEcho2(BytesRequest) returns (BytesResponse);
gejun's avatar
gejun committed
59 60 61 62 63 64 65 66 67 68 69 70 71 72
}

message HttpRequest {}
message HttpResponse {}
service DownloadService {
    rpc Download(HttpRequest) returns (HttpResponse);
    rpc DownloadFailed(HttpRequest) returns (HttpResponse);
}

service UserNamingService {
    rpc ListNames(HttpRequest) returns (HttpResponse);
    rpc Touch(HttpRequest) returns (HttpResponse);
};

zhujiashun's avatar
zhujiashun committed
73 74 75
service DiscoveryNamingService {
    rpc Nodes(HttpRequest) returns (HttpResponse);
    rpc Fetchs(HttpRequest) returns (HttpResponse);
zhujiashun's avatar
zhujiashun committed
76 77 78
    rpc Register(HttpRequest) returns (HttpResponse);
    rpc Renew(HttpRequest) returns (HttpResponse);
    rpc Cancel(HttpRequest) returns (HttpResponse);
zhujiashun's avatar
zhujiashun committed
79 80
};

gejun's avatar
gejun committed
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
enum State0 {
    STATE0_NUM_0 = 0;
    STATE0_NUM_1 = 1;
    STATE0_NUM_2 = 2;
};

enum State1 {
    STATE1_NUM_0 = 0;
    STATE1_NUM_1 = 1;
};

message Message1 {
    required State0 stat = 1;
};
message Message2 {
    required State1 stat = 1;
};