From 3a84b2506b53a83843ba02a2cd086119fa45cae5 Mon Sep 17 00:00:00 2001 From: "kalle (jag)" Date: Thu, 27 Oct 2022 09:10:16 +0200 Subject: [PATCH] Apply suggestions from code review Co-authored-by: Jonathan Flueren <11487762+JonOfUs@users.noreply.github.com> --- lib/Controller/PersonalSettingsController.php | 2 +- lib/Core/PodcastData/PodcastData.php | 31 +++++++++---------- lib/Core/PodcastData/PodcastDataReader.php | 2 +- lib/Core/PodcastData/PodcastMetrics.php | 2 +- lib/Core/PodcastData/PodcastMetricsReader.php | 6 ++-- 5 files changed, 21 insertions(+), 22 deletions(-) diff --git a/lib/Controller/PersonalSettingsController.php b/lib/Controller/PersonalSettingsController.php index 5cf8841..5211e4d 100644 --- a/lib/Controller/PersonalSettingsController.php +++ b/lib/Controller/PersonalSettingsController.php @@ -56,7 +56,7 @@ class PersonalSettingsController extends Controller { return new JSONResponse([ 'message' => "Missing query parameter 'url'.", 'data' => null, - ], statusCode: Http::STATUS_BAD_REQUEST); + ], Http::STATUS_BAD_REQUEST); } return new JsonResponse([ 'data' => $this->dataReader->getCachedOrFetchPodcastData($url, $this->userId), diff --git a/lib/Core/PodcastData/PodcastData.php b/lib/Core/PodcastData/PodcastData.php index 402f0ad..447e2ef 100644 --- a/lib/Core/PodcastData/PodcastData.php +++ b/lib/Core/PodcastData/PodcastData.php @@ -42,18 +42,17 @@ class PodcastData implements JsonSerializable { $xml = new SimpleXMLElement($xmlString); $channel = $xml->channel; return new PodcastData( - title: self::stringOrNull($channel->title), - author: self::getXPathContent($xml, '/rss/channel/itunes:author'), - link: self::stringOrNull($channel->link), - description: self::stringOrNull($channel->description), - imageUrl: - self::getXPathContent($xml, '/rss/channel/image/url') + self::stringOrNull($channel->title), + self::getXPathContent($xml, '/rss/channel/itunes:author'), + self::stringOrNull($channel->link), + self::stringOrNull($channel->description), + self::getXPathContent($xml, '/rss/channel/image/url') ?? self::getXPathAttribute($xml, '/rss/channel/itunes:image/@href'), - fetchedAtUnix: $fetchedAtUnix ?? (new DateTime())->getTimestamp(), + $fetchedAtUnix ?? (new DateTime())->getTimestamp() ); } - private static function stringOrNull(mixed $value): ?string { + private static function stringOrNull($value): ?string { if ($value) { return (string)$value; } @@ -159,7 +158,7 @@ class PodcastData implements JsonSerializable { /** * @return array */ - public function jsonSerialize(): mixed { + public function jsonSerialize(): array { return $this->toArray(); } @@ -168,13 +167,13 @@ class PodcastData implements JsonSerializable { */ public static function fromArray(array $data): PodcastData { return new PodcastData( - title: $data['title'], - author: $data['author'], - link: $data['link'], - description: $data['description'], - imageUrl: $data['imageUrl'], - fetchedAtUnix: $data['fetchedAtUnix'], - imageBlob: $data['imageBlob'], + $data['title'], + $data['author'], + $data['link'], + $data['description'], + $data['imageUrl'], + $data['fetchedAtUnix'], + $data['imageBlob'] ); } } diff --git a/lib/Core/PodcastData/PodcastDataReader.php b/lib/Core/PodcastData/PodcastDataReader.php index fa04e27..14d094f 100644 --- a/lib/Core/PodcastData/PodcastDataReader.php +++ b/lib/Core/PodcastData/PodcastDataReader.php @@ -69,7 +69,7 @@ class PodcastDataReader { $body = $resp->getBody(); $bodyBase64 = base64_encode($body); return "data:$contentType;base64,$bodyBase64"; - } catch (Exception) { + } catch (Exception $e) { return null; } } diff --git a/lib/Core/PodcastData/PodcastMetrics.php b/lib/Core/PodcastData/PodcastMetrics.php index c752987..e464967 100644 --- a/lib/Core/PodcastData/PodcastMetrics.php +++ b/lib/Core/PodcastData/PodcastMetrics.php @@ -63,7 +63,7 @@ class PodcastMetrics implements JsonSerializable { /** * @return array */ - public function jsonSerialize(): mixed { + public function jsonSerialize(): array { return $this->toArray(); } } diff --git a/lib/Core/PodcastData/PodcastMetricsReader.php b/lib/Core/PodcastData/PodcastMetricsReader.php index 271e97f..252bbcd 100644 --- a/lib/Core/PodcastData/PodcastMetricsReader.php +++ b/lib/Core/PodcastData/PodcastMetricsReader.php @@ -65,9 +65,9 @@ class PodcastMetricsReader { private function createMetricsForUrl(string $url): PodcastMetrics { return new PodcastMetrics( - url: $url, - listenedSeconds: 0, - actionCounts: new PodcastActionCounts(), + $url, + 0, + new PodcastActionCounts() ); }