/** * 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); }