mirror of
https://gitlab.com/fabinfra/fabaccess/borepin.git
synced 2025-03-12 14:51:44 +01:00
Move to new API Class and start debugging
This commit is contained in:
parent
0ee3dc8497
commit
3cf84220bf
@ -68,7 +68,7 @@
|
||||
<Version>8.1.97</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.Forms" Version="5.0.0.2401" />
|
||||
<PackageReference Include="Xamarin.Essentials" Version="1.7.2" />
|
||||
<PackageReference Include="Xamarin.Essentials" Version="1.7.3" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="MainActivity.cs" />
|
||||
|
@ -42,8 +42,8 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\..\..\..\..\Program Files (x86)\GtkSharp\2.12\lib\gtk-sharp-2.0\atk-sharp.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DryIoc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=dfbf2bd50fcf7768, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\DryIoc.dll.5.0.0\lib\net45\DryIoc.dll</HintPath>
|
||||
<Reference Include="DryIoc, Version=5.0.2.0, Culture=neutral, PublicKeyToken=dfbf2bd50fcf7768, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\DryIoc.dll.5.0.2\lib\net45\DryIoc.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="gdk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
|
@ -12,7 +12,7 @@
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="DryIoc" publicKeyToken="dfbf2bd50fcf7768" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.0.2.0" newVersion="5.0.2.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="DryIoc.dll" version="5.0.0" targetFramework="net48" />
|
||||
<package id="DryIoc.dll" version="5.0.2" targetFramework="net48" />
|
||||
<package id="OpenTK" version="3.2" targetFramework="net48" />
|
||||
<package id="Prism.Core" version="8.1.97" targetFramework="net48" />
|
||||
<package id="Prism.DryIoc.Forms" version="8.1.97" targetFramework="net48" />
|
||||
|
@ -182,9 +182,13 @@
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.Forms" Version="5.0.0.2401" />
|
||||
<PackageReference Include="Microsoft.NETCore.UniversalWindowsPlatform" Version="6.2.13" />
|
||||
<PackageReference Include="Xamarin.Essentials" Version="1.7.2" />
|
||||
<PackageReference Include="Xamarin.Essentials" Version="1.7.3" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\external\capnproto-dotnetcore\Capnp.Net.Runtime\Capnp.Net.Runtime.csproj">
|
||||
<Project>{c587aac3-50a7-4871-a50d-7880b6f24ef6}</Project>
|
||||
<Name>Capnp.Net.Runtime</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\FabAccessAPI\FabAccessAPI.csproj">
|
||||
<Project>{3251FCE9-FEA3-4662-8BEB-636BE6732D48}</Project>
|
||||
<Name>FabAccessAPI</Name>
|
||||
|
@ -186,7 +186,7 @@
|
||||
<PackageReference Include="Prism.DryIoc.Forms">
|
||||
<Version>8.1.97</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Xamarin.Essentials" Version="1.7.2" />
|
||||
<PackageReference Include="Xamarin.Essentials" Version="1.7.3" />
|
||||
<PackageReference Include="Xamarin.Forms">
|
||||
<Version>5.0.0.2401</Version>
|
||||
</PackageReference>
|
||||
|
@ -59,8 +59,8 @@
|
||||
</XamMacArch>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="DryIoc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=dfbf2bd50fcf7768, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\DryIoc.dll.5.0.0\lib\netstandard2.1\DryIoc.dll</HintPath>
|
||||
<Reference Include="DryIoc, Version=5.0.2.0, Culture=neutral, PublicKeyToken=dfbf2bd50fcf7768, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\DryIoc.dll.5.0.2\lib\netstandard2.1\DryIoc.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Prism, Version=8.1.97.5141, Culture=neutral, PublicKeyToken=40ee6c3a2184dc59, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Prism.Core.8.1.97\lib\netstandard2.0\Prism.dll</HintPath>
|
||||
|
@ -8,7 +8,7 @@
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="DryIoc" publicKeyToken="dfbf2bd50fcf7768" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-5.0.2.0" newVersion="5.0.2.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="DryIoc.dll" version="5.0.0" targetFramework="xamarinmac20" />
|
||||
<package id="DryIoc.dll" version="5.0.2" targetFramework="xamarinmac20" />
|
||||
<package id="Prism.Core" version="8.1.97" targetFramework="xamarinmac20" />
|
||||
<package id="Prism.DryIoc.Forms" version="8.1.97" targetFramework="xamarinmac20" />
|
||||
<package id="Prism.Forms" version="8.1.97" targetFramework="xamarinmac20" />
|
||||
|
@ -12,14 +12,12 @@ namespace Borepin.Base
|
||||
public abstract class ConnectionModelBase : PageModelBase
|
||||
{
|
||||
#region Private Fields
|
||||
protected readonly IPageDialogService _PageDialogService;
|
||||
protected readonly IAPI _API;
|
||||
#endregion
|
||||
|
||||
#region Constructors
|
||||
protected ConnectionModelBase(INavigationService navigationService, IPageDialogService pageDialogService, IAPIService apiService) : base(navigationService)
|
||||
protected ConnectionModelBase(INavigationService navigationService, IPageDialogService pageDialogService, IAPIService apiService) : base(navigationService, pageDialogService)
|
||||
{
|
||||
_PageDialogService = pageDialogService;
|
||||
_API = apiService.GetAPI();
|
||||
_API.ConnectionStatusChanged += OnConnectionStatusChanged;
|
||||
|
||||
@ -54,16 +52,6 @@ namespace Borepin.Base
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public virtual Task LoadInstance(object instance)
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public virtual Task<object> CreateInstance()
|
||||
{
|
||||
return Task.FromResult<object>(null);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Fields
|
||||
@ -79,30 +67,13 @@ namespace Borepin.Base
|
||||
#endregion
|
||||
|
||||
#region INavigationAware
|
||||
public override void OnNavigatedTo(INavigationParameters parameters)
|
||||
public override async Task OnNavigatedToVirtual(INavigationParameters parameters)
|
||||
{
|
||||
if(parameters.ContainsKey("instance"))
|
||||
{
|
||||
LoadInstance(parameters.GetValue<object>("instance"));
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.Trace("No instance");
|
||||
LoadInstance(null);
|
||||
}
|
||||
await base.OnNavigatedToVirtual(parameters).ConfigureAwait(false);
|
||||
|
||||
if(_API.IsConnected)
|
||||
{
|
||||
LoadAPIData();
|
||||
}
|
||||
}
|
||||
|
||||
public override void OnNavigatedFrom(INavigationParameters parameters)
|
||||
{
|
||||
object instance = CreateInstance();
|
||||
if(instance != null)
|
||||
{
|
||||
parameters.Add("instance", instance);
|
||||
await LoadAPIData().ConfigureAwait(false);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
@ -1,6 +1,8 @@
|
||||
using NLog;
|
||||
using Prism.Mvvm;
|
||||
using Prism.Navigation;
|
||||
using Prism.Services;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Borepin.Base
|
||||
{
|
||||
@ -15,10 +17,12 @@ namespace Borepin.Base
|
||||
|
||||
#region Private Fields
|
||||
protected readonly INavigationService _NavigationService;
|
||||
protected readonly IPageDialogService _PageDialogService;
|
||||
|
||||
protected PageModelBase(INavigationService navigationService)
|
||||
protected PageModelBase(INavigationService navigationService, IPageDialogService pageDialogService)
|
||||
{
|
||||
_NavigationService = navigationService;
|
||||
_PageDialogService = pageDialogService;
|
||||
}
|
||||
#endregion
|
||||
|
||||
@ -34,9 +38,49 @@ namespace Borepin.Base
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Mehtods
|
||||
public virtual Task LoadInstance(object instance)
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public virtual Task<object> CreateInstance()
|
||||
{
|
||||
return Task.FromResult<object>(null);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region INavigationAware
|
||||
public abstract void OnNavigatedTo(INavigationParameters parameters);
|
||||
public abstract void OnNavigatedFrom(INavigationParameters parameters);
|
||||
public async void OnNavigatedTo(INavigationParameters parameters)
|
||||
{
|
||||
await OnNavigatedToVirtual(parameters).ConfigureAwait(false);
|
||||
IsBusy = false;
|
||||
}
|
||||
public async void OnNavigatedFrom(INavigationParameters parameters)
|
||||
{
|
||||
await OnNavigatedFromVirtual(parameters).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
public virtual async Task OnNavigatedToVirtual(INavigationParameters parameters)
|
||||
{
|
||||
if (parameters.ContainsKey("instance"))
|
||||
{
|
||||
await LoadInstance(parameters.GetValue<object>("instance")).ConfigureAwait(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.Trace("No instance");
|
||||
await LoadInstance(null).ConfigureAwait(false);
|
||||
}
|
||||
}
|
||||
public virtual async Task OnNavigatedFromVirtual(INavigationParameters parameters)
|
||||
{
|
||||
object instance = await CreateInstance().ConfigureAwait(false);
|
||||
if (instance != null)
|
||||
{
|
||||
parameters.Add("instance", instance);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
@ -25,13 +25,13 @@
|
||||
<None Remove="Behaviour\**" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Meziantou.Analyzer" Version="1.0.700">
|
||||
<PackageReference Include="Meziantou.Analyzer" Version="1.0.702">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="NaturalSort.Extension" Version="3.2.0" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
|
||||
<PackageReference Include="NLog" Version="4.7.15" />
|
||||
<PackageReference Include="NLog" Version="5.0.0" />
|
||||
<PackageReference Include="Plugin.Multilingual" Version="1.0.2" />
|
||||
<PackageReference Include="Prism.DryIoc.Forms" Version="8.1.97" />
|
||||
<PackageReference Include="Xamarin.Forms" Version="5.0.0.2401" />
|
||||
|
@ -78,7 +78,7 @@ namespace Borepin.PageModel.AddServerProcess
|
||||
Properties = new Dictionary<string, object>(StringComparer.Ordinal)
|
||||
{
|
||||
{ "username", Username },
|
||||
{ "password", Password }
|
||||
{ "password", Password },
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -1,6 +1,8 @@
|
||||
using Borepin.Base;
|
||||
using Borepin.Model;
|
||||
using Borepin.Base.Exceptions;
|
||||
using FabAccessAPI;
|
||||
using Prism.Navigation;
|
||||
using Prism.Services;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
using Xamarin.Forms;
|
||||
@ -10,23 +12,34 @@ namespace Borepin.PageModel.AddServerProcess
|
||||
public class ChooseAuthTypePageModel : PageModelBase
|
||||
{
|
||||
#region Private Fields
|
||||
private Connection _Connection;
|
||||
private ConnectionData _ConnectionData;
|
||||
#endregion
|
||||
|
||||
#region Contructors
|
||||
public ChooseAuthTypePageModel(INavigationService navigationService) : base(navigationService)
|
||||
public ChooseAuthTypePageModel(INavigationService navigationService, IPageDialogService pageDialogService) : base(navigationService, pageDialogService)
|
||||
{
|
||||
AuthPlainCommand = new Command(AuthPlainCommandExecute);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region LoadData
|
||||
public override Task LoadData()
|
||||
public override Task LoadInstance(object instance)
|
||||
{
|
||||
IsBusy = false;
|
||||
|
||||
if(instance is ConnectionData)
|
||||
{
|
||||
_ConnectionData = instance as ConnectionData;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new InstanceIncorrectException();
|
||||
}
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override Task<object> CreateInstance()
|
||||
{
|
||||
return Task.FromResult<object>(_ConnectionData);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Commands
|
||||
@ -38,37 +51,12 @@ namespace Borepin.PageModel.AddServerProcess
|
||||
}
|
||||
public async void AuthPlainCommandExecute()
|
||||
{
|
||||
_Connection.AuthenticationTyp = AuthenticationTyp.PLAIN;
|
||||
_ConnectionData.Mechanism = Mechanism.PLAIN;
|
||||
|
||||
INavigationParameters parameters = new NavigationParameters()
|
||||
INavigationResult result = await _NavigationService.NavigateAsync("AddServerProcess_AuthPlainPage").ConfigureAwait(false);
|
||||
if(result.Exception != null)
|
||||
{
|
||||
{"instance", _Connection },
|
||||
};
|
||||
|
||||
await _NavigationService.NavigateAsync("AddServerProcess_AuthPlainPage", parameters).ConfigureAwait(false);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region INavigationAware
|
||||
public override void OnNavigatedTo(INavigationParameters parameters)
|
||||
{
|
||||
if (parameters.ContainsKey("instance") && parameters["instance"] is Connection)
|
||||
{
|
||||
_Connection = parameters["instance"] as Connection;
|
||||
}
|
||||
else
|
||||
{
|
||||
_Connection = new Connection();
|
||||
}
|
||||
|
||||
LoadData();
|
||||
}
|
||||
|
||||
public override void OnNavigatedFrom(INavigationParameters parameters)
|
||||
{
|
||||
if (parameters.GetNavigationMode() == NavigationMode.Back)
|
||||
{
|
||||
parameters.Add("instance", _Connection);
|
||||
Log.Fatal(result.Exception, "Navigating failed");
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
@ -12,14 +12,14 @@ using System.Windows.Input;
|
||||
|
||||
namespace Borepin.PageModel.AddServerProcess
|
||||
{
|
||||
public class SelectServerPageModel : ConnectionModelBase
|
||||
public class SelectServerPageModel : PageModelBase
|
||||
{
|
||||
#region Private Fields
|
||||
private ConnectionData _ConnectionData;
|
||||
#endregion
|
||||
|
||||
#region Constructors
|
||||
public SelectServerPageModel(INavigationService navigationService, IPageDialogService pageDialogService, IAPIService apiService) : base(navigationService, pageDialogService, apiService)
|
||||
public SelectServerPageModel(INavigationService navigationService, IPageDialogService pageDialogService) : base(navigationService, pageDialogService)
|
||||
{
|
||||
ConnectToServerCommand = new DelegateCommand(async () => await ConnectToServerExecute().ConfigureAwait(false));
|
||||
DetectLocalServerCommand = new DelegateCommand(DetectHostCommandExecute);
|
||||
@ -98,7 +98,8 @@ namespace Borepin.PageModel.AddServerProcess
|
||||
|
||||
try
|
||||
{
|
||||
await _API.TestConnection(_ConnectionData).ConfigureAwait(true);
|
||||
API api = new API();
|
||||
await api.TestConnection(_ConnectionData).ConfigureAwait(true);
|
||||
}
|
||||
catch(ConnectingFailedException)
|
||||
{
|
||||
|
@ -31,23 +31,11 @@ namespace Borepin.PageModel
|
||||
#endregion
|
||||
|
||||
#region Data
|
||||
public override async Task LoadData()
|
||||
public override async Task LoadAPIData()
|
||||
{
|
||||
if (! await CheckConnection().ConfigureAwait(false))
|
||||
{
|
||||
IsConnected = false;
|
||||
User user_self = await _API.Session.UserSystem.Info.GetUserSelf().ConfigureAwait(false);
|
||||
|
||||
IsBusy = false;
|
||||
return;
|
||||
}
|
||||
|
||||
IsConnected = true;
|
||||
|
||||
MachineSystem machineSystem = (await _BFFHService.GetSession().ConfigureAwait(false)).MachineSystem;
|
||||
UserSystem userSystem = (await _BFFHService.GetSession().ConfigureAwait(false)).UserSystem;
|
||||
User user_self = await userSystem.Info.GetUserSelf().ConfigureAwait(false);
|
||||
|
||||
IReadOnlyList<Machine> machine_list = await machineSystem.Info.GetMachineList().ConfigureAwait(false);
|
||||
IReadOnlyList<Machine> machine_list = await _API.Session.MachineSystem.Info.GetMachineList().ConfigureAwait(false);
|
||||
|
||||
List<MachineListItemViewModel> viewmodel_list_user_assigned = new List<MachineListItemViewModel>();
|
||||
List<MachineListItemViewModel> viewmodel_list_not_user_assigned = new List<MachineListItemViewModel>();
|
||||
@ -71,8 +59,6 @@ namespace Borepin.PageModel
|
||||
viewmodel_list_sorted.AddRange(viewmodel_list_user_assigned.OrderBy(x => x.Name, StringComparison.OrdinalIgnoreCase.WithNaturalSort()));
|
||||
viewmodel_list_sorted.AddRange(viewmodel_list_not_user_assigned.OrderBy(x => x.Name, StringComparison.OrdinalIgnoreCase.WithNaturalSort()));
|
||||
MachineListItemViewModel_List = viewmodel_list_sorted;
|
||||
|
||||
IsBusy = false;
|
||||
}
|
||||
#endregion
|
||||
|
||||
@ -101,7 +87,11 @@ namespace Borepin.PageModel
|
||||
}
|
||||
public async Task RefreshCommandExecute()
|
||||
{
|
||||
await LoadData().ConfigureAwait(true);
|
||||
if(_API.IsConnected)
|
||||
{
|
||||
await LoadAPIData().ConfigureAwait(true);
|
||||
}
|
||||
|
||||
IsRefreshing = false;
|
||||
}
|
||||
|
||||
@ -143,16 +133,14 @@ namespace Borepin.PageModel
|
||||
|
||||
public async void ScanCode_Result(string value)
|
||||
{
|
||||
if (! _BFFHService.IsConnected)
|
||||
if (! _API.IsConnected)
|
||||
{
|
||||
IsConnected = false;
|
||||
IsBusy = false;
|
||||
return;
|
||||
}
|
||||
|
||||
MachineSystem machineInterface = (await _BFFHService.GetSession().ConfigureAwait(false)).MachineSystem;
|
||||
|
||||
Machine machine = (await machineInterface.Info.GetMachineURN(value).ConfigureAwait(false)).Just;
|
||||
Machine machine = (await _API.Session.MachineSystem.Info.GetMachineURN(value).ConfigureAwait(false)).Just;
|
||||
|
||||
if(machine == null)
|
||||
{
|
||||
@ -186,19 +174,5 @@ namespace Borepin.PageModel
|
||||
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region INavigationAware
|
||||
public override void OnNavigatedFrom(INavigationParameters parameters)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override async void OnNavigatedTo(INavigationParameters parameters)
|
||||
{
|
||||
IsBusy = true;
|
||||
|
||||
await LoadData().ConfigureAwait(false);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
@ -30,8 +30,6 @@ namespace Borepin.PageModel
|
||||
#region Data
|
||||
public override Task LoadInstance(object instance)
|
||||
{
|
||||
IsBusy = true;
|
||||
|
||||
if(instance is string)
|
||||
{
|
||||
_ID = instance as string;
|
||||
@ -41,8 +39,6 @@ namespace Borepin.PageModel
|
||||
throw new InstanceIncorrectException();
|
||||
}
|
||||
|
||||
IsBusy = false;
|
||||
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
|
@ -1,9 +1,8 @@
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Input;
|
||||
using Borepin.Base;
|
||||
using Borepin.Service.Versioning;
|
||||
using Prism.Navigation;
|
||||
using Prism.Services;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace Borepin.PageModel
|
||||
@ -15,21 +14,13 @@ namespace Borepin.PageModel
|
||||
#endregion
|
||||
|
||||
#region Constructors
|
||||
public MainPageModel(INavigationService navigationService, IVersioningService versioningService) : base(navigationService)
|
||||
public MainPageModel(INavigationService navigationService, IPageDialogService pageDialogService, IVersioningService versioningService) : base(navigationService, pageDialogService)
|
||||
{
|
||||
_VersioningService = versioningService;
|
||||
|
||||
NavigateCommand = new Command<string>(NavigateCommandExecute);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region LoadData
|
||||
public override Task LoadData()
|
||||
{
|
||||
CurrentVersion = _VersioningService.CurrentVersion;
|
||||
CurrentBuild = _VersioningService.CurrentBuild;
|
||||
|
||||
return Task.CompletedTask;
|
||||
NavigateCommand = new Command<string>(NavigateCommandExecute);
|
||||
}
|
||||
#endregion
|
||||
|
||||
@ -58,19 +49,11 @@ namespace Borepin.PageModel
|
||||
}
|
||||
public async void NavigateCommandExecute(string view)
|
||||
{
|
||||
await _NavigationService.NavigateAsync($"NavigationPage/{ view }").ConfigureAwait(false);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region INavigationAware
|
||||
public override void OnNavigatedFrom(INavigationParameters parameters)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override async void OnNavigatedTo(INavigationParameters parameters)
|
||||
{
|
||||
await LoadData().ConfigureAwait(false);
|
||||
INavigationResult result = await _NavigationService.NavigateAsync($"NavigationPage/{ view }").ConfigureAwait(false);
|
||||
if(result.Exception != null)
|
||||
{
|
||||
Log.Fatal(result.Exception, "Navigating failed");
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
using Borepin.Base;
|
||||
using Prism.Commands;
|
||||
using Prism.Navigation;
|
||||
using Prism.Services;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
@ -16,7 +17,7 @@ namespace Borepin.PageModel
|
||||
#endregion
|
||||
|
||||
#region Contructors
|
||||
public ScanPageModel(INavigationService navigationService) : base(navigationService)
|
||||
public ScanPageModel(INavigationService navigationService, IPageDialogService pageDialogService) : base(navigationService, pageDialogService)
|
||||
{
|
||||
AbortCommand = new DelegateCommand(async () => await AbortCommandExecute().ConfigureAwait(true));
|
||||
ScannedCommand = new DelegateCommand(ScannedCommandExecute);
|
||||
@ -27,9 +28,15 @@ namespace Borepin.PageModel
|
||||
#endregion
|
||||
|
||||
#region Data
|
||||
public override async Task LoadData()
|
||||
public override Task LoadInstance(object instance)
|
||||
{
|
||||
await Task.CompletedTask.ConfigureAwait(false);
|
||||
_Instance = instance;
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override Task<object> CreateInstance()
|
||||
{
|
||||
return Task.FromResult(_Instance);
|
||||
}
|
||||
#endregion
|
||||
|
||||
@ -73,7 +80,6 @@ namespace Borepin.PageModel
|
||||
{
|
||||
{ "result", "scanned" },
|
||||
{ "value", ScanResult.Text },
|
||||
{ "instance", _Instance },
|
||||
};
|
||||
|
||||
Device.BeginInvokeOnMainThread(async () =>
|
||||
@ -96,22 +102,9 @@ namespace Borepin.PageModel
|
||||
INavigationParameters parameters = new NavigationParameters()
|
||||
{
|
||||
{ "result", "abort" },
|
||||
{ "instance", _Instance },
|
||||
};
|
||||
await _NavigationService.GoBackAsync(parameters).ConfigureAwait(false);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region INavigationService
|
||||
public override void OnNavigatedFrom(INavigationParameters parameters)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override void OnNavigatedTo(INavigationParameters parameters)
|
||||
{
|
||||
_Instance = parameters.GetValue<object>("instance");
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
@ -9,6 +9,7 @@ using Borepin.Base;
|
||||
using Borepin.Service.Storage;
|
||||
using FabAccessAPI;
|
||||
using Borepin.Service;
|
||||
using Prism.Services;
|
||||
|
||||
namespace Borepin.PageModel
|
||||
{
|
||||
@ -20,7 +21,7 @@ namespace Borepin.PageModel
|
||||
#endregion
|
||||
|
||||
#region Constructors
|
||||
public ServerListPageModel(INavigationService navigationService, ILoginStorageService loginStorageService, IAPIService apiService) : base(navigationService)
|
||||
public ServerListPageModel(INavigationService navigationService, IPageDialogService pageDialogService, ILoginStorageService loginStorageService, IAPIService apiService) : base(navigationService, pageDialogService)
|
||||
{
|
||||
_LoginStorageService = loginStorageService;
|
||||
_API = apiService.GetAPI();
|
||||
@ -106,17 +107,5 @@ namespace Borepin.PageModel
|
||||
await _NavigationService.NavigateAsync("AddServerProcess_SelectServerPage").ConfigureAwait(false);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region INavigationAware
|
||||
public override void OnNavigatedFrom(INavigationParameters parameters)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override async void OnNavigatedTo(INavigationParameters parameters)
|
||||
{
|
||||
await LoadData().ConfigureAwait(false);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
using Borepin.Base;
|
||||
using Borepin.Base.Exceptions;
|
||||
using Borepin.Service;
|
||||
using Borepin.Service.Storage;
|
||||
using FabAccessAPI;
|
||||
using FabAccessAPI.Exceptions;
|
||||
using Prism.Commands;
|
||||
@ -17,12 +19,14 @@ namespace Borepin.PageModel
|
||||
{
|
||||
#region Private Fields
|
||||
private readonly IDialogService _DialogService;
|
||||
private readonly ILoginStorageService _LoginStorageService;
|
||||
#endregion
|
||||
|
||||
#region Constructors
|
||||
public ServerPageModel(INavigationService navigationService, IPageDialogService pageDialogService, IAPIService apiService, IDialogService dialogService,) : base(navigationService, pageDialogService, apiService)
|
||||
public ServerPageModel(INavigationService navigationService, IPageDialogService pageDialogService, IAPIService apiService, IDialogService dialogService, ILoginStorageService loginStorageService) : base(navigationService, pageDialogService, apiService)
|
||||
{
|
||||
_DialogService = dialogService;
|
||||
_LoginStorageService = loginStorageService;
|
||||
|
||||
ConnectCommand = new DelegateCommand(async () => await ConnectCommandExecute().ConfigureAwait(false));
|
||||
DisconnectCommand = new DelegateCommand(async () => await DisonnectCommandExecute().ConfigureAwait(false));
|
||||
@ -31,20 +35,29 @@ namespace Borepin.PageModel
|
||||
#endregion
|
||||
|
||||
#region Data
|
||||
public override Task LoadData()
|
||||
public override Task LoadInstance(object instance)
|
||||
{
|
||||
if (_BFFHService.CurrentConnection != null && Connection_Item != null)
|
||||
if(instance is ConnectionData)
|
||||
{
|
||||
InstanceIsActiveConnection = Connection_Item.Equals(_BFFHService.CurrentConnection);
|
||||
Connection_Item = instance as ConnectionData;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new InstanceIncorrectException();
|
||||
}
|
||||
|
||||
if (_API.ConnectionData != null && Connection_Item != null)
|
||||
{
|
||||
InstanceIsActiveConnection = Connection_Item.Equals(_API.ConnectionData);
|
||||
}
|
||||
else
|
||||
{
|
||||
InstanceIsActiveConnection = false;
|
||||
}
|
||||
|
||||
if(_Connection_Item != null && _Connection_Item.Address != null)
|
||||
if(_Connection_Item != null && _Connection_Item.Host != null)
|
||||
{
|
||||
DisplayAddress = string.Format(CultureInfo.InvariantCulture, "{0}:{1}", _Connection_Item.Address.Host, _Connection_Item.Address.Port);
|
||||
DisplayAddress = string.Format(CultureInfo.InvariantCulture, "{0}:{1}", _Connection_Item.Host.Host, _Connection_Item.Host.Port);
|
||||
}
|
||||
|
||||
IsBusy = false;
|
||||
@ -110,7 +123,11 @@ namespace Borepin.PageModel
|
||||
return;
|
||||
}
|
||||
|
||||
await _NavigationService.NavigateAsync("/MainPage/NavigationPage/MachineListPage").ConfigureAwait(false);
|
||||
INavigationResult result = await _NavigationService.NavigateAsync("/MainPage/NavigationPage/MachineListPage").ConfigureAwait(false);
|
||||
if(result.Exception != null)
|
||||
{
|
||||
Log.Fatal(result.Exception, "Navigating failed");
|
||||
}
|
||||
}
|
||||
|
||||
private ICommand _DisconnectCommand;
|
||||
@ -123,7 +140,7 @@ namespace Borepin.PageModel
|
||||
{
|
||||
await _API.Disconnect().ConfigureAwait(false);
|
||||
|
||||
await LoadData().ConfigureAwait(false);
|
||||
await LoadInstance(Connection_Item).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
private ICommand _DeleteCommand;
|
||||
@ -149,11 +166,15 @@ namespace Borepin.PageModel
|
||||
{
|
||||
if(string.Equals(result.Parameters.GetValue<string>("result"), "confirm", StringComparison.Ordinal))
|
||||
{
|
||||
Connection connection = result.Parameters.GetValue<Connection>("instance");
|
||||
ConnectionData connectionData = result.Parameters.GetValue<ConnectionData>("instance");
|
||||
|
||||
await _BFFHService.RemoveConnection(connection).ConfigureAwait(false);
|
||||
await _LoginStorageService.Remove(connectionData).ConfigureAwait(false);
|
||||
|
||||
await _NavigationService.NavigateAsync("/MainPage/NavigationPage/ServerListPage").ConfigureAwait(false);
|
||||
INavigationResult result_nav = await _NavigationService.NavigateAsync("/MainPage/NavigationPage/ServerListPage").ConfigureAwait(false);
|
||||
if(result_nav.Exception != null)
|
||||
{
|
||||
Log.Fatal(result.Exception, "Navigating failed");
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
@ -1,7 +1,7 @@
|
||||
using Borepin.Base;
|
||||
using Prism.Commands;
|
||||
using Prism.Navigation;
|
||||
using System;
|
||||
using Prism.Services;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
|
||||
@ -10,19 +10,12 @@ namespace Borepin.PageModel.SetUpProcess
|
||||
public class WelcomePageModel : PageModelBase
|
||||
{
|
||||
#region Constructors
|
||||
public WelcomePageModel(INavigationService navigationService) : base(navigationService)
|
||||
public WelcomePageModel(INavigationService navigationService, IPageDialogService pageDialogService) : base(navigationService, pageDialogService)
|
||||
{
|
||||
NextCommand = new DelegateCommand<object>(NextCommandCommandExecute);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Data
|
||||
public override Task LoadData()
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Commands
|
||||
private ICommand _NextCommand;
|
||||
public ICommand NextCommand
|
||||
@ -35,17 +28,5 @@ namespace Borepin.PageModel.SetUpProcess
|
||||
await _NavigationService.NavigateAsync("AddServerProcess_SelectServerPage").ConfigureAwait(false);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region INavigationAware
|
||||
public override void OnNavigatedFrom(INavigationParameters parameters)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override void OnNavigatedTo(INavigationParameters parameters)
|
||||
{
|
||||
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
@ -1,51 +1,45 @@
|
||||
using Borepin.Base;
|
||||
using Borepin.Model;
|
||||
using Borepin.Service.BFFH;
|
||||
using Borepin.Service.Storage;
|
||||
using FabAccessAPI;
|
||||
using Prism.AppModel;
|
||||
using Prism.Navigation;
|
||||
using Prism.Services;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Borepin.PageModel
|
||||
{
|
||||
public class StartPageModel : PageModelBase, IPageLifecycleAware, IInitialize
|
||||
public class StartPageModel : PageModelBase, IPageLifecycleAware
|
||||
{
|
||||
#region Private Fields
|
||||
private readonly IBFFHService _BFFHService;
|
||||
private readonly ILoginStorageService _LoginStorageService;
|
||||
#endregion
|
||||
|
||||
#region Constructors
|
||||
public StartPageModel(INavigationService navigationService, IBFFHService bffhService) : base(navigationService)
|
||||
public StartPageModel(INavigationService navigationService, IPageDialogService pageDialogService, ILoginStorageService loginStorageService) : base(navigationService, pageDialogService)
|
||||
{
|
||||
_BFFHService = bffhService;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region LoadData
|
||||
public override Task LoadData()
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region IInitialize
|
||||
public void Initialize(INavigationParameters parameters)
|
||||
{
|
||||
|
||||
_LoginStorageService = loginStorageService;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region IPageLifecycleAware
|
||||
public async void OnAppearing()
|
||||
{
|
||||
IList<Connection> connection_list = await _BFFHService.GetConnections().ConfigureAwait(false);
|
||||
if (connection_list.Count == 0)
|
||||
IList<ConnectionData> connectionData_List = await _LoginStorageService.GetList().ConfigureAwait(false);
|
||||
if (connectionData_List.Count == 0)
|
||||
{
|
||||
await _NavigationService.NavigateAsync("/MainPage/NavigationPage/SetUpProcess_WelcomePage").ConfigureAwait(false);
|
||||
INavigationResult result = await _NavigationService.NavigateAsync("/MainPage/NavigationPage/SetUpProcess_WelcomePage").ConfigureAwait(false);
|
||||
if (result.Exception != null)
|
||||
{
|
||||
Log.Fatal(result.Exception, "Navigating failed");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
await _NavigationService.NavigateAsync("/MainPage/NavigationPage/ServerListPage").ConfigureAwait(false);
|
||||
INavigationResult result = await _NavigationService.NavigateAsync("/MainPage/NavigationPage/ServerListPage").ConfigureAwait(false);
|
||||
if (result.Exception != null)
|
||||
{
|
||||
Log.Fatal(result.Exception, "Navigating failed");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -54,17 +48,5 @@ namespace Borepin.PageModel
|
||||
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region INavigationAware
|
||||
public override void OnNavigatedFrom(INavigationParameters parameters)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override void OnNavigatedTo(INavigationParameters parameters)
|
||||
{
|
||||
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
@ -5,7 +5,7 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.1.0" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.2.0" />
|
||||
<PackageReference Include="NSubstitute" Version="4.3.0" />
|
||||
<PackageReference Include="NUnit" Version="3.13.3" />
|
||||
<PackageReference Include="NUnit3TestAdapter" Version="4.2.1" />
|
||||
|
@ -13,7 +13,7 @@
|
||||
<ItemGroup>
|
||||
<PackageReference Include="CapnpC.CSharp.MsBuild.Generation" Version="1.3.118" />
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.Log4Net.AspNetCore" Version="6.1.0" />
|
||||
<PackageReference Include="NLog" Version="4.7.15" />
|
||||
<PackageReference Include="NLog" Version="5.0.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
@ -1,5 +1,4 @@
|
||||
|
||||
using Capnp.Rpc;
|
||||
using Capnp.Rpc;
|
||||
using FabAccessAPI;
|
||||
using FabAccessAPI.Exceptions;
|
||||
using NUnit.Framework;
|
||||
@ -24,10 +23,7 @@ namespace FabAccessAPI_Test
|
||||
Username = "UnkownUser",
|
||||
Properties = new Dictionary<string, object>()
|
||||
{
|
||||
{ "Username", "UnkownUser" }
|
||||
},
|
||||
SecretProperties = new Dictionary<string, object>()
|
||||
{
|
||||
{ "Username", "UnkownUser" },
|
||||
{ "Password", TestEnv.PASSWORD }
|
||||
}
|
||||
};
|
||||
|
@ -1,4 +1,4 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp3.1</TargetFramework>
|
||||
@ -10,7 +10,7 @@
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.Log4Net.AspNetCore" Version="6.1.0" />
|
||||
<PackageReference Include="NUnit" Version="3.13.3" />
|
||||
<PackageReference Include="NUnit3TestAdapter" Version="4.2.1" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.1.0" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.2.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
@ -20,12 +20,9 @@ namespace FabAccessAPI_Test
|
||||
Username = username,
|
||||
Properties = new Dictionary<string, object>()
|
||||
{
|
||||
{ "Username", username }
|
||||
{ "Username", username },
|
||||
{ "Password", TestEnv.PASSWORD },
|
||||
},
|
||||
SecretProperties = new Dictionary<string, object>()
|
||||
{
|
||||
{ "Password", TestEnv.PASSWORD }
|
||||
}
|
||||
};
|
||||
|
||||
return connectionData;
|
||||
|
Loading…
x
Reference in New Issue
Block a user