Refactor Agents to be singleton
Initial work for Last.fm scrobbler
This commit is contained in:
@@ -16,10 +16,10 @@ import (
|
||||
|
||||
type AlbumListController struct {
|
||||
ds model.DataStore
|
||||
scrobbler scrobbler.Scrobbler
|
||||
scrobbler scrobbler.Broker
|
||||
}
|
||||
|
||||
func NewAlbumListController(ds model.DataStore, scrobbler scrobbler.Scrobbler) *AlbumListController {
|
||||
func NewAlbumListController(ds model.DataStore, scrobbler scrobbler.Broker) *AlbumListController {
|
||||
c := &AlbumListController{
|
||||
ds: ds,
|
||||
scrobbler: scrobbler,
|
||||
|
||||
@@ -34,11 +34,11 @@ type Router struct {
|
||||
ExternalMetadata core.ExternalMetadata
|
||||
Scanner scanner.Scanner
|
||||
Broker events.Broker
|
||||
Scrobbler scrobbler.Scrobbler
|
||||
Scrobbler scrobbler.Broker
|
||||
}
|
||||
|
||||
func New(ds model.DataStore, artwork core.Artwork, streamer core.MediaStreamer, archiver core.Archiver, players core.Players,
|
||||
externalMetadata core.ExternalMetadata, scanner scanner.Scanner, broker events.Broker, scrobbler scrobbler.Scrobbler) *Router {
|
||||
externalMetadata core.ExternalMetadata, scanner scanner.Scanner, broker events.Broker, scrobbler scrobbler.Broker) *Router {
|
||||
r := &Router{
|
||||
DataStore: ds,
|
||||
Artwork: artwork,
|
||||
|
||||
@@ -18,11 +18,11 @@ import (
|
||||
|
||||
type MediaAnnotationController struct {
|
||||
ds model.DataStore
|
||||
scrobbler scrobbler.Scrobbler
|
||||
scrobbler scrobbler.Broker
|
||||
broker events.Broker
|
||||
}
|
||||
|
||||
func NewMediaAnnotationController(ds model.DataStore, scrobbler scrobbler.Scrobbler, broker events.Broker) *MediaAnnotationController {
|
||||
func NewMediaAnnotationController(ds model.DataStore, scrobbler scrobbler.Broker, broker events.Broker) *MediaAnnotationController {
|
||||
return &MediaAnnotationController{ds: ds, scrobbler: scrobbler, broker: broker}
|
||||
}
|
||||
|
||||
|
||||
@@ -25,16 +25,16 @@ func initBrowsingController(router *Router) *BrowsingController {
|
||||
|
||||
func initAlbumListController(router *Router) *AlbumListController {
|
||||
dataStore := router.DataStore
|
||||
scrobbler := router.Scrobbler
|
||||
albumListController := NewAlbumListController(dataStore, scrobbler)
|
||||
broker := router.Scrobbler
|
||||
albumListController := NewAlbumListController(dataStore, broker)
|
||||
return albumListController
|
||||
}
|
||||
|
||||
func initMediaAnnotationController(router *Router) *MediaAnnotationController {
|
||||
dataStore := router.DataStore
|
||||
scrobbler := router.Scrobbler
|
||||
broker := router.Broker
|
||||
mediaAnnotationController := NewMediaAnnotationController(dataStore, scrobbler, broker)
|
||||
broker := router.Scrobbler
|
||||
eventsBroker := router.Broker
|
||||
mediaAnnotationController := NewMediaAnnotationController(dataStore, broker, eventsBroker)
|
||||
return mediaAnnotationController
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user