Async python client
This commit is contained in:
@ -31,21 +31,12 @@ type currentTimeResponse struct {
|
||||
formatted_time string
|
||||
}
|
||||
|
||||
func GetCurrentTime(timezone string) currentTimeResponse {
|
||||
conn, err := grpc.Dial(
|
||||
fmt.Sprintf("%s:%d", SERVE_CURRENTTIME_HOST, SERVE_CURRENTTIME_PORT),
|
||||
grpc.WithTransportCredentials(insecure.NewCredentials()),
|
||||
)
|
||||
if err != nil {
|
||||
log.Fatalf("did not connect: %v", err)
|
||||
}
|
||||
defer conn.Close()
|
||||
c := pb_get_currenttime.NewServeCurrentTimeServiceClient(conn)
|
||||
var serveCurrentTimeServiceClient pb_get_currenttime.ServeCurrentTimeServiceClient
|
||||
|
||||
// Contact the server and print out its response.
|
||||
func GetCurrentTime(timezone string) currentTimeResponse {
|
||||
ctx, cancel := context.WithTimeout(context.Background(), time.Second)
|
||||
defer cancel()
|
||||
r, err := c.GetCurrentTime(
|
||||
r, err := serveCurrentTimeServiceClient.GetCurrentTime(
|
||||
ctx,
|
||||
&pb_get_currenttime.GetCurrentTimeRequest{Timezone: timezone},
|
||||
)
|
||||
@ -53,14 +44,13 @@ func GetCurrentTime(timezone string) currentTimeResponse {
|
||||
log.Fatalf("could not greet: %v", err)
|
||||
}
|
||||
|
||||
result := currentTimeResponse{
|
||||
return currentTimeResponse{
|
||||
hours: r.Hours,
|
||||
minutes: r.Minutes,
|
||||
seconds: r.Seconds,
|
||||
milliseconds: r.Milliseconds,
|
||||
formatted_time: r.FormattedTime,
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
func (s *grpc_server) GetHours(
|
||||
@ -105,9 +95,23 @@ func serve() {
|
||||
log.Fatalf("failed to listen: %v", err)
|
||||
}
|
||||
|
||||
// create ServeSegments server
|
||||
server := grpc.NewServer()
|
||||
pb_serve_segments.RegisterServeSegmentsServer(server, &grpc_server{})
|
||||
log.Printf("server listening at %v", lis.Addr())
|
||||
|
||||
// create connection to ServeCurrentTime server
|
||||
getCurrentTimeConn, err := grpc.Dial(
|
||||
fmt.Sprintf("%s:%d", SERVE_CURRENTTIME_HOST, SERVE_CURRENTTIME_PORT),
|
||||
grpc.WithTransportCredentials(insecure.NewCredentials()),
|
||||
)
|
||||
if err != nil {
|
||||
log.Fatalf("did not connect: %v", err)
|
||||
}
|
||||
defer getCurrentTimeConn.Close()
|
||||
// create client
|
||||
serveCurrentTimeServiceClient = pb_get_currenttime.NewServeCurrentTimeServiceClient(getCurrentTimeConn)
|
||||
|
||||
if err := server.Serve(lis); err != nil {
|
||||
log.Fatalf("failed to serve: %v", err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user