+ $log->trace("Connecting to MPD...");
+ my $f = $mpd->connect->await;
+
+ if ( $f->is_done ) {
+ $mpd_connected = 1;
+ $playlist_needs_filling = 1;
+ $reconnect_delay = $opt->initial_reconnect_delay;
+ $mpd->loop->later( sub { $self->pulse } );
+ }
+ elsif ( $f->is_failed ) {
+ $mpd->loop->stop('disconnected');
+ $log->warn($f->failure);
+ $self->sleep_before_reconnection;
+ }
+ else {
+ die "connect Future neither done nor failed!?";
+ }