mirror of
https://github.com/foomo/sesamy-go.git
synced 2025-10-16 12:35:43 +00:00
refactor: use message func
This commit is contained in:
parent
70b8a970c5
commit
3b8c2a55ae
@ -18,12 +18,12 @@ import (
|
|||||||
|
|
||||||
type (
|
type (
|
||||||
Subscriber struct {
|
Subscriber struct {
|
||||||
l *zap.Logger
|
l *zap.Logger
|
||||||
uuidFunc func() string
|
uuidFunc func() string
|
||||||
messages chan *message.Message
|
messages chan *message.Message
|
||||||
metadataFunc func(r *http.Request) map[string]string
|
messageFunc func(l *zap.Logger, r *http.Request, msg *message.Message) error
|
||||||
middlewares []SubscriberMiddleware
|
middlewares []SubscriberMiddleware
|
||||||
closed bool
|
closed bool
|
||||||
}
|
}
|
||||||
SubscriberOption func(*Subscriber)
|
SubscriberOption func(*Subscriber)
|
||||||
SubscriberHandler func(l *zap.Logger, r *http.Request, payload *gtag.Payload) error
|
SubscriberHandler func(l *zap.Logger, r *http.Request, payload *gtag.Payload) error
|
||||||
@ -40,9 +40,9 @@ func SubscriberWithUUIDFunc(v func() string) SubscriberOption {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func SubscriberWithMetadataFunc(v func(r *http.Request) map[string]string) SubscriberOption {
|
func SubscriberWithMessageFunc(v func(l *zap.Logger, r *http.Request, msg *message.Message) error) SubscriberOption {
|
||||||
return func(o *Subscriber) {
|
return func(o *Subscriber) {
|
||||||
o.metadataFunc = v
|
o.messageFunc = v
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -148,9 +148,9 @@ func (s *Subscriber) handle(l *zap.Logger, r *http.Request, payload *gtag.Payloa
|
|||||||
msg.Metadata.Set(name, strings.Join(headers, ","))
|
msg.Metadata.Set(name, strings.Join(headers, ","))
|
||||||
}
|
}
|
||||||
|
|
||||||
if s.metadataFunc != nil {
|
if s.messageFunc != nil {
|
||||||
for k, v := range s.metadataFunc(r) {
|
if err := s.messageFunc(l, r, msg); err != nil {
|
||||||
msg.Metadata.Set(k, v)
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -15,12 +15,12 @@ import (
|
|||||||
|
|
||||||
type (
|
type (
|
||||||
Subscriber struct {
|
Subscriber struct {
|
||||||
l *zap.Logger
|
l *zap.Logger
|
||||||
uuidFunc func() string
|
uuidFunc func() string
|
||||||
messages chan *message.Message
|
messages chan *message.Message
|
||||||
metadataFunc func(r *http.Request) map[string]string
|
messageFunc func(l *zap.Logger, r *http.Request, msg *message.Message) error
|
||||||
middlewares []SubscriberMiddleware
|
middlewares []SubscriberMiddleware
|
||||||
closed bool
|
closed bool
|
||||||
}
|
}
|
||||||
SubscriberOption func(*Subscriber)
|
SubscriberOption func(*Subscriber)
|
||||||
SubscriberHandler func(l *zap.Logger, r *http.Request, payload *mpv2.Payload[any]) error
|
SubscriberHandler func(l *zap.Logger, r *http.Request, payload *mpv2.Payload[any]) error
|
||||||
@ -37,11 +37,12 @@ func SubscriberWithUUIDFunc(v func() string) SubscriberOption {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func SubscriberWithMetadataFunc(v func(r *http.Request) map[string]string) SubscriberOption {
|
func SubscriberWithMessageFunc(v func(l *zap.Logger, r *http.Request, msg *message.Message) error) SubscriberOption {
|
||||||
return func(o *Subscriber) {
|
return func(o *Subscriber) {
|
||||||
o.metadataFunc = v
|
o.messageFunc = v
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func SubscriberWithMiddlewares(v ...SubscriberMiddleware) SubscriberOption {
|
func SubscriberWithMiddlewares(v ...SubscriberMiddleware) SubscriberOption {
|
||||||
return func(o *Subscriber) {
|
return func(o *Subscriber) {
|
||||||
o.middlewares = append(o.middlewares, v...)
|
o.middlewares = append(o.middlewares, v...)
|
||||||
@ -122,9 +123,9 @@ func (s *Subscriber) handle(l *zap.Logger, r *http.Request, payload *mpv2.Payloa
|
|||||||
msg.Metadata.Set(name, strings.Join(headers, ","))
|
msg.Metadata.Set(name, strings.Join(headers, ","))
|
||||||
}
|
}
|
||||||
|
|
||||||
if s.metadataFunc != nil {
|
if s.messageFunc != nil {
|
||||||
for k, v := range s.metadataFunc(r) {
|
if err := s.messageFunc(l, r, msg); err != nil {
|
||||||
msg.Metadata.Set(k, v)
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user