aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShulhan <ms@kilabit.info>2023-05-15 23:36:58 +0700
committerShulhan <ms@kilabit.info>2023-05-15 23:36:58 +0700
commitf002873db4dca0631960ae4e770b5747e365bae1 (patch)
treeb203729c0dbd4d4ee84ca3bd9904b0fc76ee629f
parentbee390efcc5ab2c03738ee36e06a0bac108ad392 (diff)
downloadgotp-f002873db4dca0631960ae4e770b5747e365bae1.tar.xz
all: add method MarshalText to config
The MarshalText convert the config object back to INI format.
-rw-r--r--config.go12
1 files changed, 11 insertions, 1 deletions
diff --git a/config.go b/config.go
index 699d886..fbfcfe0 100644
--- a/config.go
+++ b/config.go
@@ -87,6 +87,16 @@ func loadConfig(content []byte) (cfg *config, err error) {
return cfg, nil
}
+// MarshalText convert the config object back to INI format.
+func (cfg *config) MarshalText() (text []byte, err error) {
+ var logp = `MarshalText`
+ text, err = ini.Marshal(cfg)
+ if err != nil {
+ return nil, fmt.Errorf(`%s: %w`, logp, err)
+ }
+ return text, nil
+}
+
func (cfg *config) add(issuer *Issuer) (err error) {
var (
value string
@@ -144,7 +154,7 @@ func (cfg *config) save() (err error) {
b []byte
)
- b, err = ini.Marshal(cfg)
+ b, err = cfg.MarshalText()
if err != nil {
return fmt.Errorf(`%s %s: %w`, logp, cfg.file, err)
}