diff --git a/server/context.go b/server/context.go index 7bd9287f..2ab80425 100644 --- a/server/context.go +++ b/server/context.go @@ -42,3 +42,13 @@ func SetSubscriberOption(k, v interface{}) SubscriberOption { o.Context = context.WithValue(o.Context, k, v) } } + +// SetHandlerOption returns a function to setup a context with given value +func SetHandlerOption(k, v interface{}) HandlerOption { + return func(o *HandlerOptions) { + if o.Context == nil { + o.Context = context.Background() + } + o.Context = context.WithValue(o.Context, k, v) + } +} diff --git a/server/options.go b/server/options.go index 73a2ff4b..cf269772 100644 --- a/server/options.go +++ b/server/options.go @@ -322,7 +322,7 @@ type HandlerOption func(*HandlerOptions) type HandlerOptions struct { // Context holds external options Context context.Context - // Metadata for hondler + // Metadata for handler Metadata map[string]metadata.Metadata }