// Code generated by Wire. DO NOT EDIT. //go:generate wire //+build !wireinject package main import ( "github.com/cloudsonic/sonic-server/api" "github.com/cloudsonic/sonic-server/engine" "github.com/cloudsonic/sonic-server/itunesbridge" "github.com/cloudsonic/sonic-server/persistence" "github.com/cloudsonic/sonic-server/scanner_legacy" "github.com/cloudsonic/sonic-server/server" "github.com/google/wire" ) // Injectors from wire_injectors.go: func CreateApp(musicFolder string) *server.Server { checksumRepository := persistence.NewCheckSumRepository() itunesScanner := scanner_legacy.NewItunesScanner(checksumRepository) mediaFileRepository := persistence.NewMediaFileRepository() albumRepository := persistence.NewAlbumRepository() artistRepository := persistence.NewArtistRepository() artistIndexRepository := persistence.NewArtistIndexRepository() playlistRepository := persistence.NewPlaylistRepository() propertyRepository := persistence.NewPropertyRepository() importer := scanner_legacy.NewImporter(musicFolder, itunesScanner, mediaFileRepository, albumRepository, artistRepository, artistIndexRepository, playlistRepository, propertyRepository) serverServer := server.New(importer) return serverServer } func CreateSubsonicAPIRouter() *api.Router { propertyRepository := persistence.NewPropertyRepository() mediaFolderRepository := persistence.NewMediaFolderRepository() artistIndexRepository := persistence.NewArtistIndexRepository() artistRepository := persistence.NewArtistRepository() albumRepository := persistence.NewAlbumRepository() mediaFileRepository := persistence.NewMediaFileRepository() genreRepository := persistence.NewGenreRepository() browser := engine.NewBrowser(propertyRepository, mediaFolderRepository, artistIndexRepository, artistRepository, albumRepository, mediaFileRepository, genreRepository) cover := engine.NewCover(mediaFileRepository, albumRepository) nowPlayingRepository := persistence.NewNowPlayingRepository() listGenerator := engine.NewListGenerator(albumRepository, mediaFileRepository, nowPlayingRepository) itunesControl := itunesbridge.NewItunesControl() playlistRepository := persistence.NewPlaylistRepository() playlists := engine.NewPlaylists(itunesControl, playlistRepository, mediaFileRepository) ratings := engine.NewRatings(itunesControl, mediaFileRepository, albumRepository, artistRepository) scrobbler := engine.NewScrobbler(itunesControl, mediaFileRepository, nowPlayingRepository) search := engine.NewSearch(artistRepository, albumRepository, mediaFileRepository) router := api.NewRouter(browser, cover, listGenerator, playlists, ratings, scrobbler, search) return router } // wire_injectors.go: var allProviders = wire.NewSet(itunesbridge.NewItunesControl, engine.Set, scanner_legacy.Set, api.NewRouter, persistence.Set)