metadata.go 790 B

12345678910111213141516171819202122232425262728
  1. package metadata
  2. import (
  3. "context"
  4. "go-common/library/net/metadata"
  5. )
  6. // FromContext get metadata from context.
  7. func FromContext(c context.Context) map[string]string {
  8. return map[string]string{
  9. metadata.Color: metadata.String(c, metadata.Color),
  10. metadata.Caller: metadata.String(c, metadata.Caller),
  11. metadata.Mirror: metadata.String(c, metadata.Mirror),
  12. metadata.RemoteIP: metadata.String(c, metadata.RemoteIP),
  13. }
  14. }
  15. // NewContext new metadata context.
  16. func NewContext(c context.Context, meta map[string]string) context.Context {
  17. md := metadata.MD{
  18. metadata.Color: meta[metadata.Color],
  19. metadata.Caller: meta[metadata.Caller],
  20. metadata.Mirror: meta[metadata.Mirror],
  21. metadata.RemoteIP: meta[metadata.RemoteIP],
  22. }
  23. return metadata.NewContext(c, md)
  24. }