summaryrefslogtreecommitdiff
path: root/internal/server/handler/handler.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2024-07-14 23:55:53 +0300
committerPaul Buetow <paul@buetow.org>2024-07-14 23:55:53 +0300
commit95b055a9f40787d15c42927041c9e65c49b05ea5 (patch)
tree62a3361cf520077c88a4c672810e9f31c7549954 /internal/server/handler/handler.go
parent50b06ab176a24d7ee842e3e07d7462ef465b6762 (diff)
make it all context.Context aware
Diffstat (limited to 'internal/server/handler/handler.go')
-rw-r--r--internal/server/handler/handler.go13
1 files changed, 7 insertions, 6 deletions
diff --git a/internal/server/handler/handler.go b/internal/server/handler/handler.go
index 80494dd..41664b1 100644
--- a/internal/server/handler/handler.go
+++ b/internal/server/handler/handler.go
@@ -1,6 +1,7 @@
package handler
import (
+ "context"
"errors"
"fmt"
"io"
@@ -25,7 +26,7 @@ func New(conf server.ServerConfig) Handler {
}
}
-func (h Handler) Submit(w http.ResponseWriter, r *http.Request) error {
+func (h Handler) Submit(ctx context.Context, w http.ResponseWriter, r *http.Request) error {
if r.Method != "POST" {
return fmt.Errorf("expexted POST request")
}
@@ -71,11 +72,11 @@ func (h Handler) Get(w http.ResponseWriter, r *http.Request) error {
return nil
}
-func (h Handler) Merge(w http.ResponseWriter, r *http.Request) error {
+func (h Handler) Merge(ctx context.Context, w http.ResponseWriter, r *http.Request) error {
var errs []error
for _, partner := range h.conf.Partners() {
- if err := h.mergeFromPartner(partner); err != nil {
+ if err := h.mergeFromPartner(ctx, partner); err != nil {
errs = append(errs, err)
}
}
@@ -88,7 +89,7 @@ func (h Handler) Merge(w http.ResponseWriter, r *http.Request) error {
return nil
}
-func (h Handler) mergeFromPartner(partner string) error {
+func (h Handler) mergeFromPartner(ctx context.Context, partner string) error {
var (
errs []error
uri = fmt.Sprintf("%s/list", partner)
@@ -96,7 +97,7 @@ func (h Handler) mergeFromPartner(partner string) error {
pairs []repository.EntryPair
)
- if err := easyhttp.GetData(uri, h.conf.APIKey, &pairs); err != nil {
+ if err := easyhttp.GetData(ctx, uri, h.conf.APIKey, &pairs); err != nil {
return err
}
@@ -110,7 +111,7 @@ func (h Handler) mergeFromPartner(partner string) error {
uri = fmt.Sprintf("%s/get?id=%s", partner, pair.ID)
)
- if err := easyhttp.GetData(uri, h.conf.APIKey, &entry); err != nil {
+ if err := easyhttp.GetData(ctx, uri, h.conf.APIKey, &entry); err != nil {
errs = append(errs, err)
continue
}