mirror of
https://github.com/koel/koel
synced 2024-11-24 21:23:06 +00:00
28 lines
487 B
PHP
28 lines
487 B
PHP
|
<?php
|
||
|
|
||
|
namespace App\Services;
|
||
|
|
||
|
use App\Models\Artist;
|
||
|
use Cache;
|
||
|
|
||
|
class MediaCache
|
||
|
{
|
||
|
protected $keyName = 'media_cache';
|
||
|
|
||
|
public function get()
|
||
|
{
|
||
|
$data = Cache::get($this->keyName);
|
||
|
if (!$data) {
|
||
|
$data = Artist::orderBy('name')->with('albums', with('albums.songs'))->get();
|
||
|
Cache::forever($this->keyName, $data);
|
||
|
}
|
||
|
|
||
|
return $data;
|
||
|
}
|
||
|
|
||
|
public function clear()
|
||
|
{
|
||
|
Cache::forget($this->keyName);
|
||
|
}
|
||
|
}
|