From 92d7a71f125b69c52731f2c63a400ca782c88afa Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Thu, 11 Sep 2025 02:19:56 -0500 Subject: [PATCH] using new config package --- save.go | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/save.go b/save.go index 2f2db15..a1f48e0 100644 --- a/save.go +++ b/save.go @@ -19,7 +19,6 @@ func ConfigSave(pb proto.Message) error { return ErrProtoFilename } - // Unmarshal() s := prototext.Format(pb) dir, name := filepath.Split(fullname) @@ -35,6 +34,28 @@ func ConfigSave(pb proto.Message) error { return configWrite(fullname, []byte(s)) } +func ConfigSaveWithHeader(pb proto.Message, header string) error { + // get pb.Filename if it is there in the .proto file + fullname, ok := GetFilename(pb) + if !ok { + return ErrProtoFilename + } + + s := prototext.Format(pb) + + dir, name := filepath.Split(fullname) + if name == "" { + return fmt.Errorf("filename was blank") + } + err := os.MkdirAll(dir, os.ModePerm) + if err != nil { + return err + } + + log.Infof("ConfigSave() filename=%s %d\n", fullname, len(s)) + return configWrite(fullname, []byte(header+s)) +} + func configWrite(fullname string, data []byte) error { cfgfile, err := os.OpenFile(fullname, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644)