NAME

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

DESCRIPTION

POE::Component::Client::MPD::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 POE::Component::Client::MPD 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 POE::Component::Client::MPD'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::Items (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::Items (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

Songs, albums & artists relations

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 & LICENSE

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.