update metadata
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
		
							
								
								
									
										2
									
								
								go.mod
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								go.mod
									
									
									
									
									
								
							| @@ -5,5 +5,5 @@ go 1.13 | |||||||
| require ( | require ( | ||||||
| 	github.com/unistack-org/micro-codec-jsonrpc v0.0.0-20201102222451-ff6a69988bcd | 	github.com/unistack-org/micro-codec-jsonrpc v0.0.0-20201102222451-ff6a69988bcd | ||||||
| 	github.com/unistack-org/micro-codec-protorpc v0.0.0-20201102222610-3a343898c077 | 	github.com/unistack-org/micro-codec-protorpc v0.0.0-20201102222610-3a343898c077 | ||||||
| 	github.com/unistack-org/micro/v3 v3.0.0-gamma.0.20201104214903-1fbf8b2e209e | 	github.com/unistack-org/micro/v3 v3.0.2-0.20201117210202-01e64cb0c0f3 | ||||||
| ) | ) | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								go.sum
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								go.sum
									
									
									
									
									
								
							| @@ -307,6 +307,8 @@ github.com/unistack-org/micro/v3 v3.0.0-gamma.0.20200920135754-1cbd1d2bad83/go.m | |||||||
| github.com/unistack-org/micro/v3 v3.0.0-gamma.0.20200922103357-4c4fa00a5d94/go.mod h1:aL+8VhSXpx0SuEeXPOWUo5BgS7kyvWYobeXFay90UUM= | github.com/unistack-org/micro/v3 v3.0.0-gamma.0.20200922103357-4c4fa00a5d94/go.mod h1:aL+8VhSXpx0SuEeXPOWUo5BgS7kyvWYobeXFay90UUM= | ||||||
| github.com/unistack-org/micro/v3 v3.0.0-gamma.0.20201104214903-1fbf8b2e209e h1:v27OUgoE2UOyCe6uLksdpG6oErx62nUXWIkTPxS7yIw= | github.com/unistack-org/micro/v3 v3.0.0-gamma.0.20201104214903-1fbf8b2e209e h1:v27OUgoE2UOyCe6uLksdpG6oErx62nUXWIkTPxS7yIw= | ||||||
| github.com/unistack-org/micro/v3 v3.0.0-gamma.0.20201104214903-1fbf8b2e209e/go.mod h1:LFvCXGOgcLIj2k/8eL71TpIpcJBN2SXXAUx8U6dz9Rw= | github.com/unistack-org/micro/v3 v3.0.0-gamma.0.20201104214903-1fbf8b2e209e/go.mod h1:LFvCXGOgcLIj2k/8eL71TpIpcJBN2SXXAUx8U6dz9Rw= | ||||||
|  | github.com/unistack-org/micro/v3 v3.0.2-0.20201117210202-01e64cb0c0f3 h1:knz0mt3Ot/CIXp5dRyb5dAPYtKiWA9PDhazpXX5Iu3o= | ||||||
|  | github.com/unistack-org/micro/v3 v3.0.2-0.20201117210202-01e64cb0c0f3/go.mod h1:LYbzHigEudM10AbLZztVSX0Y4JWgj5nKIExil/99h6E= | ||||||
| github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= | github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= | ||||||
| github.com/vultr/govultr v0.1.4/go.mod h1:9H008Uxr/C4vFNGLqKx232C206GL0PBHzOP0809bGNA= | github.com/vultr/govultr v0.1.4/go.mod h1:9H008Uxr/C4vFNGLqKx232C206GL0PBHzOP0809bGNA= | ||||||
| github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= | github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= | ||||||
|   | |||||||
							
								
								
									
										8
									
								
								http.go
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								http.go
									
									
									
									
									
								
							| @@ -78,13 +78,7 @@ func (h *httpServer) Handle(handler server.Handler) error { | |||||||
| } | } | ||||||
|  |  | ||||||
| func (h *httpServer) NewHandler(handler interface{}, opts ...server.HandlerOption) server.Handler { | func (h *httpServer) NewHandler(handler interface{}, opts ...server.HandlerOption) server.Handler { | ||||||
| 	options := server.HandlerOptions{ | 	options := server.NewHandlerOptions(opts...) | ||||||
| 		Metadata: make(map[string]map[string]string), |  | ||||||
| 	} |  | ||||||
|  |  | ||||||
| 	for _, o := range opts { |  | ||||||
| 		o(&options) |  | ||||||
| 	} |  | ||||||
|  |  | ||||||
| 	var eps []*registry.Endpoint | 	var eps []*registry.Endpoint | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,12 +1,15 @@ | |||||||
| package http | package http | ||||||
|  |  | ||||||
| import "github.com/unistack-org/micro/v3/codec" | import ( | ||||||
|  | 	"github.com/unistack-org/micro/v3/codec" | ||||||
|  | 	"github.com/unistack-org/micro/v3/metadata" | ||||||
|  | ) | ||||||
|  |  | ||||||
| type httpMessage struct { | type httpMessage struct { | ||||||
| 	topic       string | 	topic       string | ||||||
| 	payload     interface{} | 	payload     interface{} | ||||||
| 	contentType string | 	contentType string | ||||||
| 	header      map[string]string | 	header      metadata.Metadata | ||||||
| 	body        []byte | 	body        []byte | ||||||
| 	codec       codec.Reader | 	codec       codec.Reader | ||||||
| } | } | ||||||
| @@ -23,7 +26,7 @@ func (r *httpMessage) ContentType() string { | |||||||
| 	return r.contentType | 	return r.contentType | ||||||
| } | } | ||||||
|  |  | ||||||
| func (r *httpMessage) Header() map[string]string { | func (r *httpMessage) Header() metadata.Metadata { | ||||||
| 	return r.header | 	return r.header | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -38,9 +38,6 @@ type httpSubscriber struct { | |||||||
|  |  | ||||||
| func newSubscriber(topic string, sub interface{}, opts ...server.SubscriberOption) server.Subscriber { | func newSubscriber(topic string, sub interface{}, opts ...server.SubscriberOption) server.Subscriber { | ||||||
| 	options := server.NewSubscriberOptions(opts...) | 	options := server.NewSubscriberOptions(opts...) | ||||||
| 	for _, o := range opts { |  | ||||||
| 		o(&options) |  | ||||||
| 	} |  | ||||||
|  |  | ||||||
| 	var endpoints []*registry.Endpoint | 	var endpoints []*registry.Endpoint | ||||||
| 	var handlers []*handler | 	var handlers []*handler | ||||||
| @@ -59,15 +56,14 @@ func newSubscriber(topic string, sub interface{}, opts ...server.SubscriberOptio | |||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		handlers = append(handlers, h) | 		handlers = append(handlers, h) | ||||||
|  | 		ep := ®istry.Endpoint{ | ||||||
| 		endpoints = append(endpoints, ®istry.Endpoint{ | 			Name:     "Func", | ||||||
| 			Name:    "Func", | 			Request:  registry.ExtractSubValue(typ), | ||||||
| 			Request: registry.ExtractSubValue(typ), | 			Metadata: metadata.New(2), | ||||||
| 			Metadata: map[string]string{ | 		} | ||||||
| 				"topic":      topic, | 		ep.Metadata.Set("topic", topic) | ||||||
| 				"subscriber": "true", | 		ep.Metadata.Set("subscriber", "true") | ||||||
| 			}, | 		endpoints = append(endpoints, ep) | ||||||
| 		}) |  | ||||||
| 	} else { | 	} else { | ||||||
| 		hdlr := reflect.ValueOf(sub) | 		hdlr := reflect.ValueOf(sub) | ||||||
| 		name := reflect.Indirect(hdlr).Type().Name() | 		name := reflect.Indirect(hdlr).Type().Name() | ||||||
| @@ -87,15 +83,14 @@ func newSubscriber(topic string, sub interface{}, opts ...server.SubscriberOptio | |||||||
| 			} | 			} | ||||||
|  |  | ||||||
| 			handlers = append(handlers, h) | 			handlers = append(handlers, h) | ||||||
|  | 			ep := ®istry.Endpoint{ | ||||||
| 			endpoints = append(endpoints, ®istry.Endpoint{ | 				Name:     name + "." + method.Name, | ||||||
| 				Name:    name + "." + method.Name, | 				Request:  registry.ExtractSubValue(method.Type), | ||||||
| 				Request: registry.ExtractSubValue(method.Type), | 				Metadata: metadata.New(2), | ||||||
| 				Metadata: map[string]string{ | 			} | ||||||
| 					"topic":      topic, | 			ep.Metadata.Set("topic", topic) | ||||||
| 					"subscriber": "true", | 			ep.Metadata.Set("subscriber", "true") | ||||||
| 				}, | 			endpoints = append(endpoints, ep) | ||||||
| 			}) |  | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| @@ -119,10 +114,7 @@ func (s *httpServer) createSubHandler(sb *httpSubscriber, opts server.Options) b | |||||||
| 			return err | 			return err | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		hdr := make(map[string]string) | 		hdr := metadata.Copy(msg.Header) | ||||||
| 		for k, v := range msg.Header { |  | ||||||
| 			hdr[k] = v |  | ||||||
| 		} |  | ||||||
| 		delete(hdr, "Content-Type") | 		delete(hdr, "Content-Type") | ||||||
| 		ctx := metadata.NewContext(context.Background(), hdr) | 		ctx := metadata.NewContext(context.Background(), hdr) | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user