1package protocol 2 3import ( 4 "regexp" 5) 6 7var validTopicChannelNameRegex = regexp.MustCompile(`^[\.a-zA-Z0-9_-]+(#ephemeral)?$`) 8 9// IsValidTopicName checks a topic name for correctness 10func IsValidTopicName(name string) bool { 11 return isValidName(name) 12} 13 14// IsValidChannelName checks a channel name for correctness 15func IsValidChannelName(name string) bool { 16 return isValidName(name) 17} 18 19func isValidName(name string) bool { 20 if len(name) > 64 || len(name) < 1 { 21 return false 22 } 23 return validTopicChannelNameRegex.MatchString(name) 24} 25