Commit Graph
60 Commits
Author SHA1 Message Date
Jonathan Bernard d2ed22d229 Rescanning now finds moved files by their hash.
More precisely, the MediaLibrary matches up files based on their file hash. If
it finds a files that matches an already known entry it doesn't create a new
entry, only updates the file path to the found file in the existing entry.

This is useful if files get re-organized or if an existing database is loaded
at an entirely new library root that contains mostly the same files (relocating
the library to another computer for example). This method preserves information
added to the database that was not originally present in the ID3 tags in the
media files (custom tags, name corrections, etc).
2016-03-16 05:52:41 -05:00
Jonathan Bernard 07fa7559ac Misnamed variable. 2016-03-16 04:04:42 -05:00
Jonathan Bernard a18c157112 Added short names for next and prev ('n' and 'p' respectively). 2016-03-16 04:03:24 -05:00
Jonathan Bernard f96a069df0 Fix status resetting every time through the repl. 2016-03-16 04:03:24 -05:00
Jonathan Bernard fb098c6603 Initial groundwork for WDIWTLT servlet. 2016-03-16 04:03:24 -05:00
Jonathan Bernard 392c94f39c Renamed ORM to DbApi. 2016-03-16 04:03:23 -05:00
Jonathan Bernard 7f41f8c4e1 Fixed broken ORM.untagMediaFiles. 2016-03-16 02:30:07 -05:00
Jonathan Bernard c1432477aa Fixed incorrect reference to processTag function. 2016-03-16 02:23:17 -05:00
Jonathan Bernard dbc62bf5c1 Adjusted the logging level for the CLI implemtnation. 2016-03-16 02:16:19 -05:00
Jonathan Bernard 26922edd12 Add the ability to list untagged files in core. 2016-03-16 02:14:58 -05:00
Jonathan Bernard eb17561d77 Added the ability to untag media files in core. 2016-03-16 02:14:40 -05:00
Jonathan Bernard 328957d6f7 Fixed joins in getMediaFilesWhere to use outer joins when not filtering by the joined table. 2016-03-16 02:14:11 -05:00
Jonathan Bernard 4905e32e6f Added untagging ability to CLI. 2016-03-16 02:13:05 -05:00
Jonathan Bernard adbd3620fb Added online help. 2016-03-16 02:10:06 -05:00
Jonathan Bernard fe80bed570 Fix tag retrieval. 2016-03-14 05:44:29 -05:00
Jonathan Bernard e1f64b7b86 Slow down bookmark updates. Allow tags to be selectable/listable. 2016-03-14 05:44:11 -05:00
Jonathan Bernard 26f6378125 CLI: Refactored significantly to work with new selection logic and management. 2016-03-14 03:51:48 -05:00
Jonathan Bernard 9205732b0e MediaLibrary: Moved some helpers for working with model classes, names, and files into here. 2016-03-14 03:50:51 -05:00
Jonathan Bernard e148acd897 ORM: added generic getWhere which delegates appropriately based on model type. 2016-03-14 03:50:11 -05:00
Jonathan Bernard 0f21c48e66 MediaFile: add track number to toString (if available). 2016-03-14 03:49:33 -05:00
Jonathan Bernard ad693e608e Model base class: implement Comparable<Model> 2016-03-14 03:49:11 -05:00
Jonathan Bernard ecf83e8589 Revamping interface definition. Not happy with the output of the last attempt. 2016-03-14 03:47:28 -05:00
Jonathan Bernard cf8aad8775 MediaLibrary: added cleanup behaviour, support for disc numbers when importing media. 2016-03-12 21:17:45 -06:00
Jonathan Bernard 400d3d1774 CLI: Added remove and jump commands. Allow multiple commands separated by ';'. Fixed empty selection behavior. 2016-03-12 21:17:45 -06:00
Jonathan Bernard 255f9f9eed CLI: Changed header output, lists now highlight they currently playing items. 2016-03-12 21:17:45 -06:00
Jonathan Bernard 729c27bd72 CLI: Added VLCJ bindings to play through VLC. 2016-03-12 21:17:45 -06:00
Jonathan Bernard 9689547c0d ORM: Fixed getBookmarksWhere, added removeFromPaylist. 2016-03-12 20:57:58 -06:00
Jonathan Bernard 49a250b63e ORM: implemented methods to remove empty albums, artists, and playlists. 2016-03-12 20:56:36 -06:00
Jonathan Bernard 33e470c871 Changes to the data model.
* Added bookmarks.{last_used,play_time_ms}.
* Removed playlists.mod_count
* Added tags.description.
2016-03-12 20:52:17 -06:00
Jonathan Bernard 7101535412 ScrollText now respects ANSI escape codes. 2016-03-12 20:49:20 -06:00
Jonathan Bernard 6d08caab80 Added vlcj dependencies for CLI. 2016-03-10 10:53:22 -06:00
Jonathan Bernard 3401060a70 CLI implementations for add, enqueue, and tag commands. 2016-03-10 10:53:22 -06:00
Jonathan Bernard b0532f6733 Refactored CLI selection logic into a helper class. 2016-03-10 10:53:22 -06:00
Jonathan Bernard 1e03063400 MediaLibrary scan now reports file counts for its scan. 2016-03-10 10:53:22 -06:00
Jonathan Bernard ca682625dc Updated tagging command interface in CLI documentation. 2016-03-10 10:53:22 -06:00
Jonathan Bernard b689a42cb2 ORM Added correct playlist addition logic, media file tagging. 2016-03-10 10:53:22 -06:00
Jonathan Bernard 861717589c Added disc number. Fixed ordering, createdAt in Playlist file. 2016-03-10 10:53:16 -06:00
Jonathan Bernard 107e48a1d0 ORM changed double-quotes to single-quotes in strings with no interpolation. 2016-03-10 10:40:04 -06:00
Jonathan Bernard 976eb97b07 Refactored selectMatches to selectOneMatch. 2016-03-09 11:13:11 -06:00
Jonathan Bernard 32ad70c405 Minor change in quotation of SQL strigns. 2016-03-08 10:40:48 -06:00
Jonathan Bernard 710083131a Add tags filter to ORM.getMediaFilesWhere 2016-03-08 10:40:03 -06:00
Jonathan Bernard 99c883dbe5 Added the ability to specify a sorting when using the ORM.getAll function. 2016-03-08 09:46:30 -06:00
Jonathan Bernard 8edf542726 Added create_at fields on playlists and bookmarks. 2016-03-08 09:45:51 -06:00
Jonathan Bernard 47590a8c8f Added lastPlayed field on MediaFile. 2016-03-05 21:44:25 -06:00
Jonathan Bernard 151ce9e462 Implemented list bookmarks and playlists (cli only, needs DAO). 2016-02-14 18:03:44 -06:00
Jonathan Bernard 688bea9103 WIP CLI Got the list command working for albums, artists, and media files. 2016-02-13 23:29:46 -06:00
Jonathan Bernard 6af528e46b Fixed library scanning to allow multiple artists/albums per file. 2016-02-13 23:29:05 -06:00
Jonathan Bernard 321b201cab Added generic query methods for Albums, Artists, and Media Files. 2016-02-13 23:28:30 -06:00
Jonathan Bernard 67ea1535a1 Added missing dependency on javax.persistence API. 2016-02-13 23:27:51 -06:00
Jonathan Bernard 8090b5b914 Added copied_from_id on playlists. Fixed timestamp values in models. 2016-02-13 23:27:30 -06:00
Jonathan Bernard 20e4733f5a WIP missed bit for CommandLineInterface. 2016-02-12 17:22:32 -06:00
Jonathan Bernard ba57e39c45 Added worklog. 2016-02-12 17:21:21 -06:00
Jonathan Bernard 70aa706eac WIP Moving CLI to command-like input. 2016-02-12 17:21:03 -06:00
Jonathan Bernard 1354a92204 ORM returns models from save, create, and update. Also additional lookup functions to ORM. 2016-02-12 17:20:32 -06:00
Jonathan Bernard 105a61c11f Reworking media scanning to handle multiple artists/albums. Untested. 2016-02-12 17:19:32 -06:00
Jonathan Bernard b4ce76063b Added a base Model class which implements equals. 2016-02-12 17:18:37 -06:00
Jonathan Bernard a795397b3b Re-ordered argument lists for functions taking a model class. 2016-02-12 14:18:43 -06:00
Jonathan Bernard 069972bfd5 Changed to use standard JPA annotations. 2016-02-12 14:17:48 -06:00
Jonathan Bernard f51c57c7e2 Minor bugfix. 2016-02-11 11:28:29 -06:00
Jonathan Bernard ad1656aa32 Initial commit. 2015-12-03 14:28:29 -06:00