cmd/gondole-cli/utils.go
changeset 83 adc39ae774c0
parent 75 b361e3f89ea6
equal deleted inserted replaced
81:ba90955d2d56 83:adc39ae774c0
     1 package main
     1 package main
     2 
     2 
     3 import (
     3 import (
     4     "github.com/urfave/cli"
     4 	"github.com/urfave/cli"
     5     "net/url"
     5 	"net/url"
     6     "strings"
     6 	"strings"
     7 )
     7 )
     8 
     8 
     9 // ByAlphabet is for sorting
     9 // ByAlphabet is for sorting
    10 type ByAlphabet []cli.Command
    10 type ByAlphabet []cli.Command
    11 
    11 
    12 func (a ByAlphabet) Len() int           { return len(a) }
    12 func (a ByAlphabet) Len() int           { return len(a) }
    13 func (a ByAlphabet) Swap(i, j int)      { a[i], a[j] = a[j], a[i] }
    13 func (a ByAlphabet) Swap(i, j int)      { a[i], a[j] = a[j], a[i] }
    14 func (a ByAlphabet) Less(i, j int) bool { return a[i].Name < a[j].Name }
    14 func (a ByAlphabet) Less(i, j int) bool { return a[i].Name < a[j].Name }
    15 
    15 
    16 func filterURL(in string) (out string) {
    16 func filterURL(in string) (out string) {
    17     uri, err := url.Parse(in)
    17 	uri, err := url.Parse(in)
    18     if err != nil {
    18 	if err != nil {
    19         out = ""
    19 		out = ""
    20     } else {
    20 	} else {
    21         uri := url.URL{Scheme: uri.Scheme, Host: uri.Host}
    21 		uri := url.URL{Scheme: uri.Scheme, Host: uri.Host}
    22         out = uri.String()
    22 		out = uri.String()
    23     }
    23 	}
    24     return
    24 	return
    25 }
    25 }
    26 
    26 
    27 func basename(in string) (out string) {
    27 func basename(in string) (out string) {
    28     uri, err := url.Parse(in)
    28 	uri, err := url.Parse(in)
    29     if err != nil {
    29 	if err != nil {
    30         out = ""
    30 		out = ""
    31     } else {
    31 	} else {
    32         // Remove the :NN part of present
    32 		// Remove the :NN part of present
    33         out = strings.Split(uri.Host, ":")[0]
    33 		out = strings.Split(uri.Host, ":")[0]
    34     }
    34 	}
    35     return
    35 	return
    36 }
    36 }