1 Star 0 Fork 0

h79/goutils

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
kv.go 751 Bytes
一键复制 编辑 原始数据 按行查看 历史
huqiuyun 提交于 2022-08-25 15:10 . 服务发现大调整
package service
import "strings"
// Key
/** 一个KEY 值是由路径+服务名称组合 */
type Key struct {
Path string
Service string
}
func (k Key) ToKey() string {
if len(k.Service) > 0 {
return k.Path + "/" + k.Service
}
return k.Path
}
func (k Key) ToMap() map[string]interface{} {
//{"type": "service", "service":""}
//{"type": "keyprefix", "prefix": k.ToKey()}
return map[string]interface{}{"type": "key", "key": k.ToKey()}
}
func NewKey(key string) Key {
index := strings.LastIndexByte(key, '/')
if index == -1 {
return Key{Service: key}
}
return Key{key[0:index], key[index+1:]}
}
type Data struct {
Key
Value string //json format
}
type Config interface {
Set(data Data) error
Get(key Key) ([]*Data, error)
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/h79/goutils.git
git@gitee.com:h79/goutils.git
h79
goutils
goutils
v1.20.29

搜索帮助

A270a887 8829481 3d7a4017 8829481