/**
  * Sets the date and time when this node should be automatically hidden
  *
  * @param \DateTime $dateTime Date after which this node should be hidden
  * @return void
  * @api
  */
 public function setHiddenAfterDateTime(\DateTime $dateTime = null)
 {
     if (!$this->isNodeDataMatchingContext()) {
         $this->materializeNodeData();
     }
     if ($this->getHiddenAfterDateTime() instanceof \DateTimeInterface && $dateTime instanceof \DateTimeInterface && $this->getHiddenAfterDateTime()->format(\DateTime::W3C) === $dateTime->format(\DateTime::W3C)) {
         return;
     }
     $this->nodeData->setHiddenAfterDateTime($dateTime);
     $this->context->getFirstLevelNodeCache()->flush();
     $this->emitNodeUpdated($this);
 }