Deluan
b07642a8d1
Add a TODO
2020-01-13 10:44:16 -05:00
Deluan
fddd0dc353
Fix some performance/volume issues
2020-01-13 10:44:16 -05:00
Deluan
973f8869eb
SQL/Orm PlaylistRepository complete
2020-01-13 10:44:16 -05:00
Deluan
5d519dcecf
SQL/Orm PropertyRepository complete
2020-01-13 10:44:16 -05:00
Deluan
3d706e3e98
SQL/Orm ArtistIndexRepository complete
2020-01-13 10:44:16 -05:00
Deluan
78fd567285
SQL/Orm CheckSumRepository complete
2020-01-13 10:44:16 -05:00
Deluan
b9815fc653
SQL/Orm AlbumRepository complete
2020-01-13 10:44:16 -05:00
Deluan
56273dd4d9
SQL/Orm MediaFileRepository complete
2020-01-13 10:44:16 -05:00
Deluan
d70af2c39d
SQL/Orm ArtistRepository complete
2020-01-13 10:44:16 -05:00
Deluan
dd5945ad86
Make sure mock implementations implements their full interface
2020-01-11 21:52:39 -05:00
Deluan
cb107f77f8
Make QueryOptions optional in PlaylistRepository.GetStarred
2020-01-11 21:38:02 -05:00
Deluan
4643628e28
Make QueryOptions optional in MediaFileRepository.GetStarred
2020-01-11 21:33:41 -05:00
Deluan
b85898df93
Make QueryOptions optional in AlbumRepository.GetStarred
2020-01-11 21:30:24 -05:00
Deluan
d4ed6a0569
Make QueryOptions optional in AlbumRepository.GetAll
2020-01-11 21:25:37 -05:00
Deluan
6c05930444
Change tests' db path to a temp folder
2020-01-11 16:48:45 -05:00
Deluan
4b1c909a4d
Make persistence provider pluggable at runtime
2020-01-11 15:27:32 -05:00
Deluan
93ab4132fe
Move mapping functions to db_ledis, where it is used
2020-01-11 15:27:32 -05:00
Deluan
ce1c5e1129
Remove compulsory reindex at startup
2020-01-11 15:27:32 -05:00
Deluan
0c4cbe11be
Fix flake test (was dependent on map keys order)
2020-01-11 15:27:32 -05:00
Deluan
10221b5471
Force dbPath to be relative to main executable
2020-01-11 15:27:32 -05:00
Deluan
c9742181ff
Save Storm DB in the DbPath configured
2020-01-11 15:27:32 -05:00
Deluan
cead8906d6
Implements NowPlayingRepository as an in-memory only struct
2020-01-11 15:27:32 -05:00
Deluan
c9be5f7201
Storm ChecksumsRepository complete.
2020-01-11 15:27:32 -05:00
Deluan
4f151a7409
Storm PlaylistRepository complete.
2020-01-11 15:27:32 -05:00
Deluan
70d7793147
Moved MediaFolders Repository to persistence agnostic package
2020-01-11 15:27:32 -05:00
Deluan
11f4505925
Renamed persistence packages
2020-01-11 15:27:32 -05:00
Deluan
a1d837cb9b
Storm IndexRepository complete.
2020-01-11 15:27:32 -05:00
Deluan
9ccd9545e8
Refactored purgeInactive, better test suite setup
2020-01-11 15:27:32 -05:00
Deluan
ef79f6342f
Removed old runtime tagging code. Not used anymore
2020-01-11 15:27:32 -05:00
Deluan
dbeba1dea9
Storm MediaFileRepository complete.
2020-01-11 15:27:32 -05:00
Deluan
c608e917db
Storm AlbumRepository complete.
2020-01-11 15:27:32 -05:00
Deluan
0ca691b37f
Storm ArtistRepository and PropertyRepository complete.
2020-01-11 15:27:32 -05:00
Deluan
aebb960831
New storm artist repository, WIP
2020-01-11 15:27:32 -05:00
Deluan
40904b220e
Renamed Id to ID, following GoLang convention
2020-01-11 15:27:32 -05:00
Deluan
018352463f
Moved ledis implementation to a new package
2020-01-11 15:27:32 -05:00
Deluan
24cbf766a3
Removed dependency on engine
from persistence
2020-01-09 22:44:45 -05:00
Deluan
84d69a4f41
Replaced Beego logging
2020-01-09 22:44:45 -05:00
Deluan
79701caca3
Removed Beego routing/controllers, converted to Chi.
...
Also introduced Wire for dependency injection
2020-01-09 22:44:45 -05:00
Deluan
29519fe22f
Fixes typo
2017-04-01 09:55:21 -04:00
Deluan
c417a00e62
Renamed project to CloudSonic
2017-04-01 09:47:14 -04:00
Deluan
60bc1d7a11
Polishing
2016-04-21 10:44:27 -04:00
Deluan
c2b1f9782b
New configuration system
2016-03-30 00:05:57 -04:00
Deluan
768764bea7
getRandomSongs.view (partially) implemented
2016-03-29 00:01:27 -04:00
Deluan
1a705d4319
Fixing NowPlaying when we have more than one song in the queue
2016-03-28 19:11:49 -04:00
Deluan
83e0a7b24c
Fixing some lint warnings
2016-03-26 22:43:13 -04:00
Deluan
0e20910061
Cleaning old data from artists indexes
2016-03-26 22:29:26 -04:00
Deluan
f29ac99b45
Trying to fix build
2016-03-25 02:14:38 -04:00
Deluan
1cf8a0db44
Refactored NowPlaying
...
Also added a test case for skipping range
2016-03-24 17:14:13 -04:00
Deluan
d59394c653
GetStarred now returns starred songs
2016-03-23 19:02:58 -04:00
Deluan
b25cfd96eb
Polishing
2016-03-23 16:30:38 -04:00
Deluan
08192e6d23
Handling a racing condition between Register and NowPlaying, when the queue is empty
2016-03-23 13:51:02 -04:00
Deluan
c87b133071
Polishing
2016-03-23 12:37:03 -04:00
Deluan
d57f51c7ac
Removed unused code
2016-03-23 12:00:19 -04:00
Deluan
0e1618a6ac
Using PersistentIDs instead of "Database" IDs
2016-03-23 11:43:20 -04:00
Deluan
638f328330
fixed a NPD (Nil Pointer Dereference)
2016-03-23 11:26:27 -04:00
Deluan
c580a4199e
New NowPlaying and Skip detection implementation
2016-03-23 10:06:26 -04:00
Deluan
db992a9941
Small changes regarding StarredAt.
...
Making StarredAt more "precise", setting it to the time the change was detected.
getStarred.view now returns albums ordered by StarredAt.
loadRange method now take QueryOptions.Desc into account
2016-03-22 19:00:18 -04:00
Deluan
21b39d922c
More slices instead of pointers of slice
2016-03-20 13:33:59 -04:00
Deluan
3f0030738a
Indexes using slices instead of pointers of slice
2016-03-20 13:08:24 -04:00
Deluan
27b7b7ce08
More slices instead of pointers of slice
2016-03-19 23:03:50 -04:00
Deluan
04513d38f0
Fixed bug on reflect and slice
2016-03-18 21:07:57 -04:00
Deluan
508bf7152f
Removing purged ids from the search index
2016-03-18 19:50:21 -04:00
Deluan
3790aa45e4
Refactored PurgeInactive as a "generic" function.
...
Also delete indexes when removing records
2016-03-18 19:32:49 -04:00
Deluan
25d902c9d7
When ErroNotFound, return an new entity to avoid conversion from nil errors
2016-03-18 17:24:26 -04:00
Deluan
c90a50827a
Get() methods from all repositories now return a ErrNotFound when the id is nonexistent
2016-03-18 11:33:50 -04:00
Deluan
ee3e70c712
Register skipped songs!
2016-03-17 18:58:09 -04:00
Deluan
c4b660fce3
getNowPlaying.view working
2016-03-17 10:37:19 -04:00
Deluan
68c456e188
Halfway of getNowPlaying implementation
2016-03-17 10:08:47 -04:00
Deluan
cc89cb5bd1
Now Playing backend implemented
2016-03-16 22:30:34 -04:00
Deluan
9bfb61d994
Implemented nowplaying repo
2016-03-16 20:52:32 -04:00
Deluan
4748ce142f
Introduced NowPlayingRepository. Don't do anything for now
2016-03-16 20:27:48 -04:00
Deluan
b660a70688
Introduced engine.Scrobbler
...
Also refactored mocks into their original packages, to avoid cyclic references. Is there a better way to have mocks in GoLang tests?
2016-03-16 17:59:28 -04:00
Deluan
cad65f517c
Polishing
2016-03-15 13:17:51 -04:00
Deluan
12aedc0996
Using checksums to detect modified stats in the iTunes Library
2016-03-15 11:04:17 -04:00
Deluan
bb5d4c920d
Error when trying to index on an unsupported field type
2016-03-15 09:41:33 -04:00
Deluan
e36a4201db
implemented getStarred (just for albums, for now)
2016-03-14 11:35:48 -04:00
Deluan
14934dccf7
Supporting index annotations in domain structs
2016-03-14 10:32:22 -04:00
Deluan
df957814a0
Implemented artists indexing, with Gomate
2016-03-10 23:19:13 -05:00
Deluan
7161325716
Initial wiring for getPlaylists endpoint
2016-03-09 10:09:15 -05:00
Deluan
9bea04f330
Implemented getAlbumList with type=random
2016-03-08 21:54:32 -05:00
Deluan
60d4cb5d9f
Converted all collections from repositories to *collections
2016-03-08 20:33:09 -05:00
Deluan
8607e25c90
Moved properties to engine layer
2016-03-08 18:40:16 -05:00
Deluan
46e7627fd3
Optimized import, only updating changed data and purging old data
2016-03-08 14:19:07 -05:00
Deluan
d2701ea67c
Using sorted sets
2016-03-05 19:40:36 -05:00
Deluan
766fdbc60c
Big Importer/Scanner refactor
2016-03-04 16:42:09 -05:00
Deluan
7225807bad
Initial work on downsampling
...
The http connection is being closed before sending all data. May have something to do with the Range header
2016-03-04 13:33:09 -05:00
Deluan
9a246b5432
First version of getAlbumList.view working.
...
- It still misses almost all type options
- Introduced "parent" in Child subresponse, as it was breaking DSub
2016-03-04 09:09:16 -05:00
Deluan
87e012f3bf
Refactored paging/sorting options
2016-03-03 22:52:03 -05:00
Deluan
5ca9680059
Default sorts should be in the domain
2016-03-03 21:42:12 -05:00
Deluan
fc6d49d34c
Introduced types for the collections
2016-03-03 21:01:55 -05:00
Deluan
eae9f3168f
renamed base_repository to ledis_repository
2016-03-03 20:16:09 -05:00
Deluan
c9455e1955
getCoverArt.view working
2016-03-03 12:08:44 -05:00
Deluan
ad0a91fba5
Making sure the repositories implement their full interfaces
2016-03-03 01:28:48 -05:00
Deluan
012958cd08
go fmt
2016-03-03 00:46:23 -05:00
Deluan
ffd6304a23
Added DiscNumber field, used to sort tracks
2016-03-03 00:42:42 -05:00
Deluan
1f31de589a
Implementing sort by number on queries
2016-03-02 23:20:17 -05:00
Deluan
757e1992d7
Bare bones getMusicDirectory for albums!
2016-03-02 23:15:17 -05:00
Deluan
838d4bf38f
getMusicDirectory bare bones for artists working
2016-03-02 22:22:31 -05:00
Deluan
9577d9ae87
Started the implementation of getMusicDirectory. Probably will need to introduce a new 'service' layer...
2016-03-02 20:00:55 -05:00
Deluan
de94fe3ef2
Should not break on empty database
2016-03-02 17:46:16 -05:00
Deluan
4843ccb46c
go fmt
2016-03-02 13:18:39 -05:00
Deluan
300ed0d9a4
Introduced interfaces for all repositories, completely isolating the persistence layer from the repositories usage and specification
2016-03-02 09:43:00 -05:00
Deluan
272a499c7e
Refactoring to a cleaner architecture
2016-03-02 09:10:28 -05:00