syntax = "proto3";

package NProtocol;

service TServer {
  rpc Sum (stream TSumRequest) returns (TSumResponse) {}
}

service TServerWithStreaming {
  rpc Sum (stream TSumRequest) returns (stream TSumResponse) {}
}

service TConcatenator {
  rpc Concat (stream TConcatRequest) returns (stream TConcatResponse) {}
}

service TErrorServer {
  rpc Error(TSumRequest) returns (TSumResponse) {}
}

message TSumRequest {
  int64 A = 1;
  int64 B = 2;
}

message TSumResponse {
  int64 Sum = 1;
}

message TConcatRequest {
  string A = 1;
  string B = 2;
}

message TConcatResponse {
  string Sum = 1;
}
