diff options
author | Thomas Citharel <tcit@tcit.fr> | 2022-10-02 12:14:36 +0200 |
---|---|---|
committer | Thomas Citharel <tcit@tcit.fr> | 2022-10-03 08:35:42 +0200 |
commit | 98030e97d3b8a91678c314cd3326c6aee99daaad (patch) | |
tree | b07e3f8518edacdf88a6358ebe560897e1965318 | |
parent | 905753be42af7e8c5af304b0d3c93f5d9bcea789 (diff) | |
download | nextcloud-server-98030e97d3b8a91678c314cd3326c6aee99daaad.tar.gz nextcloud-server-98030e97d3b8a91678c314cd3326c6aee99daaad.zip |
Add typings to OCP\Calendar\ICalendar and implementation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
-rw-r--r-- | apps/dav/lib/CalDAV/CalendarImpl.php | 32 | ||||
-rw-r--r-- | lib/public/Calendar/ICalendar.php | 16 |
2 files changed, 21 insertions, 27 deletions
diff --git a/apps/dav/lib/CalDAV/CalendarImpl.php b/apps/dav/lib/CalDAV/CalendarImpl.php index a04e520c6bc..4eef1e7f8d3 100644 --- a/apps/dav/lib/CalDAV/CalendarImpl.php +++ b/apps/dav/lib/CalDAV/CalendarImpl.php @@ -46,14 +46,10 @@ use function Sabre\Uri\split as uriSplit; class CalendarImpl implements ICreateFromString { - /** @var CalDavBackend */ - private $backend; - - /** @var Calendar */ - private $calendar; - - /** @var array */ - private $calendarInfo; + private CalDavBackend $backend; + private Calendar $calendar; + /** @var array<string, mixed> */ + private array $calendarInfo; public function __construct(Calendar $calendar, array $calendarInfo, @@ -67,8 +63,8 @@ class CalendarImpl implements ICreateFromString { * @return string defining the technical unique key * @since 13.0.0 */ - public function getKey() { - return $this->calendarInfo['id']; + public function getKey(): string { + return (string) $this->calendarInfo['id']; } /** @@ -80,19 +76,17 @@ class CalendarImpl implements ICreateFromString { /** * In comparison to getKey() this function returns a human readable (maybe translated) name - * @return null|string * @since 13.0.0 */ - public function getDisplayName() { + public function getDisplayName(): ?string { return $this->calendarInfo['{DAV:}displayname']; } /** * Calendar color - * @return null|string * @since 13.0.0 */ - public function getDisplayColor() { + public function getDisplayColor(): ?string { return $this->calendarInfo['{http://apple.com/ns/ical/}calendar-color']; } @@ -101,21 +95,21 @@ class CalendarImpl implements ICreateFromString { * @param array $searchProperties defines the properties within the query pattern should match * @param array $options - optional parameters: * ['timerange' => ['start' => new DateTime(...), 'end' => new DateTime(...)]] - * @param integer|null $limit - limit number of search results - * @param integer|null $offset - offset for paging of search results + * @param int|null $limit - limit number of search results + * @param int|null $offset - offset for paging of search results * @return array an array of events/journals/todos which are arrays of key-value-pairs * @since 13.0.0 */ - public function search($pattern, array $searchProperties = [], array $options = [], $limit = null, $offset = null) { + public function search(string $pattern, array $searchProperties = [], array $options = [], $limit = null, $offset = null): array { return $this->backend->search($this->calendarInfo, $pattern, $searchProperties, $options, $limit, $offset); } /** - * @return integer build up using \OCP\Constants + * @return int build up using \OCP\Constants * @since 13.0.0 */ - public function getPermissions() { + public function getPermissions(): int { $permissions = $this->calendar->getACL(); $result = 0; foreach ($permissions as $permission) { diff --git a/lib/public/Calendar/ICalendar.php b/lib/public/Calendar/ICalendar.php index 0d08e2ba268..f1f2d5eb6f1 100644 --- a/lib/public/Calendar/ICalendar.php +++ b/lib/public/Calendar/ICalendar.php @@ -37,7 +37,7 @@ interface ICalendar { * @return string defining the technical unique key * @since 13.0.0 */ - public function getKey(); + public function getKey(): string; /** * @since 24.0.0 @@ -49,30 +49,30 @@ interface ICalendar { * @return null|string * @since 13.0.0 */ - public function getDisplayName(); + public function getDisplayName(): ?string; /** * Calendar color * @return null|string * @since 13.0.0 */ - public function getDisplayColor(); + public function getDisplayColor(): ?string; /** * @param string $pattern which should match within the $searchProperties * @param array $searchProperties defines the properties within the query pattern should match * @param array $options - optional parameters: * ['timerange' => ['start' => new DateTime(...), 'end' => new DateTime(...)]] - * @param integer|null $limit - limit number of search results - * @param integer|null $offset - offset for paging of search results + * @param int|null $limit - limit number of search results + * @param int|null $offset - offset for paging of search results * @return array an array of events/journals/todos which are arrays of key-value-pairs * @since 13.0.0 */ - public function search($pattern, array $searchProperties = [], array $options = [], $limit = null, $offset = null); + public function search(string $pattern, array $searchProperties = [], array $options = [], ?int $limit = null, ?int $offset = null): array; /** - * @return integer build up using \OCP\Constants + * @return int build up using \OCP\Constants * @since 13.0.0 */ - public function getPermissions(); + public function getPermissions(): int; } |