Rename ExternalInfo to ExternalMetadata

This commit is contained in:
Deluan 2021-02-09 11:41:47 -05:00
parent 5fdd8b32d7
commit 157faad028
7 changed files with 47 additions and 47 deletions

View File

@ -42,9 +42,9 @@ func CreateSubsonicAPIRouter() *subsonic.Router {
mediaStreamer := core.NewMediaStreamer(dataStore, transcoderTranscoder, transcodingCache)
archiver := core.NewArchiver(dataStore)
players := core.NewPlayers(dataStore)
externalInfo := core.NewExternalInfo2(dataStore)
externalMetadata := core.NewExternalMetadata(dataStore)
scanner := GetScanner()
router := subsonic.New(dataStore, artwork, mediaStreamer, archiver, players, externalInfo, scanner)
router := subsonic.New(dataStore, artwork, mediaStreamer, archiver, players, externalMetadata, scanner)
return router
}

View File

@ -18,13 +18,13 @@ import (
const unavailableArtistID = "-1"
type ExternalInfo interface {
type ExternalMetadata interface {
UpdateArtistInfo(ctx context.Context, id string, count int, includeNotPresent bool) (*model.Artist, error)
SimilarSongs(ctx context.Context, id string, count int) (model.MediaFiles, error)
TopSongs(ctx context.Context, artist string, count int) (model.MediaFiles, error)
}
type externalInfo struct {
type externalMetadata struct {
ds model.DataStore
}
@ -33,11 +33,11 @@ type auxArtist struct {
Name string
}
func NewExternalInfo2(ds model.DataStore) ExternalInfo {
return &externalInfo{ds: ds}
func NewExternalMetadata(ds model.DataStore) ExternalMetadata {
return &externalMetadata{ds: ds}
}
func (e *externalInfo) initAgents(ctx context.Context) []agents.Interface {
func (e *externalMetadata) initAgents(ctx context.Context) []agents.Interface {
order := strings.Split(conf.Server.Agents, ",")
order = append(order, agents.PlaceholderAgentName)
var res []agents.Interface
@ -54,7 +54,7 @@ func (e *externalInfo) initAgents(ctx context.Context) []agents.Interface {
return res
}
func (e *externalInfo) getArtist(ctx context.Context, id string) (*auxArtist, error) {
func (e *externalMetadata) getArtist(ctx context.Context, id string) (*auxArtist, error) {
var entity interface{}
entity, err := GetEntityByID(ctx, e.ds, id)
if err != nil {
@ -87,7 +87,7 @@ func clearName(name string) string {
return name
}
func (e *externalInfo) UpdateArtistInfo(ctx context.Context, id string, similarCount int, includeNotPresent bool) (*model.Artist, error) {
func (e *externalMetadata) UpdateArtistInfo(ctx context.Context, id string, similarCount int, includeNotPresent bool) (*model.Artist, error) {
allAgents := e.initAgents(ctx)
artist, err := e.getArtist(ctx, id)
if err != nil {
@ -141,7 +141,7 @@ func (e *externalInfo) UpdateArtistInfo(ctx context.Context, id string, similarC
return &artist.Artist, nil
}
func (e *externalInfo) SimilarSongs(ctx context.Context, id string, count int) (model.MediaFiles, error) {
func (e *externalMetadata) SimilarSongs(ctx context.Context, id string, count int) (model.MediaFiles, error) {
allAgents := e.initAgents(ctx)
artist, err := e.getArtist(ctx, id)
if err != nil {
@ -175,7 +175,7 @@ func (e *externalInfo) SimilarSongs(ctx context.Context, id string, count int) (
})
}
func (e *externalInfo) TopSongs(ctx context.Context, artistName string, count int) (model.MediaFiles, error) {
func (e *externalMetadata) TopSongs(ctx context.Context, artistName string, count int) (model.MediaFiles, error) {
allAgents := e.initAgents(ctx)
artist, err := e.findArtistByName(ctx, artistName)
if err != nil {
@ -199,7 +199,7 @@ func (e *externalInfo) TopSongs(ctx context.Context, artistName string, count in
return mfs, nil
}
func (e *externalInfo) findMatchingTrack(ctx context.Context, mbid string, artistID, title string) (*model.MediaFile, error) {
func (e *externalMetadata) findMatchingTrack(ctx context.Context, mbid string, artistID, title string) (*model.MediaFile, error) {
if mbid != "" {
mfs, err := e.ds.MediaFile(ctx).GetAll(model.QueryOptions{
Filters: squirrel.Eq{"mbz_track_id": mbid},
@ -233,7 +233,7 @@ func isDone(ctx context.Context) bool {
}
}
func (e *externalInfo) callGetMBID(ctx context.Context, allAgents []agents.Interface, artist *auxArtist) {
func (e *externalMetadata) callGetMBID(ctx context.Context, allAgents []agents.Interface, artist *auxArtist) {
start := time.Now()
for _, a := range allAgents {
if isDone(ctx) {
@ -252,7 +252,7 @@ func (e *externalInfo) callGetMBID(ctx context.Context, allAgents []agents.Inter
}
}
func (e *externalInfo) callGetTopSongs(ctx context.Context, allAgents []agents.Interface, artist *auxArtist,
func (e *externalMetadata) callGetTopSongs(ctx context.Context, allAgents []agents.Interface, artist *auxArtist,
count int) ([]agents.Song, error) {
start := time.Now()
for _, a := range allAgents {
@ -272,7 +272,7 @@ func (e *externalInfo) callGetTopSongs(ctx context.Context, allAgents []agents.I
return nil, nil
}
func (e *externalInfo) callGetURL(ctx context.Context, allAgents []agents.Interface, artist *auxArtist, wg *sync.WaitGroup) {
func (e *externalMetadata) callGetURL(ctx context.Context, allAgents []agents.Interface, artist *auxArtist, wg *sync.WaitGroup) {
wg.Add(1)
go func() {
defer wg.Done()
@ -295,7 +295,7 @@ func (e *externalInfo) callGetURL(ctx context.Context, allAgents []agents.Interf
}()
}
func (e *externalInfo) callGetBiography(ctx context.Context, allAgents []agents.Interface, artist *auxArtist, wg *sync.WaitGroup) {
func (e *externalMetadata) callGetBiography(ctx context.Context, allAgents []agents.Interface, artist *auxArtist, wg *sync.WaitGroup) {
wg.Add(1)
go func() {
defer wg.Done()
@ -321,7 +321,7 @@ func (e *externalInfo) callGetBiography(ctx context.Context, allAgents []agents.
}()
}
func (e *externalInfo) callGetImage(ctx context.Context, allAgents []agents.Interface, artist *auxArtist, wg *sync.WaitGroup) {
func (e *externalMetadata) callGetImage(ctx context.Context, allAgents []agents.Interface, artist *auxArtist, wg *sync.WaitGroup) {
wg.Add(1)
go func() {
defer wg.Done()
@ -354,7 +354,7 @@ func (e *externalInfo) callGetImage(ctx context.Context, allAgents []agents.Inte
}()
}
func (e *externalInfo) callGetSimilar(ctx context.Context, allAgents []agents.Interface, artist *auxArtist, limit int, wg *sync.WaitGroup) {
func (e *externalMetadata) callGetSimilar(ctx context.Context, allAgents []agents.Interface, artist *auxArtist, limit int, wg *sync.WaitGroup) {
wg.Add(1)
go func() {
defer wg.Done()
@ -382,7 +382,7 @@ func (e *externalInfo) callGetSimilar(ctx context.Context, allAgents []agents.In
}()
}
func (e *externalInfo) mapSimilarArtists(ctx context.Context, similar []agents.Artist, includeNotPresent bool) (model.Artists, error) {
func (e *externalMetadata) mapSimilarArtists(ctx context.Context, similar []agents.Artist, includeNotPresent bool) (model.Artists, error) {
var result model.Artists
var notPresent []string
@ -407,7 +407,7 @@ func (e *externalInfo) mapSimilarArtists(ctx context.Context, similar []agents.A
return result, nil
}
func (e *externalInfo) findArtistByName(ctx context.Context, artistName string) (*auxArtist, error) {
func (e *externalMetadata) findArtistByName(ctx context.Context, artistName string) (*auxArtist, error) {
artists, err := e.ds.Artist(ctx).GetAll(model.QueryOptions{
Filters: squirrel.Like{"name": artistName},
Max: 1,
@ -425,7 +425,7 @@ func (e *externalInfo) findArtistByName(ctx context.Context, artistName string)
return artist, nil
}
func (e *externalInfo) loadSimilar(ctx context.Context, artist *auxArtist, includeNotPresent bool) error {
func (e *externalMetadata) loadSimilar(ctx context.Context, artist *auxArtist, includeNotPresent bool) error {
var ids []string
for _, sa := range artist.SimilarArtists {
if sa.ID == unavailableArtistID {

View File

@ -12,7 +12,7 @@ var Set = wire.NewSet(
GetImageCache,
NewArchiver,
NewNowPlayingRepository,
NewExternalInfo2,
NewExternalMetadata,
NewCacheWarmer,
NewPlayers,
transcoder.New,

View File

@ -23,27 +23,27 @@ const Version = "1.16.1"
type handler = func(http.ResponseWriter, *http.Request) (*responses.Subsonic, error)
type Router struct {
DataStore model.DataStore
Artwork core.Artwork
Streamer core.MediaStreamer
Archiver core.Archiver
Players core.Players
ExternalInfo core.ExternalInfo
Scanner scanner.Scanner
DataStore model.DataStore
Artwork core.Artwork
Streamer core.MediaStreamer
Archiver core.Archiver
Players core.Players
ExternalMetadata core.ExternalMetadata
Scanner scanner.Scanner
mux http.Handler
}
func New(ds model.DataStore, artwork core.Artwork, streamer core.MediaStreamer, archiver core.Archiver, players core.Players,
externalInfo core.ExternalInfo, scanner scanner.Scanner) *Router {
externalMetadata core.ExternalMetadata, scanner scanner.Scanner) *Router {
r := &Router{
DataStore: ds,
Artwork: artwork,
Streamer: streamer,
Archiver: archiver,
Players: players,
ExternalInfo: externalInfo,
Scanner: scanner,
DataStore: ds,
Artwork: artwork,
Streamer: streamer,
Archiver: archiver,
Players: players,
ExternalMetadata: externalMetadata,
Scanner: scanner,
}
r.mux = r.routes()
return r

View File

@ -18,11 +18,11 @@ import (
type BrowsingController struct {
ds model.DataStore
ei core.ExternalInfo
em core.ExternalMetadata
}
func NewBrowsingController(ds model.DataStore, ei core.ExternalInfo) *BrowsingController {
return &BrowsingController{ds: ds, ei: ei}
func NewBrowsingController(ds model.DataStore, em core.ExternalMetadata) *BrowsingController {
return &BrowsingController{ds: ds, em: em}
}
func (c *BrowsingController) GetMusicFolders(w http.ResponseWriter, r *http.Request) (*responses.Subsonic, error) {
@ -236,7 +236,7 @@ func (c *BrowsingController) GetArtistInfo(w http.ResponseWriter, r *http.Reques
count := utils.ParamInt(r, "count", 20)
includeNotPresent := utils.ParamBool(r, "includeNotPresent", false)
artist, err := c.ei.UpdateArtistInfo(ctx, id, count, includeNotPresent)
artist, err := c.em.UpdateArtistInfo(ctx, id, count, includeNotPresent)
if err != nil {
return nil, err
}
@ -285,7 +285,7 @@ func (c *BrowsingController) GetSimilarSongs(w http.ResponseWriter, r *http.Requ
}
count := utils.ParamInt(r, "count", 50)
songs, err := c.ei.SimilarSongs(ctx, id, count)
songs, err := c.em.SimilarSongs(ctx, id, count)
if err != nil {
return nil, err
}
@ -318,7 +318,7 @@ func (c *BrowsingController) GetTopSongs(w http.ResponseWriter, r *http.Request)
}
count := utils.ParamInt(r, "count", 50)
songs, err := c.ei.TopSongs(ctx, artist, count)
songs, err := c.em.TopSongs(ctx, artist, count)
if err != nil {
return nil, err
}

View File

@ -19,8 +19,8 @@ func initSystemController(router *Router) *SystemController {
func initBrowsingController(router *Router) *BrowsingController {
dataStore := router.DataStore
externalInfo := router.ExternalInfo
browsingController := NewBrowsingController(dataStore, externalInfo)
externalMetadata := router.ExternalMetadata
browsingController := NewBrowsingController(dataStore, externalMetadata)
return browsingController
}
@ -95,5 +95,5 @@ var allProviders = wire.NewSet(
NewMediaRetrievalController,
NewStreamController,
NewBookmarksController,
NewLibraryScanningController, core.NewNowPlayingRepository, wire.FieldsOf(new(*Router), "DataStore", "Artwork", "Streamer", "Archiver", "ExternalInfo", "Scanner"),
NewLibraryScanningController, core.NewNowPlayingRepository, wire.FieldsOf(new(*Router), "DataStore", "Artwork", "Streamer", "Archiver", "ExternalMetadata", "Scanner"),
)

View File

@ -20,7 +20,7 @@ var allProviders = wire.NewSet(
NewBookmarksController,
NewLibraryScanningController,
core.NewNowPlayingRepository,
wire.FieldsOf(new(*Router), "DataStore", "Artwork", "Streamer", "Archiver", "ExternalInfo", "Scanner"),
wire.FieldsOf(new(*Router), "DataStore", "Artwork", "Streamer", "Archiver", "ExternalMetadata", "Scanner"),
)
func initSystemController(router *Router) *SystemController {