public function expiresAfter($time)
{
$date = new \DateTime();
if (is_numeric($time)) {
$dateInterval = \DateInterval::createFromDateString(abs($time) . ' seconds');
if ($time > 0) {
$date->add($dateInterval);
} else {
$date->sub($dateInterval);
}
$this->expiration = $date;
} elseif ($time instanceof \DateInterval) {
$date->add($time);
$this->expiration = $date;
} else {
}
return $this;
}