borepin/Borepin/Borepin/App.xaml.cs
2021-02-09 15:25:22 +01:00

77 lines
2.9 KiB
C#

using Prism.Ioc;
using Borepin.PageModel;
using Borepin.Page;
using Xamarin.Forms;
using Borepin.Dialog;
using Borepin.DialogModel;
using Borepin.Service.Connections;
using Borepin.Service.BFFH;
using Borepin.Service.Credentials;
using System.Collections.Generic;
using Borepin.Model;
namespace Borepin
{
public partial class App
{
private IConnectionService _ConnectionService;
private ICredentialService _CredentialService;
private IBFFHService _BFFHService;
public App()
{
}
protected override async void OnInitialized()
{
InitializeComponent();
Prism.Navigation.INavigationResult result;
List<Connection> connection_list = await _ConnectionService.GetConnectionList();
if (connection_list.Count == 0)
{
result = await NavigationService.NavigateAsync("/NavigationPage/HostSelectPage");
}
else
{
result = await NavigationService.NavigateAsync("/MainPage/NavigationPage/ServerListPage");
}
if (!result.Success)
{
System.Diagnostics.Debugger.Break();
}
}
protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
// Register Navigation
containerRegistry.RegisterForNavigation<NavigationPage>();
containerRegistry.RegisterForNavigation<MainPage, MainPagePageModel>();
containerRegistry.RegisterForNavigation<MachinePage, MachinePageModel>();
containerRegistry.RegisterForNavigation<SettingsPage>();
containerRegistry.RegisterForNavigation<MachineListPage, MachineListPageModel>();
containerRegistry.RegisterForNavigation<LoginPasswordPage, LoginPasswordPageModel>();
containerRegistry.RegisterForNavigation<HostSelectPage, HostSelectPageModel>();
containerRegistry.RegisterForNavigation<LoginChoosePage, LoginChoosePageModel>();
containerRegistry.RegisterForNavigation<ServerListPage, ServerListPageModel>();
containerRegistry.RegisterForNavigation<ServerPage, ServerPageModel>();
containerRegistry.RegisterForNavigation<ListPage, ListPageModel>();
// Register Dialog
containerRegistry.RegisterDialog<ConfirmDialog, ConfirmDialogModel>();
// Register Service
_ConnectionService = new ConnectionService();
_CredentialService = new CredentialService();
_BFFHService = new BFFHService(_CredentialService);
containerRegistry.RegisterInstance<IConnectionService>(_ConnectionService);
containerRegistry.RegisterInstance<ICredentialService>(_CredentialService);
containerRegistry.RegisterInstance<IBFFHService>(_BFFHService);
}
}
}