Simplify config loading wrt API URL

This commit is contained in:
Marcin Kulik
2015-03-05 16:30:55 +01:00
parent 2578e5b5ed
commit d095e808b0
3 changed files with 13 additions and 18 deletions

12
main.go
View File

@@ -77,16 +77,6 @@ func uintArg(args map[string]interface{}, name string) uint {
return 0
}
func firstNonBlank(candidates ...string) string {
for _, candidate := range candidates {
if candidate != "" {
return candidate
}
}
return ""
}
func formatVersion() string {
var commitInfo string
@@ -114,7 +104,7 @@ func main() {
switch cmdName(args) {
case "rec":
command := firstNonBlank(stringArg(args, "--command"), cfg.Record.Command, os.Getenv("SHELL"), "/bin/sh")
command := util.FirstNonBlank(stringArg(args, "--command"), cfg.Record.Command, os.Getenv("SHELL"), "/bin/sh")
title := stringArg(args, "--title")
assumeYes := boolArg(args, "--yes")
maxWait := uintArg(args, "--max-wait")

View File

@@ -38,13 +38,7 @@ func LoadConfig() (*Config, error) {
return nil, err
}
if cfg.API.URL == "" {
cfg.API.URL = DefaultAPIURL
}
if envAPIURL := os.Getenv("ASCIINEMA_API_URL"); envAPIURL != "" {
cfg.API.URL = envAPIURL
}
cfg.API.URL = FirstNonBlank(os.Getenv("ASCIINEMA_API_URL"), cfg.API.URL, DefaultAPIURL)
return cfg, nil
}

11
util/nonblank.go Normal file
View File

@@ -0,0 +1,11 @@
package util
func FirstNonBlank(candidates ...string) string {
for _, candidate := range candidates {
if candidate != "" {
return candidate
}
}
return ""
}