mirror of
https://gitlab.com/fabinfra/fabaccess/borepin.git
synced 2025-03-12 14:51:44 +01:00
Fixed PageDialoge Threads
This commit is contained in:
parent
aa29d7d733
commit
f6105f10ac
@ -32,10 +32,28 @@ namespace Borepin.Base
|
||||
{
|
||||
case ConnectionStatusChange.Connected:
|
||||
IsConnected = true;
|
||||
await LoadAPIData().ConfigureAwait(false);
|
||||
try
|
||||
{
|
||||
await LoadAPIData().ConfigureAwait(false);
|
||||
}
|
||||
catch
|
||||
{
|
||||
IsConnected = false;
|
||||
await _API.Disconnect().ConfigureAwait(false);
|
||||
_API.UnbindAllEvents();
|
||||
}
|
||||
break;
|
||||
case ConnectionStatusChange.Reconnected:
|
||||
await ReloadAPIData().ConfigureAwait(false);
|
||||
try
|
||||
{
|
||||
await ReloadAPIData().ConfigureAwait(false);
|
||||
}
|
||||
catch
|
||||
{
|
||||
IsConnected = false;
|
||||
await _API.Disconnect().ConfigureAwait(false);
|
||||
_API.UnbindAllEvents();
|
||||
}
|
||||
break;
|
||||
case ConnectionStatusChange.ConnectionLoss:
|
||||
try
|
||||
@ -84,7 +102,16 @@ namespace Borepin.Base
|
||||
|
||||
if(_API.IsConnected)
|
||||
{
|
||||
await LoadAPIData().ConfigureAwait(false);
|
||||
try
|
||||
{
|
||||
await LoadAPIData().ConfigureAwait(false);
|
||||
}
|
||||
catch
|
||||
{
|
||||
IsConnected = false;
|
||||
await _API.Disconnect().ConfigureAwait(false);
|
||||
_API.UnbindAllEvents();
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
@ -89,7 +89,11 @@ namespace Borepin.PageModel.AddServerProcess
|
||||
|
||||
if (_API.IsConnected)
|
||||
{
|
||||
await _API.Disconnect().ConfigureAwait(false);
|
||||
if (_API.IsConnected)
|
||||
{
|
||||
await _API.Disconnect().ConfigureAwait(true);
|
||||
_API.UnbindAllEvents();
|
||||
}
|
||||
}
|
||||
|
||||
try
|
||||
@ -98,23 +102,32 @@ namespace Borepin.PageModel.AddServerProcess
|
||||
}
|
||||
catch (ConnectingFailedException)
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to connect to server.", "Ok").ConfigureAwait(false);
|
||||
Device.BeginInvokeOnMainThread(async () =>
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to connect to server.", "Ok").ConfigureAwait(false);
|
||||
|
||||
IsBusy = false;
|
||||
IsBusy = false;
|
||||
});
|
||||
return;
|
||||
}
|
||||
catch (AuthenticationFailedException)
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to authenticate to server.", "Ok").ConfigureAwait(false);
|
||||
Device.BeginInvokeOnMainThread(async () =>
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to authenticate to server.", "Ok").ConfigureAwait(false);
|
||||
|
||||
IsBusy = false;
|
||||
IsBusy = false;
|
||||
});
|
||||
return;
|
||||
}
|
||||
catch(Exception)
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unexpected Error.", "Ok").ConfigureAwait(false);
|
||||
Device.BeginInvokeOnMainThread(async () =>
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unexpected Error.", "Ok").ConfigureAwait(false);
|
||||
|
||||
IsBusy = false;
|
||||
IsBusy = false;
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -90,9 +90,13 @@ namespace Borepin.PageModel.AddServerProcess
|
||||
}
|
||||
catch (UriFormatException)
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Server address is invaild.", "Ok").ConfigureAwait(false);
|
||||
Device.BeginInvokeOnMainThread(async () =>
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Server address is invaild.", "Ok").ConfigureAwait(false);
|
||||
|
||||
IsBusy = false;
|
||||
});
|
||||
|
||||
IsBusy = false;
|
||||
return;
|
||||
}
|
||||
|
||||
@ -103,9 +107,13 @@ namespace Borepin.PageModel.AddServerProcess
|
||||
}
|
||||
catch(ConnectingFailedException)
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to connect to server.", "Ok").ConfigureAwait(false);
|
||||
Device.BeginInvokeOnMainThread(async () =>
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to connect to server.", "Ok").ConfigureAwait(false);
|
||||
|
||||
IsBusy = false;
|
||||
});
|
||||
|
||||
IsBusy = false;
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -128,20 +128,26 @@ namespace Borepin.PageModel
|
||||
|
||||
try
|
||||
{
|
||||
await _API.Connect(Connection_Item).ConfigureAwait(true);
|
||||
await _API.Connect(Connection_Item).ConfigureAwait(false);
|
||||
}
|
||||
catch(ConnectingFailedException)
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to connect to server.", "Ok").ConfigureAwait(false);
|
||||
|
||||
IsBusy = false;
|
||||
Device.BeginInvokeOnMainThread(async () =>
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to connect to server.", "Ok").ConfigureAwait(false);
|
||||
|
||||
IsBusy = false;
|
||||
});
|
||||
return;
|
||||
}
|
||||
catch(AuthenticationFailedException)
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to authenticate to server.", "Ok").ConfigureAwait(false);
|
||||
Device.BeginInvokeOnMainThread(async () =>
|
||||
{
|
||||
await _PageDialogService.DisplayAlertAsync("Connection failed", "Unable to authenticate to server.", "Ok").ConfigureAwait(false);
|
||||
|
||||
IsBusy = false;
|
||||
IsBusy = false;
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user