Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | fs/StandardDirectory: add GetUserCacheDir() | Max Kellermann | 2014-03-01 | 1 | -15/+4 |
| | | | | | | Move code from CreateConfiguredDatabase() and add XDG support. This implements an automatic Linux fallback for the setting "db_file" if none was specified. | ||||
* | db/Configured: store database file in cache directory | Max Kellermann | 2014-03-01 | 1 | -1/+25 |
| | | | | | Add class Context which wraps the Android/Java Context class and add a JNI wrapper for method Context.getCacheDir(). | ||||
* | db/update/ExcludeList: make no-op if GLib is disabled | Max Kellermann | 2014-03-01 | 2 | -0/+22 |
| | | | | Quick hack to allow using the database without GLib (for Android). | ||||
* | command: add command "listfiles" | Max Kellermann | 2014-03-01 | 2 | -28/+44 |
| | | | | Lists files and directories. Supports storage plugins. | ||||
* | DatabasePrint: move code to PrintDirectoryURI() | Max Kellermann | 2014-02-28 | 1 | -2/+8 |
| | |||||
* | DatabasePrint: add API documentation | Max Kellermann | 2014-02-28 | 1 | -0/+3 |
| | |||||
* | db/simple: mount points | Max Kellermann | 2014-02-27 | 15 | -23/+548 |
| | | | | | | | | A SimpleDatabase instance can now "mount" other Database instances at certain locations. This is used to use a new SimpleDatabase instance for each storage mount (issued with the "mount" protocol command). Each such instance has its own database file, stored in the directory that is specified with the "cache_directory" option. | ||||
* | db/update/Queue: use std::list instead of std::queue | Max Kellermann | 2014-02-27 | 2 | -5/+4 |
| | | | | | | The problem with std::queue is that it doesn't give us enough control. The method Clear() is a kludge already, but soon, we'll need filtering. | ||||
* | db/simple: GetRoot() returns reference | Max Kellermann | 2014-02-27 | 2 | -3/+3 |
| | |||||
* | db/update/Service: allocate UpdateWalk dynamically | Max Kellermann | 2014-02-27 | 5 | -19/+28 |
| | |||||
* | Playlist: use the Error library to return errors | Max Kellermann | 2014-02-27 | 1 | -9/+3 |
| | |||||
* | db/update: cancel the update on shutdown | Max Kellermann | 2014-02-27 | 5 | -1/+55 |
| | |||||
* | db/UpdateGlue: rename to Service.cxx | Max Kellermann | 2014-02-27 | 2 | -161/+140 |
| | |||||
* | db/simple/Directory: eliminate method LookupSong() | Max Kellermann | 2014-02-26 | 3 | -30/+19 |
| | | | | Move to SimpleDatabase::GetSong() to give that method more control. | ||||
* | db/simple/Directory: LookupDirectory() return remaining URI | Max Kellermann | 2014-02-26 | 3 | -41/+62 |
| | | | | Code can now be reused in LookupSong(). | ||||
* | db/simple/Directory: make variables more local | Max Kellermann | 2014-02-26 | 1 | -4/+2 |
| | |||||
* | db/Directory: add DEVICE_* documentation | Max Kellermann | 2014-02-26 | 1 | -0/+10 |
| | |||||
* | db/simple: create dedicated directory | Max Kellermann | 2014-02-26 | 22 | -28/+27 |
| | |||||
* | db/Song: update API documentation for SimpleDatabasePlugin | Max Kellermann | 2014-02-25 | 1 | -6/+5 |
| | |||||
* | db/simple: remove unused method LookupDirectory() | Max Kellermann | 2014-02-25 | 2 | -14/+0 |
| | |||||
* | db/simple: make internal methods "private" | Max Kellermann | 2014-02-25 | 1 | -1/+1 |
| | |||||
* | db/simple: add comment | Max Kellermann | 2014-02-25 | 1 | -0/+1 |
| | |||||
* | db/simple: move Create() up | Max Kellermann | 2014-02-25 | 1 | -4/+4 |
| | |||||
* | DirectorySave: save the flags "DEVICE_INARCHIVE" and "DEVICE_CONTAINER" | Max Kellermann | 2014-02-25 | 1 | -0/+37 |
| | | | | | Helps avoid unnecessary archive scans during database update on a fresh MPD process. | ||||
* | DatabaseSave: increase DB_FORMAT version | Max Kellermann | 2014-02-25 | 1 | -1/+1 |
| | |||||
* | DatabaseSave: add constant OLDEST_DB_FORMAT | Max Kellermann | 2014-02-25 | 1 | -1/+6 |
| | |||||
* | DirectorySave: move code to ParseLine() | Max Kellermann | 2014-02-25 | 1 | -17/+23 |
| | |||||
* | DirectorySave: save the mtime only if it is known | Max Kellermann | 2014-02-24 | 1 | -2/+3 |
| | |||||
* | SongSort, ...: use libicu instead of GLib's g_utf8_*() | Max Kellermann | 2014-02-24 | 2 | -7/+6 |
| | |||||
* | DecoderPlugin: free the container_scan() return value with delete[] | Max Kellermann | 2014-02-24 | 1 | -3/+1 |
| | |||||
* | Directory: use PathTraitsUTF8::Build() instead of g_strconcat() | Max Kellermann | 2014-02-23 | 1 | -13/+4 |
| | |||||
* | Directory: pass std::string&& to constructor | Max Kellermann | 2014-02-23 | 2 | -4/+4 |
| | |||||
* | db/Directory: use "unsigned" for inode and device | Max Kellermann | 2014-02-21 | 1 | -6/+3 |
| | | | | | This is what we get from the storage plugin via FileInfo. Fixes a compiler warning on Mac OS X where dev_t appears to be signed. | ||||
* | db/upnp: move plugin source to upnp directory | Max Kellermann | 2014-02-19 | 3 | -3/+3 |
| | |||||
* | DatabasePlugin: add FLAG_REQUIRE_STORAGE | Max Kellermann | 2014-02-19 | 3 | -2/+12 |
| | | | | | Ignore the storage configuration if FLAG_REQUIRE_STORAGE is not set in the DatabasePlugin. | ||||
* | DatabasePlugin: add attribute "flags" | Max Kellermann | 2014-02-19 | 4 | -0/+5 |
| | |||||
* | db/Interface: add attribute "plugin" | Max Kellermann | 2014-02-19 | 11 | -13/+32 |
| | | | | The new method IsPlugin() replaces the "is_simple" flag. | ||||
* | DatabasePlugin: split header | Max Kellermann | 2014-02-19 | 15 | -121/+183 |
| | |||||
* | util/StringUtil: add function Strip() | Max Kellermann | 2014-02-17 | 1 | -2/+2 |
| | | | Replaces g_strstrip(). | ||||
* | Main: initialize Database before Storage | Max Kellermann | 2014-02-17 | 2 | -14/+2 |
| | |||||
* | db/Configured: disallow both "db_file" and "database" | Max Kellermann | 2014-02-17 | 1 | -3/+7 |
| | | | | This is misconfiguration, and MPD should abort. | ||||
* | Main: move code to db/Configured.cxx | Max Kellermann | 2014-02-17 | 2 | -0/+106 |
| | |||||
* | db/DatabaseSimple: remove obsolete header | Max Kellermann | 2014-02-17 | 1 | -47/+0 |
| | |||||
* | db/update/Walk: disable FindAncestorLoop() if device/inode==0 | Max Kellermann | 2014-02-09 | 1 | -0/+5 |
| | |||||
* | db/update/Walk: document FindAncestorLoop() | Max Kellermann | 2014-02-09 | 1 | -0/+6 |
| | |||||
* | db/update/Walk: rename find_inode_ancestor() to FindAncestorLoop() | Max Kellermann | 2014-02-09 | 1 | -4/+4 |
| | |||||
* | ArchivePlugin: pass Path to open() | Max Kellermann | 2014-02-08 | 1 | -1/+1 |
| | |||||
* | ArchivePlugin: rename struct archive_plugin to ArchivePlugin | Max Kellermann | 2014-02-08 | 2 | -5/+4 |
| | |||||
* | InotifyUpdate: use class Storage instead of Mapper.cxx | Max Kellermann | 2014-02-07 | 2 | -4/+7 |
| | |||||
* | InotifyUpdate: use the root name instead of mapper_get_music_directory_fs() | Max Kellermann | 2014-02-07 | 1 | -1/+1 |
| | | | | | The root WatchDirectory instance already contains the music directory, and we don't need to fetch it again. |