Files
pmomusic/upnp/devices/services/statevariables/utils_uri.go

26 lines
452 B
Go
Raw Normal View History

2025-07-13 07:02:26 +02:00
package statevariables
2025-07-12 16:19:20 +02:00
import (
"fmt"
"net/url"
)
// toURI converts a value to *url.URL if possible.
func toURI(v interface{}) (*url.URL, error) {
switch val := v.(type) {
case *url.URL:
// Already a URL
return val, nil
case string:
u, err := url.Parse(val)
if err != nil {
return nil, fmt.Errorf("invalid URI string %q: %v", val, err)
}
return u, nil
default:
return nil, fmt.Errorf("cannot convert type %T to URI", v)
}
}