Commit Graph

93 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
a4013ed365 Added ordering logic to media file selection criteria. 2016-03-05 21:32:45 -06:00
Jonathan Bernard
13b0fa5bc4 Refactored selectMatches to break out the error handling into a re-useable function. 2016-03-05 21:30:59 -06:00
Jonathan Bernard
7cad273a0b Finished implementing clear command. 2016-03-04 20:53:57 -06:00
Jonathan Bernard
f80ff182ad WIP continuing implementation of CLI. 2016-02-29 12:39:07 -06:00
Jonathan Bernard
a1230dddfd Add the ability to clear a playlist. 2016-02-29 12:37:23 -06:00
Jonathan Bernard
83ffa2aafa Added CLI interface document. 2016-02-22 22:15:52 -06:00