From 2b8b2357527a64cf4b09190f085e007b833588b1 Mon Sep 17 00:00:00 2001 From: Steven Tracey Date: Fri, 15 Sep 2023 17:07:00 -0400 Subject: [PATCH] Implement IsSet method --- ini.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/ini.go b/ini.go index 85e48fd..c302ce4 100644 --- a/ini.go +++ b/ini.go @@ -197,6 +197,15 @@ func (config *Configuration) GetAsBooleans(path string) []bool { return key.Bools(",") } +func (config *Configuration) IsSet(path string) bool { + key, err := config.GetKey(path) + if err != nil { + return false + } + + return key.Value() != "" +} + func (config *Configuration) load() { if _, err := os.Stat(config.fileLocation); err != nil { file, err := os.Create(config.fileLocation) @@ -204,7 +213,7 @@ func (config *Configuration) load() { fmt.Printf("Failed to create configuration file: %v", err) os.Exit(1) } - _, err = file.WriteString("[General]\nserver = sfs.example.com\nport = 7392\nusername = user\nauth-token = token\n; http:// or https:// is necessary\n; port is optional\nhttp-server = http://sfs.example.com:80\npublic-key =\n\n[Share]\nsync-interval = 60") + _, err = file.WriteString("") if err != nil { fmt.Printf("Error creating configuration file: %v", err) os.Exit(1)