/**
* @param string $target
* @param string $reason
* @param \DateTime $expires
* @param string $source
*
* @return BanEntry
*/
public function addBan($target, $reason = null, $expires = null, $source = null)
{
$entry = new BanEntry($target);
$entry->setSource($source != null ? $source : $entry->getSource());
$entry->setExpires($expires);
$entry->setReason($reason != null ? $reason : $entry->getReason());
$this->list[$entry->getName()] = $entry;
$this->save();
return $entry;
}