POE::Component::Client::MPD::Collection.3pm

Langue: en

Autres versions - même langue

Version: 2009-03-22 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

POE::Component::Client::MPD::Collection - module handling collection commands

DESCRIPTION

"POCOCM::Collection" is responsible for handling general purpose commands. They are in a dedicated module to achieve easier code maintenance.

To achieve those commands, send the corresponding event to the POCOCM session you created: it will be responsible for dispatching the event where it is needed. Under no circumstance should you call directly subs or methods from this module directly.

Read POCOCM's pod to learn how to deal with answers from those commands.

PUBLIC EVENTS

The following is a list of collection-related events accepted by POCOCM.

Retrieving songs & directories

coll.all_items( [$path] )

Return all "Audio::MPD::Common::Item"s (both songs & directories) currently known by mpd.

If $path is supplied (relative to mpd root), restrict the retrieval to songs and dirs in this directory.

coll.all_items_simple( [$path] )

Return all "Audio::MPD::Common::Item"s (both songs & directories) currently known by mpd.

If $path is supplied (relative to mpd root), restrict the retrieval to songs and dirs in this directory.

/!\ Warning: the "Audio::MPD::Common::Item::Song" objects will only have their attribute file filled. Any other attribute will be empty, so don't use this sub for any other thing than a quick scan!

coll.items_in_dir( [$path] )

Return the items in the given $path. If no $path supplied, do it on mpd's root directory.

Note that this sub does not work recusrively on all directories.

Retrieving the whole collection

coll.all_albums()

Return the list of all albums (strings) currently known by mpd.

coll.all_artists()

Return the list of all artists (strings) currently known by mpd.

coll.all_titles()

Return the list of all titles (strings) currently known by mpd.

coll.all_files()

Return a mpd_result event with the list of all filenames (strings) currently known by mpd.

Picking songs

coll.song( $path )

Return the "Audio::MPD::Common::Item::Song" which correspond to $path.

coll.songs_with_filename_partial( $string )

Return the "Audio::MPD::Common::Item::Song"s containing $string in their path.

Songs, albums & artists relations

coll.albums_by_artist( $artist )

Return all albums (strings) performed by $artist or where $artist participated.

coll.songs_by_artist( $artist )

Return all "Audio::MPD::Common::Item::Song"s performed by $artist.

coll.songs_by_artist_partial( $artist )

Return all "Audio::MPD::Common::Item::Song"s performed by $artist.

coll.songs_from_album( $album )

Return all "Audio::MPD::Common::Item::Song"s appearing in $album.

coll.songs_from_album_partial( $string )

Return all "Audio::MPD::Common::Item::Song"s appearing in album containing $string.

coll.songs_with_title( $title )

Return all "Audio::MPD::Common::Item::Song"s which title is exactly $title.

coll.songs_with_title_partial( $string )

Return all "Audio::MPD::Common::Item::Song"s where $string is part of the title.

SEE ALSO

For all related information (bug reporting, mailing-list, pointers to MPD and POE, etc.), refer to "POE::Component::Client::MPD"'s pod, section "SEE ALSO"

AUTHOR

Jerome Quelin, "<jquelin@cpan.org>" Copyright (c) 2007-2008 Jerome Quelin, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.