r10626 - in /trunk/libaudio-mpd-perl: debian/changelog lib/Audio/MPD.pm lib/Audio/MPD/Collection.pm

joeyh at users.alioth.debian.org joeyh at users.alioth.debian.org
Sat Dec 1 20:08:10 UTC 2007


Author: joeyh
Date: Sat Dec  1 20:08:10 2007
New Revision: 10626

URL: http://svn.debian.org/wsvn/?sc=1&rev=10626
Log:
* Add an all_playlists method.
* Tighten up regexp in _cooked_command_as_items, to not eat significant
  whitespace.

Modified:
    trunk/libaudio-mpd-perl/debian/changelog
    trunk/libaudio-mpd-perl/lib/Audio/MPD.pm
    trunk/libaudio-mpd-perl/lib/Audio/MPD/Collection.pm

Modified: trunk/libaudio-mpd-perl/debian/changelog
URL: http://svn.debian.org/wsvn/trunk/libaudio-mpd-perl/debian/changelog?rev=10626&op=diff
==============================================================================
--- trunk/libaudio-mpd-perl/debian/changelog (original)
+++ trunk/libaudio-mpd-perl/debian/changelog Sat Dec  1 20:08:10 2007
@@ -1,3 +1,11 @@
+libaudio-mpd-perl (0.19.0-2) UNRELEASED; urgency=low
+
+  * Add an all_playlists method.
+  * Tighten up regexp in _cooked_command_as_items, to not eat significant
+    whitespace.
+
+ -- Joey Hess <joeyh at debian.org>  Sat, 01 Dec 2007 15:00:10 -0500
+
 libaudio-mpd-perl (0.19.0-1) unstable; urgency=low
 
   * New upstream release.

Modified: trunk/libaudio-mpd-perl/lib/Audio/MPD.pm
URL: http://svn.debian.org/wsvn/trunk/libaudio-mpd-perl/lib/Audio/MPD.pm?rev=10626&op=diff
==============================================================================
--- trunk/libaudio-mpd-perl/lib/Audio/MPD.pm (original)
+++ trunk/libaudio-mpd-perl/lib/Audio/MPD.pm Sat Dec  1 20:08:10 2007
@@ -183,9 +183,9 @@
     # of course, since we want to preserve the playlist order, this means
     # that we're going to unshift the objects instead of push.
     foreach my $line (reverse @lines) {
-        my ($k,$v) = split /:\s+/, $line, 2;
+        my ($k,$v) = split /:\s/, $line, 2;
         $param{$k} = $v;
-        next unless $k eq 'file' || $k eq 'directory'; # last param of item
+        next unless $k eq 'file' || $k eq 'directory' || $k eq 'playlist'; # last param of item
         unshift @items, Audio::MPD::Common::Item->new(%param);
         %param = ();
     }

Modified: trunk/libaudio-mpd-perl/lib/Audio/MPD/Collection.pm
URL: http://svn.debian.org/wsvn/trunk/libaudio-mpd-perl/lib/Audio/MPD/Collection.pm?rev=10626&op=diff
==============================================================================
--- trunk/libaudio-mpd-perl/lib/Audio/MPD/Collection.pm (original)
+++ trunk/libaudio-mpd-perl/lib/Audio/MPD/Collection.pm Sat Dec  1 20:08:10 2007
@@ -102,7 +102,7 @@
     $path ||= '';
     $path =~ s/"/\\"/g;
 
-    return $self->_mpd->_cooked_command_as_items( qq[lsinfo "$path"\n] );
+    return grep { ! $_->isa('Audio::MPD::Common::Item::Playlist') } $self->_mpd->_cooked_command_as_items( qq[lsinfo "$path"\n] );
 }
 
 
@@ -166,6 +166,18 @@
     return $self->_mpd->_cooked_command_strip_first_field( "list filename\n" );
 }
 
+
+#
+# my @items = $collection->all_playlists;
+#
+# Return the list of all Audio::MPD::Common::Item::Playlist
+# objects currently known by mpd.
+#
+sub all_playlists {
+    my ($self) = @_;
+
+    return grep { $_->isa('Audio::MPD::Common::Item::Playlist') } $self->_mpd->_cooked_command_as_items( "lsinfo\n" );
+}
 
 # -- Collection: picking songs
 
@@ -400,6 +412,12 @@
 Return the list of all pathes (strings) currently known by mpd.
 
 
+=item $coll->all_playlists()
+
+Return the list of all Audio::MPD::Common::Item::Playlist
+objects currently known by mpd.
+
+
 =back
 
 




More information about the Pkg-perl-cvs-commits mailing list