aboutsummaryrefslogtreecommitdiffstats
path: root/src/db/plugins/simple/Directory.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-06-16Directory: eliminate attribute "have_stat"Max Kellermann1-1/+2
Check for 0 in "device" and "inode" instead.
2014-06-16db/simple: use class boost::intrusive::listMax Kellermann1-56/+34
Remove the C list_head library and use type-safe C++ instead.
2014-02-27db/simple: mount pointsMax Kellermann1-1/+27
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.
2014-02-26db/simple/Directory: eliminate method LookupSong()Max Kellermann1-18/+0
Move to SimpleDatabase::GetSong() to give that method more control.
2014-02-26db/simple/Directory: LookupDirectory() return remaining URIMax Kellermann1-27/+28
Code can now be reused in LookupSong().
2014-02-26db/simple/Directory: make variables more localMax Kellermann1-4/+2
2014-02-26db/simple: create dedicated directoryMax Kellermann1-6/+5
2014-02-24SongSort, ...: use libicu instead of GLib's g_utf8_*()Max Kellermann1-3/+3
2014-02-23Directory: use PathTraitsUTF8::Build() instead of g_strconcat()Max Kellermann1-13/+4
2014-02-23Directory: pass std::string&& to constructorMax Kellermann1-2/+2
2014-01-29db/Directory: move isRootDirectory() to Uri.hxxMax Kellermann1-0/+1
Decouple command/OtherCommands.cxx from the "simple" database plugin.
2014-01-24Database*: move to db/Max Kellermann1-1/+1
2014-01-22LightDirectory: new struct replacing Directory in the DB APIMax Kellermann1-2/+9
2014-01-19Directory: use Song::Export()Max Kellermann1-15/+1
2014-01-19LightSong: new class to be used by DatabasePlugin callbacksMax Kellermann1-3/+20
Detach the Song class completely from the public API, only to be used by SimpleDatabase and the update thread.
2014-01-15Directory: initialize "mtime" and "have_stat"Max Kellermann1-1/+3
2014-01-13copyright year 2014Max Kellermann1-1/+1
2014-01-09Directory: remove method Free()Max Kellermann1-2/+2
2014-01-09Directory: convert to fixed-size structMax Kellermann1-37/+6
Using a variable-size struct with embedded string is not worth the trouble here. There are not so many Directory objects.
2014-01-09DetachedSong: fork of struct SongMax Kellermann1-8/+0
From now on, struct Song will be used by the database only, and DetachedSong will be used by everybody else. DetachedSong is easier to use, but Song has lower overhead.
2014-01-07util/Alloc: new library replacing GLib's g_malloc()Max Kellermann1-5/+5
2014-01-07Directory: make some code generic, move to VarSize.hxxMax Kellermann1-10/+5
2014-01-07Directory: use g_malloc() instead of g_malloc0()Max Kellermann1-3/+4
Explicit attribute initialization.
2013-12-05fs/Traits: split PathTraits type into PathTraitsFS and PathTraitsUTF8Denis Krjuchkov1-1/+1
2013-10-30*: update copyright year to 2013Max Kellermann1-1/+1
2013-10-21GetBaseUTF8Max Kellermann1-7/+2
2013-10-19*: use references instead of pointersMax Kellermann1-8/+8
2013-10-19*: use nullptr instead of NULLMax Kellermann1-21/+21
2013-09-04util/Error: new error passing libraryMax Kellermann1-6/+7
Replaces GLib's GError.
2013-08-04*: use gcc.h macros instead of GLibMax Kellermann1-1/+1
2013-07-28song: convert header to C++Max Kellermann1-10/+10
2013-04-17song_sort: convert to C++Max Kellermann1-1/+1
2013-01-17path: convert to C++Max Kellermann1-1/+0
2013-01-03PlaylistVector: use std::listMax Kellermann1-7/+2
2013-01-03Directory: initialise in default constructorMax Kellermann1-0/+9
2013-01-03Directory: add constructor and destructorMax Kellermann1-18/+27
2013-01-03Directory: rename struct directory to DirectoryMax Kellermann1-34/+34
2013-01-02Directory: turn functions to methodsMax Kellermann1-67/+60
2013-01-02Directory: make the header C++ onlyMax Kellermann1-1/+1
2013-01-02PlaylistInfo: rename class, use std::stringMax Kellermann1-1/+1
2013-01-02db_lock: convert to C++Max Kellermann1-1/+1
2013-01-02playlist_vector: convert to C++Max Kellermann1-1/+1
2012-08-29SongFilter: convert to a C++ classMax Kellermann1-4/+3
2012-08-29locate: rename to SongFilter.cxxMax Kellermann1-1/+1
2012-08-15db_visitor: delete obsolete headerMax Kellermann1-1/+0
2012-08-09Directory: move code to directory_allocate()Max Kellermann1-8/+18
2012-08-08DatabaseSelection: add "match" attributeMax Kellermann1-4/+8
Let the database plugin do the match.
2012-08-07Database{Plugin,Visitor}: pass referencesMax Kellermann1-3/+3
2012-08-01db_plugin: convert to C++Max Kellermann1-18/+22
2012-06-13directory: require db lock for _{add,remove}_song()Max Kellermann1-0/+2