public function count($my_listener = null)
{
$count = 0;
if (!is_null($my_listener)) {
if ($ob = $this->get($my_listener)) {
$count = count($this->_storage->get($ob->getName()));
if ($this->_storage->exists('_unattached')) {
foreach ($this->_storage->get('_unattached') as $val) {
if ($ob->handles($val->type)) {
++$count;
}
}
}
}
} else {
if ($this->_storage->exists('_unattached')) {
$count = count($this->_storage->get('_unattached'));
}
foreach ($this->_listeners as $val) {
if ($this->_storage->exists($val->getName())) {
$count += count($this->_storage->get($val->getName()));
}
}
}
return $count;
}