From 5198d6bd28e329e24aa1f9109c8b291389d94c35 Mon Sep 17 00:00:00 2001 From: SebastianKrupinski Date: Wed, 15 Jan 2025 15:00:49 -0500 Subject: [PATCH] fixup! feat: OCC and OCS Calendar Import/Export Signed-off-by: SebastianKrupinski --- apps/dav/lib/CalDAV/CalendarImpl.php | 18 ++++++++++- lib/composer/composer/autoload_classmap.php | 2 ++ lib/composer/composer/autoload_static.php | 2 ++ .../Calendar/CalendarImportSettings.php | 25 ++++++++++++++++ lib/public/Calendar/ICalendarImport.php | 30 +++++++++++++++++++ 5 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 lib/public/Calendar/CalendarImportSettings.php create mode 100644 lib/public/Calendar/ICalendarImport.php diff --git a/apps/dav/lib/CalDAV/CalendarImpl.php b/apps/dav/lib/CalDAV/CalendarImpl.php index 76ddd92eb82c5..c8a1b82a39a6d 100644 --- a/apps/dav/lib/CalDAV/CalendarImpl.php +++ b/apps/dav/lib/CalDAV/CalendarImpl.php @@ -12,8 +12,10 @@ use OCA\DAV\CalDAV\Auth\CustomPrincipalPlugin; use OCA\DAV\CalDAV\InvitationResponse\InvitationResponseServer; use OCP\Calendar\CalendarExportRange; +use OCP\Calendar\CalendarImportSettings; use OCP\Calendar\Exceptions\CalendarException; use OCP\Calendar\ICalendarExport; +use OCP\Calendar\ICalendarImport; use OCP\Calendar\ICalendarIsShared; use OCP\Calendar\ICalendarIsWritable; use OCP\Calendar\ICreateFromString; @@ -29,7 +31,7 @@ use Sabre\VObject\Reader; use function Sabre\Uri\split as uriSplit; -class CalendarImpl implements ICreateFromString, IHandleImipMessage, ICalendarIsWritable, ICalendarIsShared, ICalendarExport { +class CalendarImpl implements ICreateFromString, IHandleImipMessage, ICalendarIsWritable, ICalendarIsShared, ICalendarImport, ICalendarExport { public function __construct( private Calendar $calendar, /** @var array */ @@ -282,4 +284,18 @@ public function export(?CalendarExportRange $range = null): Generator { } } + /** + * Import objects + * + * @since 31.0.0 + * + */ + public function import(CalendarImportSettings $settings, VCalendar ...$vObjects): void { + + foreach ($vObjects as $vObject) { + + } + + } + } diff --git a/lib/composer/composer/autoload_classmap.php b/lib/composer/composer/autoload_classmap.php index 06ff355c3632a..d8947ed274ad2 100644 --- a/lib/composer/composer/autoload_classmap.php +++ b/lib/composer/composer/autoload_classmap.php @@ -192,11 +192,13 @@ 'OCP\\Cache\\CappedMemoryCache' => $baseDir . '/lib/public/Cache/CappedMemoryCache.php', 'OCP\\Calendar\\BackendTemporarilyUnavailableException' => $baseDir . '/lib/public/Calendar/BackendTemporarilyUnavailableException.php', 'OCP\\Calendar\\CalendarExportRange' => $baseDir . '/lib/public/Calendar/CalendarExportRange.php', + 'OCP\\Calendar\\CalendarImportSettings' => $baseDir . '/lib/public/Calendar/CalendarImportSettings.php', 'OCP\\Calendar\\Exceptions\\CalendarException' => $baseDir . '/lib/public/Calendar/Exceptions/CalendarException.php', 'OCP\\Calendar\\IAvailabilityResult' => $baseDir . '/lib/public/Calendar/IAvailabilityResult.php', 'OCP\\Calendar\\ICalendar' => $baseDir . '/lib/public/Calendar/ICalendar.php', 'OCP\\Calendar\\ICalendarEventBuilder' => $baseDir . '/lib/public/Calendar/ICalendarEventBuilder.php', 'OCP\\Calendar\\ICalendarExport' => $baseDir . '/lib/public/Calendar/ICalendarExport.php', + 'OCP\\Calendar\\ICalendarImport' => $baseDir . '/lib/public/Calendar/ICalendarImport.php', 'OCP\\Calendar\\ICalendarIsShared' => $baseDir . '/lib/public/Calendar/ICalendarIsShared.php', 'OCP\\Calendar\\ICalendarIsWritable' => $baseDir . '/lib/public/Calendar/ICalendarIsWritable.php', 'OCP\\Calendar\\ICalendarProvider' => $baseDir . '/lib/public/Calendar/ICalendarProvider.php', diff --git a/lib/composer/composer/autoload_static.php b/lib/composer/composer/autoload_static.php index 9ab90b6f83b0f..f2090ce143b0b 100644 --- a/lib/composer/composer/autoload_static.php +++ b/lib/composer/composer/autoload_static.php @@ -241,11 +241,13 @@ class ComposerStaticInit749170dad3f5e7f9ca158f5a9f04f6a2 'OCP\\Cache\\CappedMemoryCache' => __DIR__ . '/../../..' . '/lib/public/Cache/CappedMemoryCache.php', 'OCP\\Calendar\\BackendTemporarilyUnavailableException' => __DIR__ . '/../../..' . '/lib/public/Calendar/BackendTemporarilyUnavailableException.php', 'OCP\\Calendar\\CalendarExportRange' => __DIR__ . '/../../..' . '/lib/public/Calendar/CalendarExportRange.php', + 'OCP\\Calendar\\CalendarImportSettings' => __DIR__ . '/../../..' . '/lib/public/Calendar/CalendarImportSettings.php', 'OCP\\Calendar\\Exceptions\\CalendarException' => __DIR__ . '/../../..' . '/lib/public/Calendar/Exceptions/CalendarException.php', 'OCP\\Calendar\\IAvailabilityResult' => __DIR__ . '/../../..' . '/lib/public/Calendar/IAvailabilityResult.php', 'OCP\\Calendar\\ICalendar' => __DIR__ . '/../../..' . '/lib/public/Calendar/ICalendar.php', 'OCP\\Calendar\\ICalendarEventBuilder' => __DIR__ . '/../../..' . '/lib/public/Calendar/ICalendarEventBuilder.php', 'OCP\\Calendar\\ICalendarExport' => __DIR__ . '/../../..' . '/lib/public/Calendar/ICalendarExport.php', + 'OCP\\Calendar\\ICalendarImport' => __DIR__ . '/../../..' . '/lib/public/Calendar/ICalendarImport.php', 'OCP\\Calendar\\ICalendarIsShared' => __DIR__ . '/../../..' . '/lib/public/Calendar/ICalendarIsShared.php', 'OCP\\Calendar\\ICalendarIsWritable' => __DIR__ . '/../../..' . '/lib/public/Calendar/ICalendarIsWritable.php', 'OCP\\Calendar\\ICalendarProvider' => __DIR__ . '/../../..' . '/lib/public/Calendar/ICalendarProvider.php', diff --git a/lib/public/Calendar/CalendarImportSettings.php b/lib/public/Calendar/CalendarImportSettings.php new file mode 100644 index 0000000000000..26beef13ee9fa --- /dev/null +++ b/lib/public/Calendar/CalendarImportSettings.php @@ -0,0 +1,25 @@ +