Clean up code for loading the config
This commit is contained in:
parent
175d7513af
commit
044cb3667c
48
main.go
48
main.go
@ -14,28 +14,9 @@ import (
|
|||||||
"github.com/russross/blackfriday"
|
"github.com/russross/blackfriday"
|
||||||
)
|
)
|
||||||
|
|
||||||
var config struct {
|
|
||||||
Port int `json:"port"`
|
|
||||||
Template string `json:"template"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
// Open config
|
if err := loadConfig(); err != nil {
|
||||||
f, err := os.Open(`config.json`)
|
log.Fatal(`Failed to load config. ` + err.Error())
|
||||||
if err != nil && !os.IsNotExist(err) {
|
|
||||||
log.Fatal(`Failed to open config. ` + err.Error())
|
|
||||||
}
|
|
||||||
|
|
||||||
// Set defaults
|
|
||||||
config.Port = 80
|
|
||||||
config.Template = `template.html`
|
|
||||||
|
|
||||||
// Parse config
|
|
||||||
if err == nil {
|
|
||||||
err = json.NewDecoder(f).Decode(&config)
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(`Could not parse config. ` + err.Error())
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := updateTemplate(); err != nil {
|
if err := updateTemplate(); err != nil {
|
||||||
@ -45,6 +26,31 @@ func main() {
|
|||||||
log.Fatal(http.ListenAndServe(":"+strconv.Itoa(config.Port), http.HandlerFunc(serveRequest)))
|
log.Fatal(http.ListenAndServe(":"+strconv.Itoa(config.Port), http.HandlerFunc(serveRequest)))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var config struct {
|
||||||
|
Port int `json:"port"`
|
||||||
|
Template string `json:"template"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func loadConfig() error {
|
||||||
|
f, err := os.Open(`config.json`)
|
||||||
|
if err != nil && !os.IsNotExist(err) {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set defaults
|
||||||
|
config.Port = 80
|
||||||
|
config.Template = `template.html`
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
err = json.NewDecoder(f).Decode(&config)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var t *template.Template
|
var t *template.Template
|
||||||
|
|
||||||
func updateTemplate() error {
|
func updateTemplate() error {
|
||||||
|
Loading…
Reference in New Issue
Block a user