Signed-off-by: Edward Ly <contact@edward.ly>pull/51082/head
parent
bb6b462690
commit
dd181f4b2a
@ -0,0 +1,79 @@ |
||||
<?php |
||||
|
||||
declare(strict_types=1); |
||||
|
||||
/** |
||||
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors |
||||
* SPDX-License-Identifier: AGPL-3.0-or-later |
||||
*/ |
||||
namespace OCP\Calendar\Events; |
||||
|
||||
use OCP\EventDispatcher\Event; |
||||
use OCP\EventDispatcher\IWebhookCompatibleEvent; |
||||
|
||||
/** |
||||
* @since 32.0.0 |
||||
*/ |
||||
abstract class AbstractCalendarObjectEvent extends Event implements IWebhookCompatibleEvent { |
||||
|
||||
/** |
||||
* @param int $calendarId |
||||
* @param array $calendarData |
||||
* @param array $shares |
||||
* @param array $objectData |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function __construct( |
||||
private int $calendarId, |
||||
private array $calendarData, |
||||
private array $shares, |
||||
private array $objectData, |
||||
) { |
||||
parent::__construct(); |
||||
} |
||||
|
||||
/** |
||||
* @return int |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getCalendarId(): int { |
||||
return $this->calendarId; |
||||
} |
||||
|
||||
/** |
||||
* @return array |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getCalendarData(): array { |
||||
return $this->calendarData; |
||||
} |
||||
|
||||
/** |
||||
* @return array |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getShares(): array { |
||||
return $this->shares; |
||||
} |
||||
|
||||
/** |
||||
* @return array |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getObjectData(): array { |
||||
return $this->objectData; |
||||
} |
||||
|
||||
/** |
||||
* @return array |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getWebhookSerializable(): array { |
||||
return [ |
||||
'calendarId' => $this->getCalendarId(), |
||||
'calendarData' => $this->getCalendarData(), |
||||
'shares' => $this->getShares(), |
||||
'objectData' => $this->getObjectData(), |
||||
]; |
||||
} |
||||
} |
@ -0,0 +1,15 @@ |
||||
<?php |
||||
|
||||
declare(strict_types=1); |
||||
|
||||
/** |
||||
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors |
||||
* SPDX-License-Identifier: AGPL-3.0-or-later |
||||
*/ |
||||
namespace OCP\Calendar\Events; |
||||
|
||||
/** |
||||
* @since 32.0.0 |
||||
*/ |
||||
class CalendarObjectCreatedEvent extends AbstractCalendarObjectEvent { |
||||
} |
@ -0,0 +1,15 @@ |
||||
<?php |
||||
|
||||
declare(strict_types=1); |
||||
|
||||
/** |
||||
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors |
||||
* SPDX-License-Identifier: AGPL-3.0-or-later |
||||
*/ |
||||
namespace OCP\Calendar\Events; |
||||
|
||||
/** |
||||
* @since 32.0.0 |
||||
*/ |
||||
class CalendarObjectDeletedEvent extends AbstractCalendarObjectEvent { |
||||
} |
@ -0,0 +1,104 @@ |
||||
<?php |
||||
|
||||
declare(strict_types=1); |
||||
|
||||
/** |
||||
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors |
||||
* SPDX-License-Identifier: AGPL-3.0-or-later |
||||
*/ |
||||
namespace OCP\Calendar\Events; |
||||
|
||||
use OCP\EventDispatcher\Event; |
||||
use OCP\EventDispatcher\IWebhookCompatibleEvent; |
||||
|
||||
/** |
||||
* @since 32.0.0 |
||||
*/ |
||||
class CalendarObjectMovedEvent extends Event implements IWebhookCompatibleEvent { |
||||
/** |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function __construct( |
||||
private int $sourceCalendarId, |
||||
private array $sourceCalendarData, |
||||
private int $targetCalendarId, |
||||
private array $targetCalendarData, |
||||
private array $sourceShares, |
||||
private array $targetShares, |
||||
private array $objectData, |
||||
) { |
||||
parent::__construct(); |
||||
} |
||||
|
||||
/** |
||||
* @return int |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getSourceCalendarId(): int { |
||||
return $this->sourceCalendarId; |
||||
} |
||||
|
||||
/** |
||||
* @return array |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getSourceCalendarData(): array { |
||||
return $this->sourceCalendarData; |
||||
} |
||||
|
||||
/** |
||||
* @return int |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getTargetCalendarId(): int { |
||||
return $this->targetCalendarId; |
||||
} |
||||
|
||||
/** |
||||
* @return array |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getTargetCalendarData(): array { |
||||
return $this->targetCalendarData; |
||||
} |
||||
|
||||
/** |
||||
* @return array |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getSourceShares(): array { |
||||
return $this->sourceShares; |
||||
} |
||||
|
||||
/** |
||||
* @return array |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getTargetShares(): array { |
||||
return $this->targetShares; |
||||
} |
||||
|
||||
/** |
||||
* @return array |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getObjectData(): array { |
||||
return $this->objectData; |
||||
} |
||||
|
||||
/** |
||||
* @return array |
||||
* @since 32.0.0 |
||||
*/ |
||||
public function getWebhookSerializable(): array { |
||||
return [ |
||||
'sourceCalendarId' => $this->getSourceCalendarId(), |
||||
'sourceCalendarData' => $this->getSourceCalendarData(), |
||||
'targetCalendarId' => $this->getTargetCalendarId(), |
||||
'targetCalendarData' => $this->getTargetCalendarData(), |
||||
'sourceShares' => $this->getSourceShares(), |
||||
'targetShares' => $this->getTargetShares(), |
||||
'objectData' => $this->getObjectData(), |
||||
]; |
||||
} |
||||
} |
@ -0,0 +1,15 @@ |
||||
<?php |
||||
|
||||
declare(strict_types=1); |
||||
|
||||
/** |
||||
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors |
||||
* SPDX-License-Identifier: AGPL-3.0-or-later |
||||
*/ |
||||
namespace OCP\Calendar\Events; |
||||
|
||||
/** |
||||
* @since 32.0.0 |
||||
*/ |
||||
class CalendarObjectMovedToTrashEvent extends AbstractCalendarObjectEvent { |
||||
} |
@ -0,0 +1,15 @@ |
||||
<?php |
||||
|
||||
declare(strict_types=1); |
||||
|
||||
/** |
||||
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors |
||||
* SPDX-License-Identifier: AGPL-3.0-or-later |
||||
*/ |
||||
namespace OCP\Calendar\Events; |
||||
|
||||
/** |
||||
* @since 32.0.0 |
||||
*/ |
||||
class CalendarObjectRestoredEvent extends AbstractCalendarObjectEvent { |
||||
} |
@ -0,0 +1,15 @@ |
||||
<?php |
||||
|
||||
declare(strict_types=1); |
||||
|
||||
/** |
||||
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors |
||||
* SPDX-License-Identifier: AGPL-3.0-or-later |
||||
*/ |
||||
namespace OCP\Calendar\Events; |
||||
|
||||
/** |
||||
* @since 32.0.0 |
||||
*/ |
||||
class CalendarObjectUpdatedEvent extends AbstractCalendarObjectEvent { |
||||
} |
Loading…
Reference in new issue