etcd/store/keywords.go
2013-07-31 14:55:03 -07:00

35 lines
597 B
Go

package store
import (
"path"
"strings"
)
// keywords for internal useage
// Key for string keyword; Value for only checking prefix
var keywords = map[string]bool{
"/acoounts": true,
"/ephemeralNodes": true,
"/machines": true,
}
// CheckKeyword will check if the key contains the keyword.
// For now, we only check for prefix.
func CheckKeyword(key string) bool {
key = path.Clean("/" + key)
// find the second "/"
i := strings.Index(key[1:], "/")
var prefix string
if i == -1 {
prefix = key
} else {
prefix = key[:i+1]
}
_, ok := keywords[prefix]
return ok
}