diff options
Diffstat (limited to 'load.go')
| -rw-r--r-- | load.go | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -70,6 +70,23 @@ func ConfigLoad(pb proto.Message, argname string, protoname string) error { return ErrMarshal } +func Load(pb proto.Message) error { + fullname, ok := GetFilename(pb) + if !ok { + return ErrProtoFilename + } + if strings.HasSuffix(fullname, ".text") { + return loadTEXT(pb, fullname) + } + if strings.HasSuffix(fullname, ".json") { + return loadJSON(pb, fullname) + } + if strings.HasSuffix(fullname, ".pb") { + return loadPB(pb, fullname) + } + return log.Errorf("unknown filetype %s", fullname) +} + func LoadFile(pb proto.Message, fullname string) error { if strings.HasSuffix(fullname, ".text") { return loadTEXT(pb, fullname) |
