/** * Get the video data * * @param int $videoId * * @return array|null */ public function getVideo($videoId) { $videoId = (int) $videoId; $cacheKey = 'video_' . $videoId; // Check if the given video has been fetched if ($this->cache->isDataObsolete($cacheKey)) { if (($video = $this->fetchVideo($videoId)) === null) { return null; } $this->cache->setData($cacheKey, $video); } return parent::getVideo($videoId); }