mirror of
https://github.com/glanceapp/glance.git
synced 2025-06-21 18:31:24 +02:00
Rename variables & interface
This commit is contained in:
parent
ffe053ffc5
commit
b5259d1a98
@ -102,7 +102,7 @@ func fetchWatchUUIDsFromChangeDetection(instanceURL string, token string) ([]str
|
|||||||
request.Header.Add("x-api-key", token)
|
request.Header.Add("x-api-key", token)
|
||||||
}
|
}
|
||||||
|
|
||||||
uuidsMap, err := decodeJsonFromRequest[map[string]struct{}](defaultClient, request)
|
uuidsMap, err := decodeJsonFromRequest[map[string]struct{}](defaultHTTPClient, request)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("could not fetch list of watch UUIDs: %v", err)
|
return nil, fmt.Errorf("could not fetch list of watch UUIDs: %v", err)
|
||||||
}
|
}
|
||||||
@ -135,7 +135,7 @@ func fetchWatchesFromChangeDetection(instanceURL string, requestedWatchIDs []str
|
|||||||
requests[i] = request
|
requests[i] = request
|
||||||
}
|
}
|
||||||
|
|
||||||
task := decodeJsonFromRequestTask[changeDetectionResponseJson](defaultClient)
|
task := decodeJsonFromRequestTask[changeDetectionResponseJson](defaultHTTPClient)
|
||||||
job := newJob(task, requests).withWorkers(15)
|
job := newJob(task, requests).withWorkers(15)
|
||||||
responses, errs, err := workerPoolDo(job)
|
responses, errs, err := workerPoolDo(job)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -75,7 +75,7 @@ func (widget *customAPIWidget) Render() template.HTML {
|
|||||||
func fetchAndParseCustomAPI(req *http.Request, tmpl *template.Template) (template.HTML, error) {
|
func fetchAndParseCustomAPI(req *http.Request, tmpl *template.Template) (template.HTML, error) {
|
||||||
emptyBody := template.HTML("")
|
emptyBody := template.HTML("")
|
||||||
|
|
||||||
resp, err := defaultClient.Do(req)
|
resp, err := defaultHTTPClient.Do(req)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return emptyBody, err
|
return emptyBody, err
|
||||||
}
|
}
|
||||||
|
@ -77,7 +77,7 @@ type hackerNewsPostResponseJson struct {
|
|||||||
|
|
||||||
func fetchHackerNewsPostIds(sort string) ([]int, error) {
|
func fetchHackerNewsPostIds(sort string) ([]int, error) {
|
||||||
request, _ := http.NewRequest("GET", fmt.Sprintf("https://hacker-news.firebaseio.com/v0/%sstories.json", sort), nil)
|
request, _ := http.NewRequest("GET", fmt.Sprintf("https://hacker-news.firebaseio.com/v0/%sstories.json", sort), nil)
|
||||||
response, err := decodeJsonFromRequest[[]int](defaultClient, request)
|
response, err := decodeJsonFromRequest[[]int](defaultHTTPClient, request)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("%w: could not fetch list of post IDs", errNoContent)
|
return nil, fmt.Errorf("%w: could not fetch list of post IDs", errNoContent)
|
||||||
}
|
}
|
||||||
@ -93,7 +93,7 @@ func fetchHackerNewsPostsFromIds(postIds []int, commentsUrlTemplate string) (for
|
|||||||
requests[i] = request
|
requests[i] = request
|
||||||
}
|
}
|
||||||
|
|
||||||
task := decodeJsonFromRequestTask[hackerNewsPostResponseJson](defaultClient)
|
task := decodeJsonFromRequestTask[hackerNewsPostResponseJson](defaultHTTPClient)
|
||||||
job := newJob(task, requests).withWorkers(30)
|
job := newJob(task, requests).withWorkers(30)
|
||||||
results, errs, err := workerPoolDo(job)
|
results, errs, err := workerPoolDo(job)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -80,7 +80,7 @@ func fetchLobstersPostsFromFeed(feedUrl string) (forumPostList, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
feed, err := decodeJsonFromRequest[lobstersFeedResponseJson](defaultClient, request)
|
feed, err := decodeJsonFromRequest[lobstersFeedResponseJson](defaultHTTPClient, request)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -112,7 +112,7 @@ func fetchMarketsDataFromYahoo(marketRequests []marketRequest) (marketList, erro
|
|||||||
requests = append(requests, request)
|
requests = append(requests, request)
|
||||||
}
|
}
|
||||||
|
|
||||||
job := newJob(decodeJsonFromRequestTask[marketResponseJson](defaultClient), requests)
|
job := newJob(decodeJsonFromRequestTask[marketResponseJson](defaultHTTPClient), requests)
|
||||||
responses, errs, err := workerPoolDo(job)
|
responses, errs, err := workerPoolDo(job)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("%w: %v", errNoContent, err)
|
return nil, fmt.Errorf("%w: %v", errNoContent, err)
|
||||||
|
@ -142,9 +142,9 @@ func fetchSiteStatusTask(statusRequest *SiteStatusRequest) (SiteStatus, error) {
|
|||||||
var response *http.Response
|
var response *http.Response
|
||||||
|
|
||||||
if !statusRequest.AllowInsecure {
|
if !statusRequest.AllowInsecure {
|
||||||
response, err = defaultClient.Do(request)
|
response, err = defaultHTTPClient.Do(request)
|
||||||
} else {
|
} else {
|
||||||
response, err = defaultInsecureClient.Do(request)
|
response, err = defaultInsecureHTTPClient.Do(request)
|
||||||
}
|
}
|
||||||
|
|
||||||
status := SiteStatus{ResponseTime: time.Since(requestSentAt)}
|
status := SiteStatus{ResponseTime: time.Since(requestSentAt)}
|
||||||
|
@ -191,7 +191,7 @@ func fetchSubredditPosts(subreddit, sort, topPeriod, search, commentsUrlTemplate
|
|||||||
|
|
||||||
// Required to increase rate limit, otherwise Reddit randomly returns 429 even after just 2 requests
|
// Required to increase rate limit, otherwise Reddit randomly returns 429 even after just 2 requests
|
||||||
setBrowserUserAgentHeader(request)
|
setBrowserUserAgentHeader(request)
|
||||||
responseJson, err := decodeJsonFromRequest[subredditResponseJson](defaultClient, request)
|
responseJson, err := decodeJsonFromRequest[subredditResponseJson](defaultHTTPClient, request)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -214,7 +214,7 @@ func fetchLatestGithubRelease(request *releaseRequest) (*appRelease, error) {
|
|||||||
httpRequest.Header.Add("Authorization", "Bearer "+(*request.token))
|
httpRequest.Header.Add("Authorization", "Bearer "+(*request.token))
|
||||||
}
|
}
|
||||||
|
|
||||||
response, err := decodeJsonFromRequest[githubReleaseLatestResponseJson](defaultClient, httpRequest)
|
response, err := decodeJsonFromRequest[githubReleaseLatestResponseJson](defaultHTTPClient, httpRequest)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@ -275,7 +275,7 @@ func fetchLatestDockerHubRelease(request *releaseRequest) (*appRelease, error) {
|
|||||||
var tag *dockerHubRepositoryTagResponse
|
var tag *dockerHubRepositoryTagResponse
|
||||||
|
|
||||||
if len(tagParts) == 1 {
|
if len(tagParts) == 1 {
|
||||||
response, err := decodeJsonFromRequest[dockerHubRepositoryTagsResponse](defaultClient, httpRequest)
|
response, err := decodeJsonFromRequest[dockerHubRepositoryTagsResponse](defaultHTTPClient, httpRequest)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@ -286,7 +286,7 @@ func fetchLatestDockerHubRelease(request *releaseRequest) (*appRelease, error) {
|
|||||||
|
|
||||||
tag = &response.Results[0]
|
tag = &response.Results[0]
|
||||||
} else {
|
} else {
|
||||||
response, err := decodeJsonFromRequest[dockerHubRepositoryTagResponse](defaultClient, httpRequest)
|
response, err := decodeJsonFromRequest[dockerHubRepositoryTagResponse](defaultHTTPClient, httpRequest)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@ -346,7 +346,7 @@ func fetchLatestGitLabRelease(request *releaseRequest) (*appRelease, error) {
|
|||||||
httpRequest.Header.Add("PRIVATE-TOKEN", *request.token)
|
httpRequest.Header.Add("PRIVATE-TOKEN", *request.token)
|
||||||
}
|
}
|
||||||
|
|
||||||
response, err := decodeJsonFromRequest[gitlabReleaseResponseJson](defaultClient, httpRequest)
|
response, err := decodeJsonFromRequest[gitlabReleaseResponseJson](defaultHTTPClient, httpRequest)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@ -379,7 +379,7 @@ func fetchLatestCodebergRelease(request *releaseRequest) (*appRelease, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
response, err := decodeJsonFromRequest[codebergReleaseResponseJson](defaultClient, httpRequest)
|
response, err := decodeJsonFromRequest[codebergReleaseResponseJson](defaultHTTPClient, httpRequest)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -142,14 +142,14 @@ func fetchRepositoryDetailsFromGithub(repo string, token string, maxPRs int, max
|
|||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
go (func() {
|
go (func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
repositoryResponse, detailsErr = decodeJsonFromRequest[githubRepositoryResponseJson](defaultClient, repositoryRequest)
|
repositoryResponse, detailsErr = decodeJsonFromRequest[githubRepositoryResponseJson](defaultHTTPClient, repositoryRequest)
|
||||||
})()
|
})()
|
||||||
|
|
||||||
if maxPRs > 0 {
|
if maxPRs > 0 {
|
||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
go (func() {
|
go (func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
PRsResponse, PRsErr = decodeJsonFromRequest[githubTicketResponseJson](defaultClient, PRsRequest)
|
PRsResponse, PRsErr = decodeJsonFromRequest[githubTicketResponseJson](defaultHTTPClient, PRsRequest)
|
||||||
})()
|
})()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -157,7 +157,7 @@ func fetchRepositoryDetailsFromGithub(repo string, token string, maxPRs int, max
|
|||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
go (func() {
|
go (func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
issuesResponse, issuesErr = decodeJsonFromRequest[githubTicketResponseJson](defaultClient, issuesRequest)
|
issuesResponse, issuesErr = decodeJsonFromRequest[githubTicketResponseJson](defaultHTTPClient, issuesRequest)
|
||||||
})()
|
})()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -165,7 +165,7 @@ func fetchRepositoryDetailsFromGithub(repo string, token string, maxPRs int, max
|
|||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
go (func() {
|
go (func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
commitsResponse, CommitsErr = decodeJsonFromRequest[[]gitHubCommitResponseJson](defaultClient, CommitsRequest)
|
commitsResponse, CommitsErr = decodeJsonFromRequest[[]gitHubCommitResponseJson](defaultHTTPClient, CommitsRequest)
|
||||||
})()
|
})()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -170,7 +170,7 @@ func fetchItemsFromRSSFeedTask(request RSSFeedRequest) ([]rssFeedItem, error) {
|
|||||||
req.Header.Add(key, value)
|
req.Header.Add(key, value)
|
||||||
}
|
}
|
||||||
|
|
||||||
resp, err := defaultClient.Do(req)
|
resp, err := defaultHTTPClient.Do(req)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -139,7 +139,7 @@ func fetchChannelFromTwitchTask(channel string) (twitchChannel, error) {
|
|||||||
request, _ := http.NewRequest("POST", twitchGqlEndpoint, reader)
|
request, _ := http.NewRequest("POST", twitchGqlEndpoint, reader)
|
||||||
request.Header.Add("Client-ID", twitchGqlClientId)
|
request.Header.Add("Client-ID", twitchGqlClientId)
|
||||||
|
|
||||||
response, err := decodeJsonFromRequest[[]twitchOperationResponse](defaultClient, request)
|
response, err := decodeJsonFromRequest[[]twitchOperationResponse](defaultHTTPClient, request)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return result, err
|
return result, err
|
||||||
}
|
}
|
||||||
|
@ -82,7 +82,7 @@ func fetchTopGamesFromTwitch(exclude []string, limit int) ([]twitchCategory, err
|
|||||||
reader := strings.NewReader(fmt.Sprintf(twitchDirectoriesOperationRequestBody, len(exclude)+limit))
|
reader := strings.NewReader(fmt.Sprintf(twitchDirectoriesOperationRequestBody, len(exclude)+limit))
|
||||||
request, _ := http.NewRequest("POST", twitchGqlEndpoint, reader)
|
request, _ := http.NewRequest("POST", twitchGqlEndpoint, reader)
|
||||||
request.Header.Add("Client-ID", twitchGqlClientId)
|
request.Header.Add("Client-ID", twitchGqlClientId)
|
||||||
response, err := decodeJsonFromRequest[[]twitchDirectoriesOperationResponse](defaultClient, request)
|
response, err := decodeJsonFromRequest[[]twitchDirectoriesOperationResponse](defaultHTTPClient, request)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -20,18 +20,18 @@ var (
|
|||||||
|
|
||||||
const defaultClientTimeout = 5 * time.Second
|
const defaultClientTimeout = 5 * time.Second
|
||||||
|
|
||||||
var defaultClient = &http.Client{
|
var defaultHTTPClient = &http.Client{
|
||||||
Timeout: defaultClientTimeout,
|
Timeout: defaultClientTimeout,
|
||||||
}
|
}
|
||||||
|
|
||||||
var defaultInsecureClient = &http.Client{
|
var defaultInsecureHTTPClient = &http.Client{
|
||||||
Timeout: defaultClientTimeout,
|
Timeout: defaultClientTimeout,
|
||||||
Transport: &http.Transport{
|
Transport: &http.Transport{
|
||||||
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
|
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
type RequestDoer interface {
|
type requestDoer interface {
|
||||||
Do(*http.Request) (*http.Response, error)
|
Do(*http.Request) (*http.Response, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -39,7 +39,7 @@ func setBrowserUserAgentHeader(request *http.Request) {
|
|||||||
request.Header.Set("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:123.0) Gecko/20100101 Firefox/123.0")
|
request.Header.Set("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:123.0) Gecko/20100101 Firefox/123.0")
|
||||||
}
|
}
|
||||||
|
|
||||||
func decodeJsonFromRequest[T any](client RequestDoer, request *http.Request) (T, error) {
|
func decodeJsonFromRequest[T any](client requestDoer, request *http.Request) (T, error) {
|
||||||
var result T
|
var result T
|
||||||
|
|
||||||
response, err := client.Do(request)
|
response, err := client.Do(request)
|
||||||
@ -72,14 +72,14 @@ func decodeJsonFromRequest[T any](client RequestDoer, request *http.Request) (T,
|
|||||||
return result, nil
|
return result, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func decodeJsonFromRequestTask[T any](client RequestDoer) func(*http.Request) (T, error) {
|
func decodeJsonFromRequestTask[T any](client requestDoer) func(*http.Request) (T, error) {
|
||||||
return func(request *http.Request) (T, error) {
|
return func(request *http.Request) (T, error) {
|
||||||
return decodeJsonFromRequest[T](client, request)
|
return decodeJsonFromRequest[T](client, request)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: tidy up, these are a copy of the above but with a line changed
|
// TODO: tidy up, these are a copy of the above but with a line changed
|
||||||
func decodeXmlFromRequest[T any](client RequestDoer, request *http.Request) (T, error) {
|
func decodeXmlFromRequest[T any](client requestDoer, request *http.Request) (T, error) {
|
||||||
var result T
|
var result T
|
||||||
|
|
||||||
response, err := client.Do(request)
|
response, err := client.Do(request)
|
||||||
@ -112,7 +112,7 @@ func decodeXmlFromRequest[T any](client RequestDoer, request *http.Request) (T,
|
|||||||
return result, nil
|
return result, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func decodeXmlFromRequestTask[T any](client RequestDoer) func(*http.Request) (T, error) {
|
func decodeXmlFromRequestTask[T any](client requestDoer) func(*http.Request) (T, error) {
|
||||||
return func(request *http.Request) (T, error) {
|
return func(request *http.Request) (T, error) {
|
||||||
return decodeXmlFromRequest[T](client, request)
|
return decodeXmlFromRequest[T](client, request)
|
||||||
}
|
}
|
||||||
|
@ -126,7 +126,7 @@ func FetchYoutubeChannelUploads(channelIds []string, videoUrlTemplate string, in
|
|||||||
requests = append(requests, request)
|
requests = append(requests, request)
|
||||||
}
|
}
|
||||||
|
|
||||||
job := newJob(decodeXmlFromRequestTask[youtubeFeedResponseXml](defaultClient), requests).withWorkers(30)
|
job := newJob(decodeXmlFromRequestTask[youtubeFeedResponseXml](defaultHTTPClient), requests).withWorkers(30)
|
||||||
|
|
||||||
responses, errs, err := workerPoolDo(job)
|
responses, errs, err := workerPoolDo(job)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -172,7 +172,7 @@ func fetchOpenMeteoPlaceFromName(location string) (*openMeteoPlaceResponseJson,
|
|||||||
location, area := parsePlaceName(location)
|
location, area := parsePlaceName(location)
|
||||||
requestUrl := fmt.Sprintf("https://geocoding-api.open-meteo.com/v1/search?name=%s&count=10&language=en&format=json", url.QueryEscape(location))
|
requestUrl := fmt.Sprintf("https://geocoding-api.open-meteo.com/v1/search?name=%s&count=10&language=en&format=json", url.QueryEscape(location))
|
||||||
request, _ := http.NewRequest("GET", requestUrl, nil)
|
request, _ := http.NewRequest("GET", requestUrl, nil)
|
||||||
responseJson, err := decodeJsonFromRequest[openMeteoPlacesResponseJson](defaultClient, request)
|
responseJson, err := decodeJsonFromRequest[openMeteoPlacesResponseJson](defaultHTTPClient, request)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("fetching places data: %v", err)
|
return nil, fmt.Errorf("fetching places data: %v", err)
|
||||||
}
|
}
|
||||||
@ -232,7 +232,7 @@ func fetchWeatherForOpenMeteoPlace(place *openMeteoPlaceResponseJson, units stri
|
|||||||
|
|
||||||
requestUrl := "https://api.open-meteo.com/v1/forecast?" + query.Encode()
|
requestUrl := "https://api.open-meteo.com/v1/forecast?" + query.Encode()
|
||||||
request, _ := http.NewRequest("GET", requestUrl, nil)
|
request, _ := http.NewRequest("GET", requestUrl, nil)
|
||||||
responseJson, err := decodeJsonFromRequest[openMeteoWeatherResponseJson](defaultClient, request)
|
responseJson, err := decodeJsonFromRequest[openMeteoWeatherResponseJson](defaultHTTPClient, request)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("%w: %v", errNoContent, err)
|
return nil, fmt.Errorf("%w: %v", errNoContent, err)
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user