mirror of
https://github.com/stashapp/stash.git
synced 2025-12-06 16:34:02 +01:00
* Move main to cmd * Move api to internal * Move logger and manager to internal * Move shell hiding code to separate package * Decouple job from desktop and utils * Decouple session from config * Move static into internal * Decouple config from dlna * Move desktop to internal * Move dlna to internal * Decouple remaining packages from config * Move config into internal * Move jsonschema and paths to models * Make ffmpeg functions private * Move file utility methods into fsutil package * Move symwalk into fsutil * Move single-use util functions into client package * Move slice functions to separate packages * Add env var to suppress windowsgui arg * Move hash functions into separate package * Move identify to internal * Move autotag to internal * Touch UI when generating backend
52 lines
1 KiB
Go
52 lines
1 KiB
Go
package api
|
|
|
|
import (
|
|
"context"
|
|
"strconv"
|
|
|
|
"github.com/stashapp/stash/internal/manager"
|
|
"github.com/stashapp/stash/pkg/job"
|
|
"github.com/stashapp/stash/pkg/models"
|
|
)
|
|
|
|
func (r *queryResolver) JobQueue(ctx context.Context) ([]*models.Job, error) {
|
|
queue := manager.GetInstance().JobManager.GetQueue()
|
|
|
|
var ret []*models.Job
|
|
for _, j := range queue {
|
|
ret = append(ret, jobToJobModel(j))
|
|
}
|
|
|
|
return ret, nil
|
|
}
|
|
|
|
func (r *queryResolver) FindJob(ctx context.Context, input models.FindJobInput) (*models.Job, error) {
|
|
jobID, err := strconv.Atoi(input.ID)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
j := manager.GetInstance().JobManager.GetJob(jobID)
|
|
if j == nil {
|
|
return nil, nil
|
|
}
|
|
|
|
return jobToJobModel(*j), nil
|
|
}
|
|
|
|
func jobToJobModel(j job.Job) *models.Job {
|
|
ret := &models.Job{
|
|
ID: strconv.Itoa(j.ID),
|
|
Status: models.JobStatus(j.Status),
|
|
Description: j.Description,
|
|
SubTasks: j.Details,
|
|
StartTime: j.StartTime,
|
|
EndTime: j.EndTime,
|
|
AddTime: j.AddTime,
|
|
}
|
|
|
|
if j.Progress != -1 {
|
|
ret.Progress = &j.Progress
|
|
}
|
|
|
|
return ret
|
|
}
|