clearAllCacheByModel(); } } public function clearAllCacheByModel(): void { $this->clearCacheByPrefix(CacheKeys::SCHEDULE_PREFIX->value.'*'); $this->clearAllSchedulesCache(); } public function getCachedData(string $key) { return Cache::get($key); } public function cacheData(string $key, $data, int $ttl = null): void { Cache::put($key, $data, $ttl ?? self::DEFAULT_TTL); } private function forgetScheduleCache(int $id): void { Cache::forget($this->getCacheKey($id)); } private function clearAllSchedulesCache(): void { Cache::forget(CacheKeys::SCHEDULES_PREFIX->value); } }