Commit graph

353 commits

Author SHA1 Message Date
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