Ejemplo n.º 1
0
        public static Notification GetNotification(this SyncStatusEventArgs args)
        {
            switch (args.Status)
            {
            case SyncStatus.Updating:
                return(Notification.Information(StringRes.NotificationSyncStatus_Updating, Category.TemplatesSync, TimerType.None, false));

            case SyncStatus.Updated:
                return(Notification.Information(StringRes.NotificationSyncStatus_Updated, Category.TemplatesSync, TimerType.Short, true));

            case SyncStatus.CheckingForUpdates:
                return(Notification.Information(StringRes.NotificationSyncStatus_CheckingForUpdates, Category.TemplatesSync, TimerType.None, false));

            case SyncStatus.Acquiring:
                return(Notification.Information(string.Format(StringRes.NotificationSyncStatus_Acquiring, args.Version, args.Progress), Category.TemplatesSync, TimerType.None, false));

            case SyncStatus.Preparing:
                return(Notification.Information(string.Format(StringRes.NotificationSyncStatus_Preparing, args.Version, args.Progress), Category.TemplatesSync, TimerType.None, false));

            case SyncStatus.NewWizardVersionAvailable:
                return(Notification.Warning(string.Format(StringRes.NotificationSyncStatus_NewWizardVersionAvailable, args.Version), Category.TemplatesSync, TimerType.None));

            case SyncStatus.ErrorAcquiring:
                return(Notification.Warning(string.Format(StringRes.NotificationSyncStatus_ErrorAcquiring, args.Version), Category.TemplatesSyncError, TimerType.Large, CategoriesToOverride));

            case SyncStatus.Ready:
                return(null);

            case SyncStatus.None:
                return(null);

            default:
                return(null);
            }
        }
Ejemplo n.º 2
0
        private async void OnSyncStatusChanged(object sender, SyncStatusEventArgs args)
        {
            var notification = args.GetNotification();

            if (notification?.Category == Category.TemplatesSync)
            {
                await NotificationsControl.AddOrUpdateNotificationAsync(notification);
            }
            else
            {
                await NotificationsControl.AddNotificationAsync(notification);
            }

            if (args.Status == SyncStatus.NoUpdates || args.Status == SyncStatus.Ready)
            {
                NotificationsControl.RemoveNotification();
            }

            if (args.Status == SyncStatus.Updated || args.Status == SyncStatus.Ready)
            {
                WizardStatus.SetVersions();

                await OnTemplatesAvailableAsync();
            }
        }
Ejemplo n.º 3
0
 private void OnSyncProfileEnd(SyncStatusEventArgs e)
 {
     if (this.SyncProfileEnd != null)
     {
         this.SyncProfileEnd(this, e);
     }
 }
Ejemplo n.º 4
0
 private void davHelper_SyncProfileEnd(object sender, SyncStatusEventArgs e)
 {
     ProfileStateSetData(e.Status);
     if (_SyncNodeList.Count > 0)
     {
         syncProfile();
     }
 }
Ejemplo n.º 5
0
        private void OnSyncStatusChanged(object sender, SyncStatusEventArgs args)
        {
            _messageService.SendResult(MessageType.SyncProgress, new { args.Status, args.Progress });

            if (args.Status.Equals(SyncStatus.Updated))
            {
                _wasUpdated = true;
            }
        }
        private async void SyncSyncStatusChanged(object sender, SyncStatusEventArgs status)
        {
            SafeThreading.JoinableTaskFactory.Run(async() =>
            {
                await SafeThreading.JoinableTaskFactory.SwitchToMainThreadAsync();
                WizardStatus.SetStatus(status.Status.GetStatusViewModel());
            });

            if (status.Status == SyncStatus.Updated)
            {
                WizardStatus.TemplatesVersion = GenContext.ToolBox.Repo.TemplatesVersion;
                CleanStatus();

                UpdateTemplatesAvailable(true);
                await OnTemplatesAvailableAsync();

                WizardStatus.IsLoading = false;
                UpdateCanCheckUpdates(true);
            }

            if (status.Status == SyncStatus.OverVersion)
            {
                SafeThreading.JoinableTaskFactory.Run(async() =>
                {
                    await SafeThreading.JoinableTaskFactory.SwitchToMainThreadAsync();
                    UpdateTemplatesAvailable(true);
                });
            }

            if (status.Status == SyncStatus.OverVersionNoContent)
            {
                SafeThreading.JoinableTaskFactory.Run(async() =>
                {
                    await SafeThreading.JoinableTaskFactory.SwitchToMainThreadAsync();
                    UpdateTemplatesAvailable(false);
                });
            }

            if (status.Status == SyncStatus.UnderVersion)
            {
                SafeThreading.JoinableTaskFactory.Run(async() =>
                {
                    await SafeThreading.JoinableTaskFactory.SwitchToMainThreadAsync();
                    UpdateTemplatesAvailable(false);
                });
            }

            if (status.Status == SyncStatus.NewVersionAvailable)
            {
                WizardStatus.NewVersionAvailable = true;
            }
        }
Ejemplo n.º 7
0
 /// <summary>
 /// Method to be called whenever there is an update about the sync progress
 /// </summary>
 /// <param name="sender">The sender of the updates</param>
 /// <param name="e">Event with data about the update</param>
 public void OnUpdateSyncStatus(object sender, SyncStatusEventArgs e)
 {
     // Toast.MakeText(this, "Percent Done = " + e.PercentProcessed, ToastLength.Long).Show();
 }