You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
790 B
28 lines
790 B
package metadata |
|
|
|
import ( |
|
"context" |
|
|
|
"go-common/library/net/metadata" |
|
) |
|
|
|
// FromContext get metadata from context. |
|
func FromContext(c context.Context) map[string]string { |
|
return map[string]string{ |
|
metadata.Color: metadata.String(c, metadata.Color), |
|
metadata.Caller: metadata.String(c, metadata.Caller), |
|
metadata.Mirror: metadata.String(c, metadata.Mirror), |
|
metadata.RemoteIP: metadata.String(c, metadata.RemoteIP), |
|
} |
|
} |
|
|
|
// NewContext new metadata context. |
|
func NewContext(c context.Context, meta map[string]string) context.Context { |
|
md := metadata.MD{ |
|
metadata.Color: meta[metadata.Color], |
|
metadata.Caller: meta[metadata.Caller], |
|
metadata.Mirror: meta[metadata.Mirror], |
|
metadata.RemoteIP: meta[metadata.RemoteIP], |
|
} |
|
return metadata.NewContext(c, md) |
|
}
|
|
|