Introduced types for the collections
This commit is contained in:
+3
-1
@@ -15,9 +15,11 @@ type Album struct {
|
|||||||
Genre string
|
Genre string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type Albums []Album
|
||||||
|
|
||||||
type AlbumRepository interface {
|
type AlbumRepository interface {
|
||||||
BaseRepository
|
BaseRepository
|
||||||
Put(m *Album) error
|
Put(m *Album) error
|
||||||
Get(id string) (*Album, error)
|
Get(id string) (*Album, error)
|
||||||
FindByArtist(artistId string) ([]Album, error)
|
FindByArtist(artistId string) (Albums, error)
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-1
@@ -10,9 +10,11 @@ type ArtistIndex struct {
|
|||||||
Artists []ArtistInfo
|
Artists []ArtistInfo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ArtistIndexes []ArtistIndex
|
||||||
|
|
||||||
type ArtistIndexRepository interface {
|
type ArtistIndexRepository interface {
|
||||||
BaseRepository
|
BaseRepository
|
||||||
Put(m *ArtistIndex) error
|
Put(m *ArtistIndex) error
|
||||||
Get(id string) (*ArtistIndex, error)
|
Get(id string) (*ArtistIndex, error)
|
||||||
GetAll() ([]ArtistIndex, error)
|
GetAll() (ArtistIndexes, error)
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-1
@@ -32,9 +32,11 @@ func (mf *MediaFile) ContentType() string {
|
|||||||
return mime.TypeByExtension("." + mf.Suffix)
|
return mime.TypeByExtension("." + mf.Suffix)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type MediaFiles []MediaFile
|
||||||
|
|
||||||
type MediaFileRepository interface {
|
type MediaFileRepository interface {
|
||||||
BaseRepository
|
BaseRepository
|
||||||
Put(m *MediaFile) error
|
Put(m *MediaFile) error
|
||||||
Get(id string) (*MediaFile, error)
|
Get(id string) (*MediaFile, error)
|
||||||
FindByAlbum(albumId string) ([]MediaFile, error)
|
FindByAlbum(albumId string) (MediaFiles, error)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ type MediaFolder struct {
|
|||||||
Path string
|
Path string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type MediaFolders []MediaFolder
|
||||||
|
|
||||||
type MediaFolderRepository interface {
|
type MediaFolderRepository interface {
|
||||||
GetAll() ([]MediaFolder, error)
|
GetAll() (MediaFolders, error)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,8 +27,8 @@ func (r *albumRepository) Get(id string) (*domain.Album, error) {
|
|||||||
return rec.(*domain.Album), err
|
return rec.(*domain.Album), err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *albumRepository) FindByArtist(artistId string) ([]domain.Album, error) {
|
func (r *albumRepository) FindByArtist(artistId string) (domain.Albums, error) {
|
||||||
var as = make([]domain.Album, 0)
|
var as = make(domain.Albums, 0)
|
||||||
err := r.loadChildren("artist", artistId, &as, "Year", false)
|
err := r.loadChildren("artist", artistId, &as, "Year", false)
|
||||||
return as, err
|
return as, err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,8 +31,8 @@ func (r *artistIndexRepository) Get(id string) (*domain.ArtistIndex, error) {
|
|||||||
return rec.(*domain.ArtistIndex), err
|
return rec.(*domain.ArtistIndex), err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *artistIndexRepository) GetAll() ([]domain.ArtistIndex, error) {
|
func (r *artistIndexRepository) GetAll() (domain.ArtistIndexes, error) {
|
||||||
var indices = make([]domain.ArtistIndex, 0)
|
var indices = make(domain.ArtistIndexes, 0)
|
||||||
err := r.loadAll(&indices, "", true)
|
err := r.loadAll(&indices, "", true)
|
||||||
return indices, err
|
return indices, err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,14 +24,14 @@ func (r *mediaFileRepository) Get(id string) (*domain.MediaFile, error) {
|
|||||||
return m.(*domain.MediaFile), err
|
return m.(*domain.MediaFile), err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *mediaFileRepository) FindByAlbum(albumId string) ([]domain.MediaFile, error) {
|
func (r *mediaFileRepository) FindByAlbum(albumId string) (domain.MediaFiles, error) {
|
||||||
var mfs = make([]domain.MediaFile, 0)
|
var mfs = make(domain.MediaFiles, 0)
|
||||||
err := r.loadChildren("album", albumId, &mfs, "", false)
|
err := r.loadChildren("album", albumId, &mfs, "", false)
|
||||||
sort.Sort(byTrackNumber(mfs))
|
sort.Sort(byTrackNumber(mfs))
|
||||||
return mfs, err
|
return mfs, err
|
||||||
}
|
}
|
||||||
|
|
||||||
type byTrackNumber []domain.MediaFile
|
type byTrackNumber domain.MediaFiles
|
||||||
|
|
||||||
func (a byTrackNumber) Len() int {
|
func (a byTrackNumber) Len() int {
|
||||||
return len(a)
|
return len(a)
|
||||||
|
|||||||
@@ -13,9 +13,9 @@ func NewMediaFolderRepository() domain.MediaFolderRepository {
|
|||||||
return &mediaFolderRepository{}
|
return &mediaFolderRepository{}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (*mediaFolderRepository) GetAll() ([]domain.MediaFolder, error) {
|
func (*mediaFolderRepository) GetAll() (domain.MediaFolders, error) {
|
||||||
mediaFolder := domain.MediaFolder{Id: "0", Name: "iTunes Library", Path: beego.AppConfig.String("musicFolder")}
|
mediaFolder := domain.MediaFolder{Id: "0", Name: "iTunes Library", Path: beego.AppConfig.String("musicFolder")}
|
||||||
result := make([]domain.MediaFolder, 1)
|
result := make(domain.MediaFolders, 1)
|
||||||
result[0] = mediaFolder
|
result[0] = mediaFolder
|
||||||
return result, nil
|
return result, nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,11 +48,11 @@ func (m *MockAlbum) Get(id string) (*domain.Album, error) {
|
|||||||
return m.data[id], nil
|
return m.data[id], nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *MockAlbum) FindByArtist(artistId string) ([]domain.Album, error) {
|
func (m *MockAlbum) FindByArtist(artistId string) (domain.Albums, error) {
|
||||||
if m.err {
|
if m.err {
|
||||||
return nil, errors.New("Error!")
|
return nil, errors.New("Error!")
|
||||||
}
|
}
|
||||||
var res = make([]domain.Album, len(m.data))
|
var res = make(domain.Albums, len(m.data))
|
||||||
i := 0
|
i := 0
|
||||||
for _, a := range m.data {
|
for _, a := range m.data {
|
||||||
if a.ArtistId == artistId {
|
if a.ArtistId == artistId {
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ func CreateMockArtistIndexRepo() *MockArtistIndex {
|
|||||||
|
|
||||||
type MockArtistIndex struct {
|
type MockArtistIndex struct {
|
||||||
domain.ArtistIndexRepository
|
domain.ArtistIndexRepository
|
||||||
data []domain.ArtistIndex
|
data domain.ArtistIndexes
|
||||||
err bool
|
err bool
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -22,14 +22,14 @@ func (m *MockArtistIndex) SetError(err bool) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (m *MockArtistIndex) SetData(j string, length int) {
|
func (m *MockArtistIndex) SetData(j string, length int) {
|
||||||
m.data = make([]domain.ArtistIndex, length)
|
m.data = make(domain.ArtistIndexes, length)
|
||||||
err := json.Unmarshal([]byte(j), &m.data)
|
err := json.Unmarshal([]byte(j), &m.data)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("ERROR: ", err)
|
fmt.Println("ERROR: ", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *MockArtistIndex) GetAll() ([]domain.ArtistIndex, error) {
|
func (m *MockArtistIndex) GetAll() (domain.ArtistIndexes, error) {
|
||||||
if m.err {
|
if m.err {
|
||||||
return nil, errors.New("Error!")
|
return nil, errors.New("Error!")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ func (m *MockMediaFile) SetError(err bool) {
|
|||||||
|
|
||||||
func (m *MockMediaFile) SetData(j string, size int) {
|
func (m *MockMediaFile) SetData(j string, size int) {
|
||||||
m.data = make(map[string]*domain.MediaFile)
|
m.data = make(map[string]*domain.MediaFile)
|
||||||
var l = make([]domain.MediaFile, size)
|
var l = make(domain.MediaFiles, size)
|
||||||
err := json.Unmarshal([]byte(j), &l)
|
err := json.Unmarshal([]byte(j), &l)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("ERROR: ", err)
|
fmt.Println("ERROR: ", err)
|
||||||
@@ -52,11 +52,11 @@ func (m *MockMediaFile) Get(id string) (*domain.MediaFile, error) {
|
|||||||
return mf, nil
|
return mf, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *MockMediaFile) FindByAlbum(artistId string) ([]domain.MediaFile, error) {
|
func (m *MockMediaFile) FindByAlbum(artistId string) (domain.MediaFiles, error) {
|
||||||
if m.err {
|
if m.err {
|
||||||
return nil, errors.New("Error!")
|
return nil, errors.New("Error!")
|
||||||
}
|
}
|
||||||
var res = make([]domain.MediaFile, len(m.data))
|
var res = make(domain.MediaFiles, len(m.data))
|
||||||
i := 0
|
i := 0
|
||||||
for _, a := range m.data {
|
for _, a := range m.data {
|
||||||
if a.AlbumId == artistId {
|
if a.AlbumId == artistId {
|
||||||
|
|||||||
Reference in New Issue
Block a user