x/metadata/metadata.go
2023-01-11 22:25:58 +08:00

34 lines
567 B
Go

package metadata
import (
"strings"
"github.com/go-gost/core/metadata"
)
type mapMetadata map[string]any
func NewMetadata(m map[string]any) metadata.Metadata {
md := make(map[string]any)
for k, v := range m {
md[strings.ToLower(k)] = v
}
return mapMetadata(md)
}
func (m mapMetadata) IsExists(key string) bool {
_, ok := m[strings.ToLower(key)]
return ok
}
func (m mapMetadata) Set(key string, value any) {
m[strings.ToLower(key)] = value
}
func (m mapMetadata) Get(key string) any {
if m != nil {
return m[strings.ToLower(key)]
}
return nil
}