/** Bubble $evt up the stack calling $target() on each listener */
private function _bubble(Swift_Events_EventObject $evt, $target)
{
if (!$evt->bubbleCancelled() && ($listener = array_shift($this->_bubbleQueue))) {
$listener->{$target}($evt);
$this->_bubble($evt, $target);
}
}