1package gitlabnet 2 3import ( 4 "encoding/json" 5 "fmt" 6 "net/http" 7 8 "gitlab.com/gitlab-org/gitlab-shell/client" 9 10 "gitlab.com/gitlab-org/gitlab-shell/internal/config" 11) 12 13var ( 14 ParsingError = fmt.Errorf("Parsing failed") 15) 16 17func GetClient(config *config.Config) (*client.GitlabNetClient, error) { 18 httpClient, err := config.HttpClient() 19 if err != nil { 20 return nil, err 21 } 22 23 if httpClient == nil { 24 return nil, fmt.Errorf("Unsupported protocol") 25 } 26 27 return client.NewGitlabNetClient(config.HttpSettings.User, config.HttpSettings.Password, config.Secret, httpClient) 28} 29 30func ParseJSON(hr *http.Response, response interface{}) error { 31 if err := json.NewDecoder(hr.Body).Decode(response); err != nil { 32 return ParsingError 33 } 34 35 return nil 36} 37