private void SetupEventListener(IEventBus eventBus) { eventBus.Subscribe("hello", (sender, data) => { var _medieFileService = new MedieFileService(); var playingInfo = PlayingMediaInfoChanged.Parser.ParseFrom(data).MediaInfo; var mediaFile = new SeriesFile() { SeriesId = CurrentlyPlayingManager.EpisodeFile.SeriesId, LastWatched = DateTimeOffset.Now, IdFromProvider = CurrentlyPlayingManager.EpisodeFile.Id, Length = TimeSpan.FromSeconds(playingInfo.Duration), Watched = TimeSpan.FromSeconds(playingInfo.Eplipsed), }; if (CurrentlyPlayingManager.EpisodeFile.Id == mediaFile.IdFromProvider) { if (mediaFile.Watched < TimeSpan.FromSeconds(5)) { var file = _medieFileService.GetLastWatched(); if (file.IsCompleted) { mediaFile.Watched = mediaFile.Length; } } } _medieFileService.AddOrUpdate(mediaFile); }); }
public void AddOrUpdate(SeriesFile file) { _repo.AddOrUpdate(file); }