2025-08-20 11:54:40 +01:00

83 lines
1.8 KiB
Protocol Buffer

syntax = "proto3";
service BookService {
rpc GetList (GetListRequest) returns (GetListResponse);
rpc AddBooks (AddBookRequest) returns (GeneralResponse);
rpc DeleteBooks (DeleteBookRequest) returns (GeneralResponse);
rpc UpdateBook (UpdateBookRequest) returns (GeneralResponse);
rpc Ping (Empty) returns (MessageResponse);
}
message Empty {}
message GetListRequest {
int32 pages = 1;
int32 per_page = 2;
int32 list_data_limit = 3;
}
message AddBookRequest {
repeated Book_info books = 1;
bool test_only = 2;
}
message DeleteBookRequest {
repeated int32 book_ids = 1;
int32 delete_last_count = 2;
}
message UpdateBookRequest {
Book_info book = 1;
}
message MessageResponse {
string message = 1;
}
message GeneralResponse {
MessageResponse response_data = 1;
Server_deserialize server_deserialize = 2;
double server_protocol_total_time = 3;
Server_deserialize server_serialize = 4;
}
message GetListResponse {
repeated Book_info response_data = 1;
Server_deserialize server_deserialize = 2;
double server_protocol_total_time = 3;
Server_deserialize server_serialize = 4;
}
message Server_deserialize {
double cpu = 1;
double time = 2;
}
message Book_info {
string abstract = 1;
string author = 2;
string barcode = 3;
string binding = 4;
int32 category_id = 5;
string cover_image = 6;
string description = 7;
string edition = 8;
string editor = 9;
string format = 10;
int32 id = 11;
string isbn = 12;
string keywords = 13;
string language = 14;
int32 pages = 15;
int64 publication_date = 16;
string publisher = 17;
string subject = 18;
string subtitle = 19;
string title = 20;
string translator = 21;
double weight = 22;
}