feat(workers): integrate workers to handlers
This commit is contained in:
parent
0e7f39b8cc
commit
e47ee4aa8c
8 changed files with 265 additions and 113 deletions
|
@ -20,6 +20,8 @@ import (
|
|||
"github.com/ihexxa/quickshare/src/depidx"
|
||||
q "github.com/ihexxa/quickshare/src/handlers"
|
||||
"github.com/ihexxa/quickshare/src/userstore"
|
||||
"github.com/ihexxa/quickshare/src/worker"
|
||||
"github.com/ihexxa/quickshare/src/worker/localworker"
|
||||
)
|
||||
|
||||
var (
|
||||
|
@ -39,13 +41,15 @@ type FileHandlers struct {
|
|||
cfg gocfg.ICfg
|
||||
deps *depidx.Deps
|
||||
uploadMgr *UploadMgr
|
||||
workers worker.IWorkerPool
|
||||
}
|
||||
|
||||
func NewFileHandlers(cfg gocfg.ICfg, deps *depidx.Deps) (*FileHandlers, error) {
|
||||
func NewFileHandlers(cfg gocfg.ICfg, deps *depidx.Deps, workers worker.IWorkerPool) (*FileHandlers, error) {
|
||||
return &FileHandlers{
|
||||
cfg: cfg,
|
||||
deps: deps,
|
||||
uploadMgr: NewUploadMgr(deps.KV()),
|
||||
workers: workers,
|
||||
}, nil
|
||||
}
|
||||
|
||||
|
@ -410,6 +414,18 @@ func (h *FileHandlers) UploadChunk(c *gin.Context) {
|
|||
c.JSON(q.ErrResp(c, 500, err))
|
||||
return
|
||||
}
|
||||
|
||||
err = h.workers.TryPut(
|
||||
localworker.NewMsg(
|
||||
h.deps.ID().Gen(),
|
||||
map[string]string{localworker.MsgTypeKey: "sha1"},
|
||||
fsFilePath,
|
||||
),
|
||||
)
|
||||
if err != nil {
|
||||
c.JSON(q.ErrResp(c, 500, err))
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
c.JSON(200, &UploadStatusResp{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue