diff --git a/src/genmai/ConfigParserJSON.go b/src/genmai/ConfigParserJSON.go index 6bf84e4..bc28461 100644 --- a/src/genmai/ConfigParserJSON.go +++ b/src/genmai/ConfigParserJSON.go @@ -27,19 +27,39 @@ //////////////////////////////////////////////////////////////// package genmai -// -//// TODO: TBD -//type ConfigJSON struct { -//} -// -//type ConfigParserJSON struct { -// cpyConfigParser ConfigParser -// cpyConfig ConfigJSON -//} -// -//// ConfigParserIFace :: pasre -//func (this *ConfigParserJSON) parse(file string) error { -// // TODO -// // JSON::unmarshell(path) -// return nil -//} + +import ( + "os" + "io" + "strings" + "fmt" + json "encoding/json" +) + +//////////////////////////////////////////////////////////////// +// ConfigParserJSON +type ConfigParserJSON map[string]interface {} + +/////////////////////////////// +// override functions +func (cpy *ConfigParserJSON)parse(file string) (rc error) { + configfile, ok := os.Open(file) + rc = ok; + /* */ + if nil != rc { + return rc + } + /* */ + json_bytes, rc := io.ReadAll(configfile) + defer configfile.Close() + + config := ConfigParserJSON{} + + rc = json.Unmarshal(json_bytes, &config) + + fmt.Println(configfile) + fmt.Println(">>>json>>>") + fmt.Println(config) + + return rc +}