func validatePrefix_Path_HostName()

in webhooks/appmesh/gatewayroute_validator.go [265:292]


func validatePrefix_Path_HostName(match appmesh.HTTPGatewayRouteMatch) error {
	prefix := match.Prefix
	hostname := match.Hostname
	path := match.Path

	if prefix == nil && path == nil && hostname == nil {
		return errors.New("Either prefix or path or hostname must be specified")
	}

	if prefix != nil && path != nil {
		return errors.New("Both prefix and path cannot be specified. Only 1 allowed")
	}

	// Validate path
	if path != nil {
		if err := validatePathForGatewayRoute(path); err != nil {
			return err
		}
	}

	// Validate hosntname
	if hostname != nil {
		if err := validateHostName(hostname); err != nil {
			return err
		}
	}
	return nil
}