/**
  * Patch a calendar from request
  * @param \OCA\Calendar\ICalendar $newCalendar
  * @param \OCA\Calendar\ICalendar $oldCalendar
  * @return \OCA\Calendar\ICalendar
  */
 public function patch(ICalendar $newCalendar, ICalendar $oldCalendar)
 {
     $newCalendar->setId($oldCalendar->getId());
     $newCalendar->setPrivateUri($oldCalendar->getPrivateUri());
     $this->resetReadOnlyProperties($newCalendar, $oldCalendar);
     if ($newCalendar->doesContainNullValues()) {
         $newCalendar = $oldCalendar->overwriteWith($newCalendar);
     }
     /** @var \OCA\Calendar\ICalendar $newCalendar */
     return parent::update($newCalendar);
 }