Files
navidrome/conf/inject_definitions.go
T
Deluan e10e730af1 Refactored logic from getMusicDirectory.view to the new engine layer.
This reveled a nasty bug in the DI code. Tests are broken
2016-03-08 14:19:27 -05:00

22 lines
899 B
Go

package conf
import (
"github.com/deluan/gosonic/domain"
"github.com/deluan/gosonic/engine"
"github.com/deluan/gosonic/persistence"
"github.com/deluan/gosonic/utils"
)
func init() {
// Persistence
ir := utils.DefineSingleton(new(domain.ArtistIndexRepository), persistence.NewArtistIndexRepository)
pr := utils.DefineSingleton(new(domain.PropertyRepository), persistence.NewPropertyRepository)
fr := utils.DefineSingleton(new(domain.MediaFolderRepository), persistence.NewMediaFolderRepository)
ar := utils.DefineSingleton(new(domain.ArtistRepository), persistence.NewArtistRepository)
alr := utils.DefineSingleton(new(domain.AlbumRepository), persistence.NewAlbumRepository)
mr := utils.DefineSingleton(new(domain.MediaFileRepository), persistence.NewMediaFileRepository)
// Engine (Use cases)
utils.DefineSingleton(new(engine.Browser), engine.NewBrowser, pr, fr, ir, ar, alr, mr)
}