using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using PetaPoco.Business; using Sony.Filtr.MusicServices.Models; using Sony.Filtr.DistributedCaching; namespace Sony.Filtr.MusicServices { public class MusicServiceManager { private readonly DistributedCacheHandler _distributedCacheHandler; private const string _musicServicesCacheKey = "sony.filtr.musicservices"; public MusicServiceManager(DistributedCacheHandler distributedCacheHandler) { _distributedCacheHandler = distributedCacheHandler; } public List GetMusicServices() { var musicServices = _distributedCacheHandler.Get(_musicServicesCacheKey) as List; if (musicServices != null) return musicServices; musicServices = PetaPocoRepository.ReadOnlyInstance.Fetch(); _distributedCacheHandler.Put(_musicServicesCacheKey, musicServices, DateTime.Now.AddHours(5)); return musicServices; } } }