replace async client API / federator msg processing with worker pools (#497)

* replace async client API / federator msg processing with worker pools
* appease our lord-and-saviour, the linter
This commit is contained in:
kim
2022-04-28 13:23:11 +01:00
committed by GitHub
parent cc5f2e98b7
commit 420e2fb22b
64 changed files with 573 additions and 336 deletions

View File

@ -29,6 +29,7 @@ import (
"github.com/superseriousbusiness/gotosocial/internal/media"
"github.com/superseriousbusiness/gotosocial/internal/messages"
"github.com/superseriousbusiness/gotosocial/internal/typeutils"
"github.com/superseriousbusiness/gotosocial/internal/worker"
)
// Processor wraps a bunch of functions for processing admin actions.
@ -43,18 +44,18 @@ type Processor interface {
}
type processor struct {
tc typeutils.TypeConverter
mediaManager media.Manager
fromClientAPI chan messages.FromClientAPI
db db.DB
tc typeutils.TypeConverter
mediaManager media.Manager
clientWorker *worker.Worker[messages.FromClientAPI]
db db.DB
}
// New returns a new admin processor.
func New(db db.DB, tc typeutils.TypeConverter, mediaManager media.Manager, fromClientAPI chan messages.FromClientAPI) Processor {
func New(db db.DB, tc typeutils.TypeConverter, mediaManager media.Manager, clientWorker *worker.Worker[messages.FromClientAPI]) Processor {
return &processor{
tc: tc,
mediaManager: mediaManager,
fromClientAPI: fromClientAPI,
db: db,
tc: tc,
mediaManager: mediaManager,
clientWorker: clientWorker,
db: db,
}
}