Skhclibs.CollectionSourceOperations on a shakuhachi collection.
type of a collection
open' config opens the collection with configuration provided by config.
realpath collection path returns
path if path is absolute (eg. starts with / on unix).path if path is relative.val database :
?mode:[ `NO_CREATE | `READONLY ] ->
?uri:bool ->
?memory:bool ->
?mutex:[ `FULL | `NO ] ->
?cache:[ `PRIVATE | `SHARED ] ->
?vfs:string ->
t ->
SkhcDb.Database.tdatabase collection returns a database handler associated with collection.
see Sqlite3.db_open for details of all optional arguments.
val with_database :
?mode:[ `NO_CREATE | `READONLY ] ->
?uri:bool ->
?memory:bool ->
?mutex:[ `FULL | `NO ] ->
?cache:[ `PRIVATE | `SHARED ] ->
?vfs:string ->
t ->
(SkhcDb.Database.t -> 'a) ->
'awith_database collection f runs f with a database handler associated with collection. SkhcDb.Database.close is guaranteed to be called whether f completes normaly or raises an exception. with_database discards any results or exceptions of SkhcDb.Database.close.
see Sqlite3.db_open for details of all optional arguments.
config collection returns the configuration used when calling open'.
dir_artist collection metadata returns the directory name of where should be collected the artist's albums according to metadata. The path returned is relative to configuration's music_directory.
dir_artist_absolute collection metadata is dir_artist but returns the absolute path instead of the relative one.
dir_album collection metadata returns the directory name of where should be collected the album's songs according to metadata. The path returned is relative to configuration's music_directory. Since shakuhachi stores songs in a artist/album directory structure, this function calls dir_artist underneath.
dir_album_absolute collection metadata is dir_album but returns the absolute path instead of the relative one.