package godog import ( "fmt" "log" ) var resourcesHandler = map[string]ResourceHandler{} func RegisterResourceHandler(resourceName string, handler ResourceHandler) { if _, ok := resourcesHandler[resourceName]; ok { log.Fatalf("Can't add an already existing handler for resource %s", resourceName) return } resourcesHandler[resourceName] = handler } func GetResourceHandler(resourceName string) ResourceHandler { if val, ok := resourcesHandler[resourceName]; ok { return val } panic(fmt.Sprintf("no handler found for resource type %s", resourceName)) }