in hugegraph-client-go/api/v1/gremlin/gemlin.go [135:187]
func (g GetRequest) Do(ctx context.Context, transport api.Transport) (*GetResponse, error) {
url := "/gremlin"
params := &url2.Values{}
if len(g.gremlin) <= 0 {
return nil, errors.New("please set gremlin")
} else {
params.Add("gremlin", g.gremlin)
}
if len(g.language) > 0 {
params.Add("language", g.language)
}
if g.aliases != nil && len(g.aliases) >= 0 {
aliasesJsonStr, err := json.Marshal(g.aliases)
if err != nil {
return nil, err
}
params.Add("aliases", string(aliasesJsonStr))
}
if g.bindings != nil && len(g.bindings) >= 0 {
bindingsJsonStr, err := json.Marshal(g.bindings)
if err != nil {
return nil, err
}
params.Add("bindings", string(bindingsJsonStr))
}
req, err := api.NewRequest("GET", url, params, nil)
if err != nil {
return nil, err
}
if ctx != nil {
req = req.WithContext(ctx)
}
res, err := transport.Perform(req)
if err != nil {
return nil, err
}
bytes, err := ioutil.ReadAll(res.Body)
if err != nil {
return nil, err
}
fmt.Println(string(bytes))
gremlinGetResponse := &GetResponse{}
gremlinGetResponse.StatusCode = res.StatusCode
return gremlinGetResponse, nil
}