From 6e43ae7190765b1208abe20d4ad8916006dcff87 Mon Sep 17 00:00:00 2001 From: Vasiliy Tolstov Date: Mon, 12 Oct 2020 12:09:09 +0300 Subject: [PATCH] add client publish option func Signed-off-by: Vasiliy Tolstov --- client/context.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/client/context.go b/client/context.go index 4cb496f0..0a9d0e5c 100644 --- a/client/context.go +++ b/client/context.go @@ -14,3 +14,13 @@ func FromContext(ctx context.Context) (Client, bool) { func NewContext(ctx context.Context, c Client) context.Context { return context.WithValue(ctx, clientKey{}, c) } + +// SetPublishOption returns a function to setup a context with given value +func SetPublishOption(k, v interface{}) PublishOption { + return func(o *PublishOptions) { + if o.Context == nil { + o.Context = context.Background() + } + o.Context = context.WithValue(o.Context, k, v) + } +}