|
|
|
@ -51,7 +51,7 @@ namespace { |
|
|
|
|
|
|
|
|
|
void PrintProtoRpcDeclarationAsPragma(Printer *printer, |
|
|
|
|
const MethodDescriptor *method, |
|
|
|
|
map<::grpc::string, ::grpc::string> vars) { |
|
|
|
|
map< ::grpc::string, ::grpc::string> vars) { |
|
|
|
|
vars["client_stream"] = method->client_streaming() ? "stream " : ""; |
|
|
|
|
vars["server_stream"] = method->server_streaming() ? "stream " : ""; |
|
|
|
|
|
|
|
|
@ -61,7 +61,7 @@ void PrintProtoRpcDeclarationAsPragma(Printer *printer, |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void PrintMethodSignature(Printer *printer, const MethodDescriptor *method, |
|
|
|
|
const map<::grpc::string, ::grpc::string> &vars) { |
|
|
|
|
const map< ::grpc::string, ::grpc::string> &vars) { |
|
|
|
|
// TODO(jcanizales): Print method comments.
|
|
|
|
|
|
|
|
|
|
printer->Print(vars, "- ($return_type$)$method_name$With"); |
|
|
|
@ -84,7 +84,7 @@ void PrintMethodSignature(Printer *printer, const MethodDescriptor *method, |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void PrintSimpleSignature(Printer *printer, const MethodDescriptor *method, |
|
|
|
|
map<::grpc::string, ::grpc::string> vars) { |
|
|
|
|
map< ::grpc::string, ::grpc::string> vars) { |
|
|
|
|
vars["method_name"] = |
|
|
|
|
grpc_generator::LowercaseFirstLetter(vars["method_name"]); |
|
|
|
|
vars["return_type"] = "void"; |
|
|
|
@ -92,14 +92,14 @@ void PrintSimpleSignature(Printer *printer, const MethodDescriptor *method, |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void PrintAdvancedSignature(Printer *printer, const MethodDescriptor *method, |
|
|
|
|
map<::grpc::string, ::grpc::string> vars) { |
|
|
|
|
map< ::grpc::string, ::grpc::string> vars) { |
|
|
|
|
vars["method_name"] = "RPCTo" + vars["method_name"]; |
|
|
|
|
vars["return_type"] = "ProtoRPC *"; |
|
|
|
|
PrintMethodSignature(printer, method, vars); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
inline map<::grpc::string, ::grpc::string> GetMethodVars(const MethodDescriptor *method) { |
|
|
|
|
map<::grpc::string, ::grpc::string> res; |
|
|
|
|
inline map< ::grpc::string, ::grpc::string> GetMethodVars(const MethodDescriptor *method) { |
|
|
|
|
map< ::grpc::string, ::grpc::string> res; |
|
|
|
|
res["method_name"] = method->name(); |
|
|
|
|
res["request_type"] = method->input_type()->name(); |
|
|
|
|
res["response_type"] = method->output_type()->name(); |
|
|
|
@ -109,7 +109,7 @@ inline map<::grpc::string, ::grpc::string> GetMethodVars(const MethodDescriptor |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void PrintMethodDeclarations(Printer *printer, const MethodDescriptor *method) { |
|
|
|
|
map<::grpc::string, ::grpc::string> vars = GetMethodVars(method); |
|
|
|
|
map< ::grpc::string, ::grpc::string> vars = GetMethodVars(method); |
|
|
|
|
|
|
|
|
|
PrintProtoRpcDeclarationAsPragma(printer, method, vars); |
|
|
|
|
|
|
|
|
@ -120,7 +120,7 @@ void PrintMethodDeclarations(Printer *printer, const MethodDescriptor *method) { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void PrintSimpleImplementation(Printer *printer, const MethodDescriptor *method, |
|
|
|
|
map<::grpc::string, ::grpc::string> vars) { |
|
|
|
|
map< ::grpc::string, ::grpc::string> vars) { |
|
|
|
|
printer->Print("{\n"); |
|
|
|
|
printer->Print(vars, " [[self RPCTo$method_name$With"); |
|
|
|
|
if (method->client_streaming()) { |
|
|
|
@ -138,7 +138,7 @@ void PrintSimpleImplementation(Printer *printer, const MethodDescriptor *method, |
|
|
|
|
|
|
|
|
|
void PrintAdvancedImplementation(Printer *printer, |
|
|
|
|
const MethodDescriptor *method, |
|
|
|
|
map<::grpc::string, ::grpc::string> vars) { |
|
|
|
|
map< ::grpc::string, ::grpc::string> vars) { |
|
|
|
|
printer->Print("{\n"); |
|
|
|
|
printer->Print(vars, " return [self RPCToMethod:@\"$method_name$\"\n"); |
|
|
|
|
|
|
|
|
@ -163,7 +163,7 @@ void PrintAdvancedImplementation(Printer *printer, |
|
|
|
|
|
|
|
|
|
void PrintMethodImplementations(Printer *printer, |
|
|
|
|
const MethodDescriptor *method) { |
|
|
|
|
map<::grpc::string, ::grpc::string> vars = GetMethodVars(method); |
|
|
|
|
map< ::grpc::string, ::grpc::string> vars = GetMethodVars(method); |
|
|
|
|
|
|
|
|
|
PrintProtoRpcDeclarationAsPragma(printer, method, vars); |
|
|
|
|
|
|
|
|
@ -185,7 +185,7 @@ void PrintMethodImplementations(Printer *printer, |
|
|
|
|
grpc::protobuf::io::StringOutputStream output_stream(&output); |
|
|
|
|
Printer printer(&output_stream, '$'); |
|
|
|
|
|
|
|
|
|
map<::grpc::string, ::grpc::string> vars = {{"service_class", ServiceClassName(service)}}; |
|
|
|
|
map< ::grpc::string, ::grpc::string> vars = {{"service_class", ServiceClassName(service)}}; |
|
|
|
|
|
|
|
|
|
printer.Print(vars, "@protocol $service_class$ <NSObject>\n\n"); |
|
|
|
|
|
|
|
|
@ -215,7 +215,7 @@ void PrintMethodImplementations(Printer *printer, |
|
|
|
|
grpc::protobuf::io::StringOutputStream output_stream(&output); |
|
|
|
|
Printer printer(&output_stream, '$'); |
|
|
|
|
|
|
|
|
|
map<::grpc::string,::grpc::string> vars = {{"service_name", service->name()}, |
|
|
|
|
map< ::grpc::string,::grpc::string> vars = {{"service_name", service->name()}, |
|
|
|
|
{"service_class", ServiceClassName(service)}, |
|
|
|
|
{"package", service->file()->package()}}; |
|
|
|
|
|
|
|
|
|