Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | storage: add abstract interface | Max Kellermann | 2014-02-05 | 6 | -25/+25 |
| | | | | Prepare for the plugin interface. | ||||
* | db/UpdateWalk: move LocalStorage to Instance | Max Kellermann | 2014-02-05 | 6 | -7/+13 |
| | | | | Keep only a reference. | ||||
* | db/update/Remove: initialize attribute "removed_song" | Max Kellermann | 2014-02-05 | 1 | -1/+2 |
| | | | | Fixes bogus assertion failure. | ||||
* | LocalStorage: new API abstracting filesystem walk | Max Kellermann | 2014-02-05 | 7 | -174/+211 |
| | | | | | Prepare to make this a new plugin API, for example to use a SMB share for the music_directory. | ||||
* | db/UpdateIO: add "pure" attributes | Max Kellermann | 2014-02-05 | 1 | -0/+4 |
| | |||||
* | db/UpdateGlue: relax assertion | Max Kellermann | 2014-02-05 | 1 | -2/+2 |
| | | | | Fixes assertion failure when update gets launched during MPD startup. | ||||
* | db/DatabaseListener: add method OnDatabaseSongRemoved() | Max Kellermann | 2014-02-04 | 7 | -28/+21 |
| | | | | Decouples db/update/Remove.cpp from global variables. | ||||
* | db/proxy: include cleanup | Max Kellermann | 2014-02-04 | 1 | -1/+0 |
| | |||||
* | db/update/Service: use DatabaseListener instead of Instance | Max Kellermann | 2014-02-04 | 2 | -5/+11 |
| | | | | Don't use the global variable "instance". | ||||
* | db/update/Service: use EventLoop::IsInside() | Max Kellermann | 2014-02-04 | 1 | -2/+6 |
| | | | | Don't use the global variable "main_thread". | ||||
* | Instance: add Database attribute | Max Kellermann | 2014-02-04 | 6 | -120/+16 |
| | | | | Move from db/DatabaseGlue.cxx, eliminating global variable. | ||||
* | db/update/Service: initialize "progress" and "update_task_id" | Max Kellermann | 2014-02-04 | 1 | -1/+3 |
| | | | | | Database update was randomly broken due to these uninitialized variables. | ||||
* | db/update/Service: add SimpleDatabase reference | Max Kellermann | 2014-02-04 | 5 | -40/+22 |
| | | | | Don't use the global variables from the DatabaseSimple library. | ||||
* | db/update/Walk: add Directory reference parameter | Max Kellermann | 2014-02-04 | 3 | -14/+14 |
| | | | | Remove dependency on the DatabaseSimple library. | ||||
* | db/Simple: remove unused function db_get_directory() | Max Kellermann | 2014-02-04 | 2 | -21/+0 |
| | |||||
* | db/DatabasePlaylist: pass Database reference around | Max Kellermann | 2014-02-04 | 4 | -18/+12 |
| | | | | Reduce global variable usage, move to frontend code. | ||||
* | db/LightSong: make "real_uri" a pointer | Max Kellermann | 2014-02-04 | 2 | -2/+3 |
| | | | | | Reduce overhead. LightSong can always point to the "real" allocated string. | ||||
* | db/update/Archive: delete archive from database on error | Max Kellermann | 2014-01-31 | 1 | -0/+2 |
| | |||||
* | db/update/Editor: add locking method variants | Max Kellermann | 2014-01-31 | 5 | -27/+36 |
| | |||||
* | db/update: convert runtime check to assertion | Max Kellermann | 2014-01-31 | 1 | -4/+1 |
| | |||||
* | update/Walk: declare std::string at assignment | Max Kellermann | 2014-01-30 | 1 | -4/+2 |
| | | | | Reduce overhead. | ||||
* | db/update: convert to OO API | Max Kellermann | 2014-01-30 | 23 | -494/+468 |
| | | | | | Move global variables into the new classes. That may allow multiple update threads for multiple databases one day. | ||||
* | ExcludeList: move to db/update/ | Max Kellermann | 2014-01-30 | 2 | -0/+163 |
| | |||||
* | InotifyUpdate: pass EventLoop to mpd_inotify_init() | Max Kellermann | 2014-01-29 | 2 | -6/+8 |
| | |||||
* | db/Directory: move isRootDirectory() to Uri.hxx | Max Kellermann | 2014-01-29 | 4 | -6/+31 |
| | | | | Decouple command/OtherCommands.cxx from the "simple" database plugin. | ||||
* | Playlist{Info,Vector}: move to db/ | Max Kellermann | 2014-01-27 | 6 | -3/+188 |
| | |||||
* | db/upnp: remove sleep(2) call | Max Kellermann | 2014-01-26 | 1 | -3/+0 |
| | | | | | This call was unnecessary. It is a bad idea anyway to block the MPD process for some arbitrary amount of time. | ||||
* | upnp: initialize the client handle only once | Max Kellermann | 2014-01-26 | 1 | -16/+10 |
| | | | | | | Eliminate class LibUPnP and move the code to ClientInit.cxx. Its initialization function can be called multiple times, but UpnpRegisterClient() is called at most once. | ||||
* | upnp/discovery: use a plain UpnpClient_Handle instead of class LibUPnP | Max Kellermann | 2014-01-26 | 1 | -1/+1 |
| | |||||
* | db/upnp: move generic code to lib/upnp/ | Max Kellermann | 2014-01-26 | 18 | -1647/+10 |
| | |||||
* | db/upnp: rename variables | Max Kellermann | 2014-01-26 | 1 | -21/+21 |
| | |||||
* | DespotifyUtils, Expat: move to lib/ | Max Kellermann | 2014-01-24 | 2 | -2/+2 |
| | |||||
* | Database*: move to db/ | Max Kellermann | 2014-01-24 | 96 | -22/+5776 |
| | |||||
* | Config*: move to config/ | Max Kellermann | 2014-01-24 | 3 | -3/+3 |
| | |||||
* | db/upnp/Discovery: use std::list instead of std::map | Max Kellermann | 2014-01-23 | 2 | -16/+33 |
| | | | | | There will only be very few items, and that does not justify the bloat of std::map. | ||||
* | db/upnp/Discovery: move code to LockAdd(), LockRemove() | Max Kellermann | 2014-01-23 | 2 | -9/+21 |
| | |||||
* | db/upnp/Discovery: un-inline the destructor | Max Kellermann | 2014-01-23 | 2 | -0/+6 |
| | |||||
* | db/upnp: un-inline a few destructors | Max Kellermann | 2014-01-23 | 8 | -0/+49 |
| | | | | Reduce bloat. | ||||
* | db/upnp: strict vpath checks for the "root" directory | Max Kellermann | 2014-01-23 | 1 | -0/+20 |
| | |||||
* | db/upnp: move code to VisitObject() | Max Kellermann | 2014-01-23 | 1 | -22/+33 |
| | |||||
* | db/upnp: merge two PathTraitsUTF8::Build() calls | Max Kellermann | 2014-01-23 | 1 | -16/+4 |
| | |||||
* | db/upnp: move code to VisitItem() | Max Kellermann | 2014-01-23 | 1 | -61/+56 |
| | |||||
* | db/upnp: fix subdirectory paths in "listallinfo" | Max Kellermann | 2014-01-23 | 1 | -3/+3 |
| | | | | Add missing server name prefix. | ||||
* | base_uri | Max Kellermann | 2014-01-23 | 1 | -0/+4 |
| | |||||
* | db/upnp: pass char* to visitSong() | Max Kellermann | 2014-01-23 | 1 | -6/+6 |
| | | | | Don't use std::string, reduce bloat. | ||||
* | db/upnp: call VisitDirectory on servers, even in recursive mode | Max Kellermann | 2014-01-22 | 1 | -14/+10 |
| | |||||
* | db/upnp: make several methods "const" | Max Kellermann | 2014-01-22 | 3 | -22/+22 |
| | |||||
* | db/upnp: inline Configure() | Max Kellermann | 2014-01-22 | 1 | -1/+1 |
| | |||||
* | db/upnp: don't duplicate song data for VisitSong | Max Kellermann | 2014-01-22 | 1 | -2/+9 |
| | | | | Not necessary because we control the LightSong's life cycle. | ||||
* | db/upnp: emplace/move in csvToStrings() | Max Kellermann | 2014-01-22 | 1 | -2/+2 |
| |