blob: 89250ebd4c5fb224fc98183a1ce79f72f807abec [file] [log] [blame]
syntax = "proto3";
package org.apache.dubbo.benchmark.bean;
import public "google/protobuf/timestamp.proto";
option java_package = "org.apache.dubbo.benchmark.bean";
// PagePB是最外层的类,其中的message都变成了该类的内部类
option java_outer_classname = "PagePB";
//### 编译只会生成message,service生成需要借助grpc这样的插件
message Page {
repeated User users = 1;
int32 pageNo = 2;
int32 total = 3;
}
message User {
int64 id = 1;
string name = 2;
int32 sex = 3;
google.protobuf.Timestamp birthday = 4;
string email = 5;
string mobile = 6;
string address = 7;
string icon = 8;
repeated int32 permissions = 9;
int32 status = 10;
google.protobuf.Timestamp createTime = 11;
google.protobuf.Timestamp updateTime = 12;
}
message Request {
int64 id = 1;
int32 page = 2;
User user = 3;
string email = 4;
}
message Response {
bool state = 1;
User user = 2;
Page page = 3;
}
service UserService {
rpc existUser (Request) returns (Response);
rpc createUser (Request) returns (Response);
rpc getUser (Request) returns (Response);
rpc listUser (Request) returns (Response);
}