From b48db1d8c46c4c146ae5545699c88eaed54b4813 Mon Sep 17 00:00:00 2001 From: Derrick Hammer Date: Wed, 10 May 2023 14:41:12 -0400 Subject: [PATCH] refactor: add Download function to files service --- service/files/files.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/service/files/files.go b/service/files/files.go index fe7c918..bc235ea 100644 --- a/service/files/files.go +++ b/service/files/files.go @@ -95,3 +95,17 @@ func Upload(r io.ReadSeeker) (model.Upload, error) { return upload, nil } +func Download(hash string) (io.Reader, error) { + result := db.Get().Table("uploads").Where("hash = ?", hash).Row() + + if result.Err() != nil { + return nil, result.Err() + } + + fetch, err := client.R().SetDoNotParseResponse(true).Get(fmt.Sprintf("/worker/objects/%s", hash)) + if err != nil { + return nil, err + } + + return fetch.RawBody(), nil +}