func (e *Example) Call(ctx context.Context, req *example.Request, rsp *example.Response) error { // Endpoint construction var ep endpoint.Endpoint ep = func() error { md, _ := c.GetMetadata(ctx) log.Infof("Received Example.Call request with metadata: %v", md) rsp.Msg = server.Config().Id() + ": Hello " + req.Name return nil } // Including middlewares ep = ratelimit.NewTokenBucketLimiter(testBucket)(ep) ep = circuitbreaker.Hystrix("test_command", ep, nil, 0, 50, 1000, 0, 0)(ep) // Excuting ep() return nil }
func (e *Example) Call(ctx context.Context, req *example.Request, rsp *example.Response) error { md, _ := c.GetMetadata(ctx) log.Infof("Received Example.Call request with metadata: %v", md) rsp.Msg = server.Config().Id() + ": Hello " + req.Name return nil }