Skip to content
This repository has been archived by the owner on Nov 6, 2022. It is now read-only.

Commit

Permalink
> Fix releases cache file
Browse files Browse the repository at this point in the history
  • Loading branch information
trueromanus committed Oct 3, 2020
1 parent 068dc24 commit 27e6228
Show file tree
Hide file tree
Showing 15 changed files with 275 additions and 290 deletions.
3 changes: 3 additions & 0 deletions src/Anilibria/Anilibria.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -331,10 +331,13 @@
<Compile Include="Services\Implementations\LiteDbLocalPath.cs" />
<Compile Include="Services\Implementations\ObserverEvents.cs" />
<Compile Include="Pages\DownloadManagerPage\PresentationClasses\DownloadItemModel.cs" />
<Compile Include="Services\Implementations\ReleaseSingletonService.cs" />
<Compile Include="Services\Implementations\ReleasesService.cs" />
<Compile Include="Services\Implementations\StorageService.cs" />
<Compile Include="Services\Implementations\SynchronizeService.cs" />
<Compile Include="Services\Implementations\SyncService.cs" />
<Compile Include="Services\Implementations\SystemService.cs" />
<Compile Include="Services\IReleasesService.cs" />
<Compile Include="Services\ISynchronizationService.cs" />
<Compile Include="Services\PresentationClasses\ApiResponse.cs" />
<Compile Include="Services\PresentationClasses\ApiResponseError.cs" />
Expand Down
12 changes: 7 additions & 5 deletions src/Anilibria/App.xaml.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using System;
using System.Threading.Tasks;
using Anilibria.GlobalState;
using Anilibria.Pages.DiagnosticsPage;
using Anilibria.Pages.ProtocolsPages;
Expand Down Expand Up @@ -56,8 +57,7 @@ protected override void OnActivated ( IActivatedEventArgs args ) {

if ( isNotStarted ) {
TransitionToChangeApiPath ( newUrl );
}
else {
} else {
var frame = (Frame) Window.Current.Content;
var homeView = ( frame.Content as HomeView );
homeView.SetApiPath ( newUrl );
Expand Down Expand Up @@ -95,7 +95,7 @@ protected override async void OnLaunched ( LaunchActivatedEventArgs e ) {
//if app started on xbox then increase screen size on full screen.
TransitionToFullScreen ();

if ( e.PreviousExecutionState != ApplicationExecutionState.Suspended && e.PreviousExecutionState != ApplicationExecutionState.Running ) PopulateFirstStartReleases ();
if ( e.PreviousExecutionState != ApplicationExecutionState.Suspended && e.PreviousExecutionState != ApplicationExecutionState.Running ) await PopulateFirstStartReleases ();

LaunchParameters.SetArguments ( e.Arguments );

Expand All @@ -118,10 +118,12 @@ private static void TransitionToFullScreen () {
if ( SystemService.GetDeviceFamilyType () == DeviceFamilyType.Xbox ) ApplicationView.GetForCurrentView ().SetDesiredBoundsMode ( ApplicationViewBoundsMode.UseCoreWindow );
}

private void PopulateFirstStartReleases () {
private async Task PopulateFirstStartReleases () {
await ReleaseSingletonService.LoadReleases ();

//don't wait for release sync because it may take longer than expected
#pragma warning disable CS4014
new SynchronizeService ( ApiService.Current () , StorageService.Current () ).SynchronizeReleases ();
new SynchronizeService ( ApiService.Current () , StorageService.Current () , ReleaseSingletonService.Current () ).SynchronizeReleases ();
#pragma warning restore CS4014
}

Expand Down
11 changes: 4 additions & 7 deletions src/Anilibria/Pages/CinemaHall/CinemaHallView.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
using Anilibria.Services.Implementations;
using Windows.ApplicationModel;
using Windows.System;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Documents;

Expand All @@ -16,12 +17,10 @@ public sealed partial class CinemaHallView : Page {
public CinemaHallView () {
InitializeComponent ();

DataContext = new CinemaHallViewModel ( ApiService.Current () , StorageService.Current () , new AnalyticsService () );
DataContext = new CinemaHallViewModel ( ApiService.Current () , StorageService.Current () , new AnalyticsService (), ReleaseSingletonService.Current() );
}

private async void HelpButton_Click ( object sender , Windows.UI.Xaml.RoutedEventArgs e ) {
await ShowCinemaHallPdf ();
}
private async void HelpButton_Click ( object sender , RoutedEventArgs e ) => await ShowCinemaHallPdf ();

private static async Task ShowCinemaHallPdf () {
var location = Package.Current.InstalledLocation;
Expand All @@ -31,9 +30,7 @@ private static async Task ShowCinemaHallPdf () {
await Launcher.LaunchFileAsync ( file );
}

private async void Hyperlink_Click ( Hyperlink sender , HyperlinkClickEventArgs args ) {
await ShowCinemaHallPdf ();
}
private async void Hyperlink_Click ( Hyperlink sender , HyperlinkClickEventArgs args ) => await ShowCinemaHallPdf ();

}

Expand Down
14 changes: 6 additions & 8 deletions src/Anilibria/Pages/CinemaHall/CinemaHallViewModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,14 +36,17 @@ public class CinemaHallViewModel : ViewModel, INavigation {

private readonly IAnilibriaApiService m_AnilibriaApiService;

private readonly IReleasesService m_ReleasesService;

private CinemaHallReleaseEntity m_ReleasesEntity;

private CinemaHallReleaseModel m_ReorderItem;

public CinemaHallViewModel ( IAnilibriaApiService anilibriaApiService , IDataContext dataContext , IAnalyticsService analyticsService ) {
public CinemaHallViewModel ( IAnilibriaApiService anilibriaApiService , IDataContext dataContext , IAnalyticsService analyticsService , IReleasesService releasesService ) {
m_DataContext = dataContext ?? throw new ArgumentNullException ( nameof ( dataContext ) );
m_AnalyticsService = analyticsService ?? throw new ArgumentNullException ( nameof ( analyticsService ) );
m_AnilibriaApiService = anilibriaApiService ?? throw new ArgumentNullException ( nameof ( anilibriaApiService ) );
m_ReleasesService = releasesService ?? throw new ArgumentNullException ( nameof ( releasesService ) );

RefreshSelectedReleases ();

Expand Down Expand Up @@ -131,7 +134,7 @@ public void NavigateFrom () {
/// Navigate to.
/// </summary>
/// <param name="parameter">Parameter.</param>
public async void NavigateTo ( object parameter ) {
public void NavigateTo ( object parameter ) {

var collection = m_DataContext.GetCollection<CinemaHallReleaseEntity> ();
m_ReleasesEntity = collection.FirstOrDefault ();
Expand All @@ -145,12 +148,7 @@ public async void NavigateTo ( object parameter ) {

IsEmptyList = !m_ReleasesEntity.Releases.Any ();

var releasesFile = await ApplicationData.Current.LocalFolder.TryGetItemAsync ( "releases.cache" );
var releases = Enumerable.Empty<ReleaseEntity> ();
if ( releasesFile != null ) {
var relasesJson = await FileIO.ReadTextAsync ( (IStorageFile) releasesFile );
releases = relasesJson.Length > 0 ? JsonConvert.DeserializeObject<List<ReleaseEntity>> ( relasesJson ) : Enumerable.Empty<ReleaseEntity> ();
}
var releases = m_ReleasesService.GetReleases ();

var releasesDictionary = releases.ToDictionary ( a => a.Id );

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ public sealed partial class DownloadManagerView : UserControl {

public DownloadManagerView () {
InitializeComponent ();
m_ViewModel = new DownloadManagerViewModel ( DownloadManager.Current (), StorageService.Current () , new AnalyticsService() );
m_ViewModel = new DownloadManagerViewModel ( DownloadManager.Current (), StorageService.Current () , new AnalyticsService(), ReleaseSingletonService.Current() );
DataContext = m_ViewModel;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,12 @@ public class DownloadManagerViewModel : ViewModel, INavigation {

private Brush m_PlayColor;

public DownloadManagerViewModel ( IDownloadService downloadService , IDataContext dataContext , IAnalyticsService analyticsService ) {
private readonly IReleasesService m_ReleasesService;

public DownloadManagerViewModel ( IDownloadService downloadService , IDataContext dataContext , IAnalyticsService analyticsService , IReleasesService releasesService ) {
m_DownloadService = downloadService ?? throw new ArgumentNullException ( nameof ( downloadService ) );
m_AnalyticsService = analyticsService ?? throw new ArgumentNullException ( nameof ( analyticsService ) );
m_ReleasesService = releasesService ?? throw new ArgumentNullException ( nameof ( releasesService ) );
m_DownloadService.SetDownloadProgress ( ProgressHandler );
m_DownloadService.SetDownloadFinished ( FinishHandler );
CreateCommands ();
Expand Down Expand Up @@ -216,15 +219,7 @@ private DownloadItemModel MapToModel ( DownloadReleaseEntity downloadRelease ) {
};
}

private async void RefreshAfterSynchronize ( object parameter ) {
m_Releases = Enumerable.Empty<ReleaseEntity> ();

var releasesFile = await ApplicationData.Current.LocalFolder.TryGetItemAsync ( "releases.cache" );
if ( releasesFile == null ) return;

var relasesJson = await FileIO.ReadTextAsync ( (IStorageFile) releasesFile );
m_Releases = relasesJson.Length > 0 ? JsonConvert.DeserializeObject<List<ReleaseEntity>> ( relasesJson ) : Enumerable.Empty<ReleaseEntity> ();
}
private void RefreshAfterSynchronize ( object parameter ) => m_Releases = m_ReleasesService.GetReleases ();

/// <summary>
/// Initialize.
Expand Down Expand Up @@ -274,7 +269,7 @@ private async void SaveVideo ( string identifier ) {
var status = await CachedFileManager.CompleteUpdatesAsync ( file );
if ( status != FileUpdateStatus.Complete ) failed = true;

if (failed) {
if ( failed ) {
ObserverEvents.FireEvent (
"showMessage" ,
new MessageModel {
Expand Down
2 changes: 1 addition & 1 deletion src/Anilibria/Pages/OnlinePlayer/OnlinePlayerView.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ public sealed partial class OnlinePlayerView : Page {

public OnlinePlayerView () {
InitializeComponent ();
m_ViewModel = new OnlinePlayerViewModel ( new AnalyticsService () , StorageService.Current () , ApiService.Current () , DownloadManager.Current () ) {
m_ViewModel = new OnlinePlayerViewModel ( new AnalyticsService () , StorageService.Current () , ApiService.Current () , DownloadManager.Current (), ReleaseSingletonService.Current() ) {
ChangeVolumeHandler = ChangeVolumeHandler ,
ChangePlayback = ChangePlaybackHandler ,
ChangePosition = ChangePosition ,
Expand Down
Loading

0 comments on commit 27e6228

Please sign in to comment.