diff --git a/driver/generic.go b/driver/generic.go index bbe668a..ec0c078 100644 --- a/driver/generic.go +++ b/driver/generic.go @@ -3,14 +3,14 @@ package driver import ( "encoding/json" "fmt" - "git.xdrm.io/go/aicra/err" + e "git.xdrm.io/go/aicra/err" "git.xdrm.io/go/aicra/response" "os/exec" "strings" ) // Load implements the Driver interface -func (d *Generic) Load(_path []string, _method string) (func(response.Arguments) response.Response, err.Error) { +func (d *Generic) Load(_path []string, _method string) (func(response.Arguments) response.Response, e.Error) { /* (1) Build controller path */ path := strings.Join(_path, "-") @@ -29,42 +29,42 @@ func (d *Generic) Load(_path []string, _method string) (func(response.Arguments) /* (1) Prepare stdin data */ d["_HTTP_METHOD_"] = method - stdin, err2 := json.Marshal(d) - if err2 != nil { - res.Err = err.UncallableController + stdin, err := json.Marshal(d) + if err != nil { + res.Err = e.UncallableController return *res } /* (2) Try to load command with -> stdout */ cmd := exec.Command(path, string(stdin)) - stdout, err2 := cmd.Output() - if err2 != nil { - res.Err = err.UncallableController + stdout, err := cmd.Output() + if err != nil { + res.Err = e.UncallableController return *res } /* (3) Get output json */ var outputI interface{} - err2 = json.Unmarshal(stdout, &outputI) - if err2 != nil { - res.Err = err.UncallableController + err = json.Unmarshal(stdout, &outputI) + if err != nil { + res.Err = e.UncallableController return *res } output, ok := outputI.(map[string]interface{}) if !ok { - res.Err = err.UncallableController + res.Err = e.UncallableController return *res } - res.Err = err.Success + res.Err = e.Success // extract error (success by default or on error) if outErr, ok := output["error"]; ok { errCode, ok := outErr.(float64) if ok { - res.Err = err.Error{int(errCode), "unknown reason", nil} + res.Err = e.Error{int(errCode), "unknown reason", nil} } delete(output, "error") @@ -77,5 +77,5 @@ func (d *Generic) Load(_path []string, _method string) (func(response.Arguments) return *res - }, err.Success + }, e.Success }