package SpotifyGo import ( "net/http" "strconv" "time" ) const ( defaultRetryDuration = 5 ) type SpotifyClient struct { http *http.Client shouldRetry bool authenticated bool } func CreateClient(retry bool) *SpotifyClient { // Create new spotify client var client SpotifyClient // Settings client.http = &http.Client{} client.shouldRetry = retry client.authenticated = false return &client } func (client SpotifyClient) executeRequest(req *http.Request) (interface{}, error) { return nil, nil } func retryDuration(response *http.Response) time.Duration { raw := response.Header.Get("Retry-After") if raw == "" { return time.Second * defaultRetryDuration } seconds, err := strconv.ParseInt(raw, 10, 32) if err != nil { return time.Second * defaultRetryDuration } return time.Duration(seconds) * time.Second }