19
19
//go:generate protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative proto/helloworld.proto
20
20
//go:generate protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative proto/import.proto
21
21
//go:generate protoc --include_imports --descriptor_set_out=proto.pb --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative proto/src.proto
22
+ //go:generate protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative proto/echo.proto
22
23
23
24
// Package main implements a server for Greeter service.
24
25
package main
@@ -71,6 +72,7 @@ type server struct {
71
72
// Embed the unimplemented server
72
73
pb.UnimplementedGreeterServer
73
74
pb.UnimplementedTestImportServer
75
+ pb.UnsafeEchoServer
74
76
}
75
77
76
78
// SayHello implements helloworld.GreeterServer
@@ -189,6 +191,14 @@ func (s *server) SayHelloBidirectionalStream(stream pb.Greeter_SayHelloBidirecti
189
191
}
190
192
}
191
193
194
+ // Hi implements echo.Echo/Hi
195
+ func (s * server ) Hi (ctx context.Context , in * pb.EchoMsg ) (* pb.EchoMsg , error ) {
196
+ msg := "Hi " + in .Msg
197
+ return & pb.EchoMsg {
198
+ Msg : msg ,
199
+ }, nil
200
+ }
201
+
192
202
func (s * server ) Run (ctx context.Context , in * pb.Request ) (* pb.Response , error ) {
193
203
return & pb.Response {Body : in .User .Name + " " + in .Body }, nil
194
204
}
@@ -205,6 +215,7 @@ func main() {
205
215
reflection .Register (s )
206
216
pb .RegisterGreeterServer (s , & server {})
207
217
pb .RegisterTestImportServer (s , & server {})
218
+ pb .RegisterEchoServer (s , & server {})
208
219
if err := s .Serve (lis ); err != nil {
209
220
log .Fatalf ("failed to serve: %v" , err )
210
221
}
@@ -223,6 +234,7 @@ func main() {
223
234
s := grpc .NewServer (grpc .Creds (c ))
224
235
reflection .Register (s )
225
236
pb .RegisterGreeterServer (s , & server {})
237
+ pb .RegisterEchoServer (s , & server {})
226
238
if err := s .Serve (lis ); err != nil {
227
239
log .Fatalf ("failed to serve: %v" , err )
228
240
}
0 commit comments