blob: 970ef1dbb1f5dcfb87ab06d2a3a3f7485d5af0eb [file] [log] [blame]
// 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.
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;
optional uint64 receiving_socket_id = 3;
};
message ComboRequest {
repeated EchoRequest requests = 1;
};
message BytesRequest {
required bytes databytes = 1;
};
message BytesResponse {
required bytes databytes = 1;
};
message ComboResponse {
repeated EchoResponse responses = 1;
};
service EchoService {
rpc Echo(EchoRequest) returns (EchoResponse);
rpc ComboEcho(ComboRequest) returns (ComboResponse);
rpc BytesEcho1(BytesRequest) returns (BytesResponse);
rpc BytesEcho2(BytesRequest) returns (BytesResponse);
}
message HttpRequest {}
message HttpResponse {}
service DownloadService {
rpc Download(HttpRequest) returns (HttpResponse);
rpc DownloadFailed(HttpRequest) returns (HttpResponse);
}
service UploadService {
rpc Upload(HttpRequest) returns (HttpResponse);
rpc UploadFailed(HttpRequest) returns (HttpResponse);
}
service UserNamingService {
rpc ListNames(HttpRequest) returns (HttpResponse);
rpc Touch(HttpRequest) returns (HttpResponse);
};
service DiscoveryNamingService {
rpc Nodes(HttpRequest) returns (HttpResponse);
rpc Fetchs(HttpRequest) returns (HttpResponse);
rpc Register(HttpRequest) returns (HttpResponse);
rpc Renew(HttpRequest) returns (HttpResponse);
rpc Cancel(HttpRequest) returns (HttpResponse);
};
service NacosNamingService {
rpc Login(HttpRequest) returns (HttpResponse);
rpc List(HttpRequest) returns (HttpResponse);
};
service HttpService {
rpc Head(HttpRequest) returns (HttpResponse);
rpc Expect(HttpRequest) returns (HttpResponse);
}
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;
};
message RecursiveMessage {
optional RecursiveMessage child = 1;
optional string data = 2;
}