Exemple #1
0
        public async Task Start(IEnumerable <SyncPair> syncs, Api api, bool isTestRun = false, SyncMode?mode = null)
        {
            bool addedHandler = false;

            foreach (SyncPair pair in syncs)
            {
                SyncPairHandler handler;
                if (handlers.TryGetValue(pair.Token, out handler) && !handler.IsEnded)
                {
                    continue;
                }

                handler = SyncPairHandler.FromSyncPair(pair, api, isTestRun, mode);

                Queue.Enqueue(handler);
                handlers[handler.Token] = handler;

                AddedHandler?.Invoke(this, handler);
                addedHandler = true;
            }

            if (!addedHandler || IsRunning)
            {
                return;
            }
            if (appTrigger == null)
            {
                RegisterAppBackgroundTask();
            }

            await appTrigger.RequestAsync();
        }
Exemple #2
0
 public bool TryGetHandler(string token, out SyncPairHandler handler)
 {
     return(handlers.TryGetValue(token, out handler));
 }
 private async void AbbStop_Click(object sender, RoutedEventArgs e)
 {
     SyncPairHandler handler = (SyncPairHandler)DataContext;
     await handler.Cancel();
 }