From 0cd478a4092e6dea4b207a15603b97bfa045d5e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Fri, 22 Apr 2022 11:51:02 +0200 Subject: [PATCH] Manager: move `FetchJob` function into `jobs_query.go` I want to put more of the "get stuff" code into `jobs_query.go`, keeping `jobs.go` for creationg & manipulation. --- internal/manager/api_impl/jobs.go | 23 ----------------------- internal/manager/api_impl/jobs_query.go | 25 +++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 23 deletions(-) diff --git a/internal/manager/api_impl/jobs.go b/internal/manager/api_impl/jobs.go index fe092ea2..9f9a427f 100644 --- a/internal/manager/api_impl/jobs.go +++ b/internal/manager/api_impl/jobs.go @@ -97,29 +97,6 @@ func (f *Flamenco) SubmitJob(e echo.Context) error { return e.JSON(http.StatusOK, apiJob) } -func (f *Flamenco) FetchJob(e echo.Context, jobId string) error { - logger := requestLogger(e).With(). - Str("job", jobId). - Logger() - - if _, err := uuid.Parse(jobId); err != nil { - logger.Debug().Msg("invalid job ID received") - return sendAPIError(e, http.StatusBadRequest, "job ID not valid") - } - - logger.Debug().Msg("fetching job") - - ctx := e.Request().Context() - dbJob, err := f.persist.FetchJob(ctx, jobId) - if err != nil { - logger.Warn().Err(err).Msg("cannot fetch job") - return sendAPIError(e, http.StatusNotFound, fmt.Sprintf("job %+v not found", jobId)) - } - - apiJob := jobDBtoAPI(dbJob) - return e.JSON(http.StatusOK, apiJob) -} - func (f *Flamenco) SetJobStatus(e echo.Context, jobID string) error { logger := requestLogger(e) ctx := e.Request().Context() diff --git a/internal/manager/api_impl/jobs_query.go b/internal/manager/api_impl/jobs_query.go index 4c9e5b4d..ef51748c 100644 --- a/internal/manager/api_impl/jobs_query.go +++ b/internal/manager/api_impl/jobs_query.go @@ -2,12 +2,37 @@ package api_impl import ( + "fmt" "net/http" "git.blender.org/flamenco/pkg/api" + "github.com/google/uuid" "github.com/labstack/echo/v4" ) +func (f *Flamenco) FetchJob(e echo.Context, jobId string) error { + logger := requestLogger(e).With(). + Str("job", jobId). + Logger() + + if _, err := uuid.Parse(jobId); err != nil { + logger.Debug().Msg("invalid job ID received") + return sendAPIError(e, http.StatusBadRequest, "job ID not valid") + } + + logger.Debug().Msg("fetching job") + + ctx := e.Request().Context() + dbJob, err := f.persist.FetchJob(ctx, jobId) + if err != nil { + logger.Warn().Err(err).Msg("cannot fetch job") + return sendAPIError(e, http.StatusNotFound, fmt.Sprintf("job %+v not found", jobId)) + } + + apiJob := jobDBtoAPI(dbJob) + return e.JSON(http.StatusOK, apiJob) +} + func (f *Flamenco) QueryJobs(e echo.Context) error { logger := requestLogger(e)