1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package util
- import (
- "net/url"
- "strconv"
- "strings"
- )
- func ParseInt(text string, defaultValue int) int {
- count, parseError := strconv.ParseInt(text, 10, 64)
- if parseError != nil {
- if len(text) > 0 {
- return 0
- }
- return defaultValue
- }
- return int(count)
- }
- func ParseUint64(text string, defaultValue uint64) uint64 {
- count, parseError := strconv.ParseUint(text, 10, 64)
- if parseError != nil {
- if len(text) > 0 {
- return 0
- }
- return defaultValue
- }
- return count
- }
- func ParseFilerUrl(entryPath string) (filerServer string, filerPort int64, path string, err error) {
- if !strings.HasPrefix(entryPath, "http://") && !strings.HasPrefix(entryPath, "https://") {
- entryPath = "http://" + entryPath
- }
- var u *url.URL
- u, err = url.Parse(entryPath)
- if err != nil {
- return
- }
- filerServer = u.Hostname()
- portString := u.Port()
- if portString != "" {
- filerPort, err = strconv.ParseInt(portString, 10, 32)
- }
- path = u.Path
- return
- }
|