miniflux-v2/ui/controller.go

41 lines
1.1 KiB
Go
Raw Normal View History

2017-11-20 06:10:04 +01:00
// Copyright 2017 Frédéric Guillot. All rights reserved.
// Use of this source code is governed by the Apache 2.0
// license that can be found in the LICENSE file.
2018-08-25 06:51:50 +02:00
package ui // import "miniflux.app/ui"
2017-11-20 06:10:04 +01:00
import (
2018-08-25 06:51:50 +02:00
"miniflux.app/config"
"miniflux.app/locale"
"miniflux.app/reader/feed"
"miniflux.app/scheduler"
"miniflux.app/storage"
"miniflux.app/template"
2018-09-03 23:26:40 +02:00
"github.com/gorilla/mux"
2017-11-20 06:10:04 +01:00
)
// Controller contains all HTTP handlers for the user interface.
2017-11-20 06:10:04 +01:00
type Controller struct {
2017-11-23 07:22:33 +01:00
cfg *config.Config
2017-11-20 06:10:04 +01:00
store *storage.Storage
pool *scheduler.WorkerPool
2017-11-20 06:10:04 +01:00
feedHandler *feed.Handler
tpl *template.Engine
router *mux.Router
translator *locale.Translator
2017-11-20 06:10:04 +01:00
}
// NewController returns a new Controller.
func NewController(cfg *config.Config, store *storage.Storage, pool *scheduler.WorkerPool, feedHandler *feed.Handler, tpl *template.Engine, translator *locale.Translator, router *mux.Router) *Controller {
2017-11-20 06:10:04 +01:00
return &Controller{
2017-11-23 07:22:33 +01:00
cfg: cfg,
2017-11-20 06:10:04 +01:00
store: store,
pool: pool,
2017-11-20 06:10:04 +01:00
feedHandler: feedHandler,
tpl: tpl,
translator: translator,
router: router,
2017-11-20 06:10:04 +01:00
}
}