Example #1
0
        private static async void OnTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            switch (e.Request.TransferStatus)
            {
            case TransferStatus.Completed:
                if (e.Request.TransferError == null)
                {
                    bool success = await CopyFileAsync(e.Request);

                    if (success)
                    {
                        RemoveTransferRequest(e.Request.RequestId);
                    }
                }
                else
                {
                    BackgroundTransferRequestStateChanged?.Raise(e.Request, DownloadRequestState.Error);
                }
                break;

            case TransferStatus.WaitingForExternalPower:
            case TransferStatus.WaitingForExternalPowerDueToBatterySaverMode:
            case TransferStatus.WaitingForNonVoiceBlockingNetwork:
            case TransferStatus.WaitingForWiFi:
                BackgroundTransferRequestStateChanged?.Raise(e.Request, DownloadRequestState.Paused);
                break;
            }
        }
Example #2
0
        void transferRequest_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            switch (e.Request.TransferStatus)
            {
                case TransferStatus.Completed:
                    if (e.Request.StatusCode == 200 || e.Request.StatusCode == 206)
                    {
                        MessageBox.Show("下载完成");

                    }
                    else
                    {
                        if (e.Request.TransferError != null)
                        {
                            MessageBox.Show(e.Request.TransferError.Message);
                        }
                    }
                    BackgroundTransferRequest temp = BackgroundTransferService.Find(e.Request.RequestId);
                    if (temp != null)
                    {
                        BackgroundTransferService.Remove(temp);
                    }
                    break;
                case TransferStatus.Waiting:

                    break;
                case TransferStatus.WaitingForWiFi:


                    break;

            }
        }
Example #3
0
 void BTR_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     if (e.Request.TransferStatus == TransferStatus.Completed)
     {
         Uploading = false;
         if (e.Request.StatusCode == 200)
         {
             using (IsolatedStorageFile iso = IsolatedStorageFile.GetUserStoreForApplication())
             {
                 if (iso.FileExists(SAVE_RESPONSE_LOCATION))
                 {
                     IsolatedStorageFileStream fs = new IsolatedStorageFileStream(SAVE_RESPONSE_LOCATION, System.IO.FileMode.Open, iso);
                     //byte[] buffer = new byte[fs.Length];
                     //fs.Read(buffer, 0, (int)fs.Length);
                     StreamReader str  = new StreamReader(fs);
                     string       resp = str.ReadToEnd();
                     fs.Close();
                     JsonObject jobj = (JsonObject)SimpleJson.DeserializeObject(resp);
                     string     userid;
                     IsolatedStorageSettings.ApplicationSettings.TryGetValue("userid", out userid);
                     if (userid != null)
                     {
                         _heroku.AddBackup(jobj["key"].ToString(), jobj["url"].ToString(), userid);
                     }
                     iso.DeleteFile(SAVE_RESPONSE_LOCATION);
                     _uploadCallback.Invoke(new AsyncCallbackEvent("success"));
                 }
             }
         }
         BackgroundTransferService.Remove(e.Request);
     }
     Debug.WriteLine(e.Request.TransferStatus);
 }
 void request_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     if (TransferProgressChanged != null)
     {
         TransferProgressChanged(sender, new TransferEventArgs(this));
     }
 }
Example #5
0
        void OnBackgroundTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            if (e.Request.TransferStatus == TransferStatus.Completed)
            {
                BackgroundTransferService.Remove(e.Request);

                if (_idMapping.ContainsKey(e.Request.RequestId))
                {
                    _idMapping[e.Request.RequestId].Invoke(e.Request);
                    _idMapping.Remove(e.Request.RequestId);
                }

                // Check if there are pending downloads, if there are then queue them up with background transfer service now.
                if (_requests.Count > 0)
                {
                    try
                    {
                        BackgroundTransferService.Add(_requests[0]);
                        _requests.RemoveAt(0);
                    }
                    catch (InvalidOperationException)
                    {
                    }
                }
            }
        }
Example #6
0
        void BTR_Download_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            if (e.Request.TransferStatus == TransferStatus.Completed)
            {
                Downloading = false;
                if (e.Request.StatusCode == 200)
                {
                    using (IsolatedStorageFile iso = IsolatedStorageFile.GetUserStoreForApplication())
                    {
                        if (iso.FileExists(DOWNLOAD_LOCATION))
                        {
                            iso.CopyFile(DOWNLOAD_LOCATION, "/cars.sdf", true);
                        }
                    }
                    string DBConnectionString = "Data Source=isostore:/cars.sdf";
                    App.ViewModel.Database.Dispose();

                    /*
                     * App.ViewModel.Database.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues,App.ViewModel.Database.carInfo);
                     * App.ViewModel.Database.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, App.ViewModel.Database.fuelInfo);
                     * App.ViewModel.Database.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, App.ViewModel.Database.maintInfo);
                     * App.ViewModel.Database.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, App.ViewModel.Database.settingsInfo);
                     */
                    App.ViewModel = new Data(DBConnectionString);
                }
                BackgroundTransferService.Remove(e.Request);
            }
            Debug.WriteLine(e.Request.TransferStatus);
            Debug.WriteLine("downloaded-" + e.Request.BytesReceived);
        }
 void onTransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     if (TransferProgressChanged != null)
     {
         TransferProgressChanged(sender, e);
     }
 }
        void OnBackgroundTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            if (e.Request.TransferStatus == TransferStatus.Completed)
            {
                BackgroundTransferService.Remove(e.Request);

                if (_idMapping.ContainsKey(e.Request.RequestId))
                {
                    _idMapping[e.Request.RequestId].Invoke(e.Request);
                    _idMapping.Remove(e.Request.RequestId);
                }

                // Check if there are pending downloads, if there are then queue them up with background transfer service now.
                if (_requests.Count > 0)
                {
                    try
                    {
                        BackgroundTransferService.Add(_requests[0]);
                        _requests.RemoveAt(0);
                    }
                    catch (InvalidOperationException)
                    {
                    }
                }
            }
        }
        void current_request_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            switch (e.Request.TransferStatus)
            {
            case TransferStatus.Completed:
                if (e.Request.StatusCode != 0)
                {
                    string[] filename = e.Request.Tag.Split('|');
                    ISOHelper.MoveFileOverwrite(e.Request.DownloadLocation.OriginalString, filename[0]);
                    BackgroundTransferService.Remove(e.Request);
                }
                long totaldata    = 0;
                long session_data = 0;

                IsolatedStorageSettings.ApplicationSettings.TryGetValue("total_data", out totaldata);
                totaldata += e.Request.BytesReceived / 1024 / 1024;
                IsolatedStorageSettings.ApplicationSettings["total_data"] = totaldata;
                IsolatedStorageSettings.ApplicationSettings.TryGetValue("session_data", out session_data);
                session_data += e.Request.BytesReceived / 1024 / 1024;
                IsolatedStorageSettings.ApplicationSettings["session_data"] = session_data;
                IsolatedStorageSettings.ApplicationSettings.Save();
                if (!Cancelled)
                {
                    //RaiseCompleted(new FileDownloadEvntArgs("Completed"));
                    Message.SetMessage("Downloading complete");
                }
                if (SOURCES.Count == 0)
                {
                    //RaiseSyncChange(new FileDownloadEvntArgs("Completed"));
                    Message.SetMessage("Downloading complete");
                }
                break;
            }
        }
Example #10
0
 private void OnTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     if (e.Request.UploadLocation.OriginalString.ToLower().Equals((TransfersFiles + filename).ToLower()))
     {
         ProcessTransfer(e.Request);
     }
     UpdateRequestsList();
 }
 private async void DownloaderOnTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     if (e.Request.TransferStatus == TransferStatus.Completed)
     {
         var request = e.Request;
         await SyncService.Current.MoveCompleted(request);
     }
 }
 /// <summary>
 /// Handles TransferProgressChanged events from a BackgroundTransferRequest.
 /// </summary>
 private void HandleTransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     BackgroundTransferRequest request = e.Request;
     long totalBytesToReceive = request.TotalBytesToReceive;
     long bytesReceived = request.BytesReceived;
     var args = new LiveOperationProgress(bytesReceived, totalBytesToReceive);
     this.OnProgressChanged(args);
 }
 /// <summary>
 /// Handles TransferProgressChanged events from a BackgroundTransferRequest.
 /// </summary>
 private void HandleTransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     BackgroundTransferRequest request = e.Request;
     long totalBytesToSend = request.TotalBytesToSend;
     long bytesSent = request.BytesSent;
     var result = new LiveOperationProgress(bytesSent, totalBytesToSend);
     this.OnProgressChanged(result);
 }
Example #14
0
        void BTR_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            Debug.WriteLine("Sent" + e.Request.BytesSent);
            Debug.WriteLine("Received" + e.Request.BytesReceived);
            double tranferredData = e.Request.BytesSent / e.Request.TotalBytesToSend;

            _uplaodProgressChangeCallback(new AsyncCallbackEvent(tranferredData));
        }
 void StatsPage_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     ProgressReporter.ProgressInfo pinfo = p_reporter.GetProgressInfo(e.Request);
     title.Text = "Downloading... "+pinfo.Title;
     progressbar.Value = pinfo.FileProgress;
     speedtxt.Text = pinfo.Speed + " Kb/s";
     last_ti = DateTime.Now;
     UpdateUsageData();
 }
Example #16
0
 void StatsPage_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     ProgressReporter.ProgressInfo pinfo = p_reporter.GetProgressInfo(e.Request);
     title.Text        = "Downloading... " + pinfo.Title;
     progressbar.Value = pinfo.FileProgress;
     speedtxt.Text     = pinfo.Speed + " Kb/s";
     last_ti           = DateTime.Now;
     UpdateUsageData();
 }
        /// <summary>
        /// Handles TransferProgressChanged events from a BackgroundTransferRequest.
        /// </summary>
        private void HandleTransferProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            BackgroundTransferRequest request = e.Request;
            long totalBytesToReceive          = request.TotalBytesToReceive;
            long bytesReceived = request.BytesReceived;
            var  args          = new LiveOperationProgress(bytesReceived, totalBytesToReceive);

            this.OnProgressChanged(args);
        }
Example #18
0
        void ProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            var progressUpdate = new PluginResult(PluginResult.Status.OK);

            progressUpdate.KeepCallback = true;
            progressUpdate.Message      = String.Format("{{\"progress\":{{\"bytesReceived\":{0}, \"totalBytesToReceive\":{1} }}}}", e.Request.BytesReceived, e.Request.TotalBytesToReceive);

            DispatchCommandResult(progressUpdate, _activDownloads[((BackgroundTransferRequest)sender).Tag].CallbackId);
        }
Example #19
0
        /// <summary>
        /// Handles TransferProgressChanged events from a BackgroundTransferRequest.
        /// </summary>
        private void HandleTransferProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            BackgroundTransferRequest request = e.Request;
            long totalBytesToSend             = request.TotalBytesToSend;
            long bytesSent = request.BytesSent;
            var  result    = new LiveOperationProgress(bytesSent, totalBytesToSend);

            this.OnProgressChanged(result);
        }
        private void TransferFailed(object sender, BackgroundTransferEventArgs e)
        {
            if (_monitor.ErrorMessage.Contains("canceled")) return; //The failed event is raised when a user cancels the transfer, but we don't want to show the retry dialog here

            var result = MessageBox.Show("This download failed. Would you like to try again?", "Retry download?",
                                         MessageBoxButton.OKCancel);

            if (result == MessageBoxResult.OK)
                RestartDownload();
        }
Example #21
0
        void btr_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            bool isUploading = e.Request.TotalBytesToSend > 0 ? true : false;

            if (null != DownloadUploadProgress)
                DownloadUploadProgress(this,
                    new DownloadUploadProgressEventArgs(isUploading,
                                                        isUploading ? e.Request.BytesSent : e.Request.BytesReceived,
                                                        isUploading ? e.Request.TotalBytesToSend : e.Request.TotalBytesToReceive));
        }
Example #22
0
        private static void OnTransferProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            var request = sender as BackgroundTransferRequest;

            if (request == null)
            {
                return;
            }

            BackgroundTransferRequestStateChanged?.Raise(request, DownloadRequestState.Downloading);
        }
        /// <summary>
        /// Automatically removes a monitor from the queue when it is canceled.
        /// </summary>
        private void TransferCanceled(object sender, BackgroundTransferEventArgs transferEventArgs)
        {
            if (transferEventArgs == null)
                throw new ArgumentNullException("transferEventArgs");

            var monitor = sender as TransferMonitor;
            if (monitor == null ||  monitor.ErrorMessage.Contains("canceled")==false) return;

            UnsubscribeMonitor(monitor);
            if (_list.Contains(monitor))
                _list.Remove(monitor);
        }
        /// <summary>
        /// Updates the progress bar and status text when the progress updates
        /// </summary>
        /// <param name="sender">the request</param>
        /// <param name="e">the background transfer event</param>
        private void RequestProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            if (ProgressChanged != null)
            {
                ProgressChanged(this, e);
            }

            State = TransferType == TransferType.Upload
                        ? TransferRequestState.Uploading
                        : TransferRequestState.Downloading;
            StatusText = TransferringStatusText();
        }
        /// <summary>
        /// Provides an handler for changes of transfer progress. Mainly used to update UI.
        /// Event argument contains BytesReceived / BytesSent that represent current transfer status
        /// and TotalBytesToReceive / TotalBytesToSend that represent the amount to transfer.
        /// 
        /// NOTE: TotalBytesToReceive can be -1 if the amount to receive is unknown.
        /// </summary>
        /// <param name="sender">The sender object.</param>
        /// <param name="e">The event args.</param>
        public override void TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            // If TotalBytesToReceive == -1 the transfer is indeterminate
            IsIndeterminateTransfer = (e.Request.TotalBytesToReceive == -1 && TransferStatus == ExtendedTransferStatus.Transferring);

            TotalBytesToTransfer = e.Request.TotalBytesToReceive;
            BytesTransferred = e.Request.BytesReceived;

            if (!IsIndeterminateTransfer)
                TransferProgress = (double)BytesTransferred / (double)TotalBytesToTransfer;
            else
                TransferProgress = 0;
        }
Example #26
0
        /// <summary>
        /// Callback used to listen to BackgroundTransferRequest.TransferStatusChanged events.
        /// This method ignores all TransferStatus changes except for TransferStatus.Completed.
        /// </summary>
        /// <param name="sender">The sender of the call.</param>
        /// <param name="e">The eventargs from the BackgroundTransferRequest.</param>
        private void HandleTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            BackgroundTransferRequest request = e.Request;

            if (request.TransferStatus != TransferStatus.Completed)
            {
                return;
            }

            request.TransferStatusChanged -= this.HandleTransferStatusChanged;

            this.OnTransferStatusComplete(request);
        }
 void Request_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     ProgressReporter.ProgressInfo P = progrss_report.GetProgressInfo(e.Request);
     System.Windows.Deployment.Current.Dispatcher.BeginInvoke(() =>
     {
         proindicator.IsVisible = true;
         proindicator.Text      = "Downloading... " + P.Title;
         proindicator.Value     = P.FileProgress;
     });
     if (P.FileProgress > 0.90f && !back_worker.IsBusy)
     {
         back_worker.RunWorkerAsync(index);
     }
 }
Example #28
0
        private void request_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            BackgroundTransferRequest request = e.Request;

            //While the transfer is still active
            if (request.TransferStatus == TransferStatus.Transferring)
            {
                //Notify about progress change
                if (DownloadProgress != null)
                {
                    DownloadProgress(this, new DownloadProgressEventArgs(request.BytesReceived, request.TotalBytesToReceive));
                }
            }
        }
        private void TransferFailed(object sender, BackgroundTransferEventArgs e)
        {
            if (_monitor.ErrorMessage.Contains("canceled"))
            {
                return;                                             //The failed event is raised when a user cancels the transfer, but we don't want to show the retry dialog here
            }
            var result = MessageBox.Show("This download failed. Would you like to try again?", "Retry download?",
                                         MessageBoxButton.OKCancel);

            if (result == MessageBoxResult.OK)
            {
                RestartDownload();
            }
        }
Example #30
0
 private void transferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     switch (e.Request.TransferStatus)
     {
     case TransferStatus.Completed:
         // If the status code of a completed transfer is 200 or 206, the
         // transfer was successful
         if (e.Request.TransferError == null &&
             (e.Request.StatusCode == 200 || e.Request.StatusCode == 206))
         {
             Debug.WriteLine("Transfer request completed succesfully.");
             EpisodeDownloadState = PodcastEpisodeModel.EpisodeDownloadStateEnum.Downloaded;
             Debug.WriteLine(" * Episode download state: " + EpisodeDownloadState.ToString());
             EpisodePlayState = PodcastEpisodeModel.EpisodePlayStateEnum.Downloaded;
             Debug.WriteLine(" * Episode play state: " + EpisodePlayState.ToString());
         }
         break;
     }
 }
Example #31
0
        private void request_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            BackgroundTransferRequest request = e.Request;

            if (request.TransferStatus == TransferStatus.Completed)
            {
                request.TransferStatusChanged   -= request_TransferStatusChanged;
                request.TransferProgressChanged -= request_TransferProgressChanged;

                if (isAborted)
                {
                    OnDownloadAborted();
                }
                else
                {
                    OnDownloadFinished(request);
                }
            }
        }
        /// <summary>
        /// Automatically removes a monitor from the queue when it is canceled.
        /// </summary>
        private void TransferCanceled(object sender, BackgroundTransferEventArgs transferEventArgs)
        {
            if (transferEventArgs == null)
            {
                throw new ArgumentNullException("transferEventArgs");
            }

            var monitor = sender as TransferMonitor;

            if (monitor == null || monitor.ErrorMessage.Contains("canceled") == false)
            {
                return;
            }

            UnsubscribeMonitor(monitor);
            if (_list.Contains(monitor))
            {
                _list.Remove(monitor);
            }
        }
Example #33
0
        void request_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            BackgroundTransferRequest transfer = e.Request;
            if (transfer.StatusCode == 200 || transfer.StatusCode == 206)
            {
                using (IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForApplication())
                {

                    if (isoStore.FileExists(savePlace))
                    {
                        //    isoStore.DeleteFile(savePlace);
                        //    isoStore.Dispose();
                    }
                    else
                    {
                        isoStore.MoveFile(transfer.DownloadLocation.OriginalString, savePlace);
                        webRequestManager.RemoveKey(key);
                    }
                }
            }
        }
Example #34
0
        void transfer_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            ReceivedChatBubble chatBubble;

            requestIdChatBubbleMap.TryGetValue(e.Request.RequestId, out chatBubble);
            if (chatBubble != null)
            {
                if (chatBubble.FileAttachment.FileState != Attachment.AttachmentState.CANCELED)
                {
                    chatBubble.updateProgress(e.Request.BytesReceived * 100 / e.Request.TotalBytesToReceive);
                }
                else
                {
                    try
                    {
                        BackgroundTransferRequest transferRequest = BackgroundTransferService.Find(e.Request.RequestId);
                        BackgroundTransferService.Remove(transferRequest);
                    }
                    catch (InvalidOperationException)
                    { }
                }
            }
        }
Example #35
0
        private void TransferStatusChanged(object sender, BackgroundTransferEventArgs backgroundTransferEventArgs)
        {
            var transfer = backgroundTransferEventArgs.Request;

            if (transfer.TransferStatus == TransferStatus.Completed)
            {
                // If the status code of a completed _transfer is 200 or 206, the _transfer was successful
                if (transfer.StatusCode == 200 || transfer.StatusCode == 206)
                {
                    MoveFile(transfer);
                    DispatchCommandResult(new PluginResult(PluginResult.Status.OK), _activDownloads[transfer.Tag].CallbackId);

                    _activDownloads.Remove(transfer.Tag);
                }
                else
                {
                    var strErrorMessage = transfer.TransferError != null ? transfer.TransferError.Message : "Unspecified transfer error";
                    DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, strErrorMessage), _activDownloads[transfer.Tag].CallbackId);
                    //_activDownload.Remove(transfer.Tag);
                }
                CleanUp(transfer);
            }
        }
Example #36
0
        void btr_UploadTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            if (e.Request.TransferStatus == Microsoft.Phone.BackgroundTransfer.TransferStatus.Completed)
            {
                using (IsolatedStorageFile iso = IsolatedStorageFile.GetUserStoreForApplication())
                {
                    if (iso.FileExists(e.Request.UploadLocation.OriginalString))
                        iso.DeleteFile(e.Request.UploadLocation.OriginalString);
                }

                Microsoft.Phone.BackgroundTransfer.BackgroundTransferService.Remove(e.Request);

                if (null != e.Request.TransferError)
                {
                    //LOG error
                }
                else
                {
                    if (null != UploadFinished)
                        UploadFinished(this, new DownloadUploadFinishedEventArgs());
                }

            }
        }
Example #37
0
 void item_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     try
     {               
         if (countDownload == imagesUri.Count)
         {
             TxtCantidad.Text = string.Format("Bytes Recibidos: {0}/0", 0);
         }
         else
         {
             TxtCantidad.Text = string.Format("Bytes Recibidos: {0}/{1}", e.Request.BytesReceived.ToString(), e.Request.TotalBytesToReceive);
         }
     }
     catch
     {
     }
 }
 void request_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     if (TransferStatusChanged != null)
         TransferStatusChanged(sender, new TransferEventArgs(this));
 }
 /// <summary>
 /// This method handles the TransferStatusChanged event raised by a BackgroundTransferRequest and processes the new status.
 /// </summary>
 /// <param name="sender">The sender object.</param>
 /// <param name="e">The event arguments. The BackgroundTransferRequest object is stored in the Request property.</param>
 void TransferRequest_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     ProcessTransfer(e.Request);
 }
        void onTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            if (TransferStatusChanged != null)
            {
                TransferStatusChanged(sender, e);
            }

            BackgroundTransferRequest request = e.Request;

            switch (request.TransferStatus)
            {
            case TransferStatus.Completed:
                if (request.StatusCode == 200 || request.StatusCode == 206)
                {
                    if (TransferSuccess != null)
                    {
                        TransferSuccess(sender, e);
                    }
                }
                else
                {
                    if (TransferError != null)
                    {
                        TransferError(sender,
                                      new MowblyBackgroundTransferEventArgs(
                                          e, e.Request.StatusCode.ToString()));
                    }
                }

                // Remove the request from queue
                Remove(request);
                break;

            case TransferStatus.Unknown:
            case TransferStatus.None:
                // Unknown status, request is not usable. Remove from queue.
                Logger.Error("Request [" + e.Request.RequestUri + "] has gone into status - " + request.TransferStatus);
                Remove(request);
                if (TransferError != null)
                {
                    TransferError(sender,
                                  new MowblyBackgroundTransferEventArgs(
                                      e, Mowbly.GetString(Constants.STRING_UNKNOWN_ERROR)));
                }
                break;

            case TransferStatus.Waiting:
            case TransferStatus.WaitingForExternalPower:
            case TransferStatus.WaitingForExternalPowerDueToBatterySaverMode:
            case TransferStatus.WaitingForNonVoiceBlockingNetwork:
            case TransferStatus.WaitingForWiFi:
                Logger.Error("Request [" + e.Request.RequestUri + "] has gone into status - " + request.TransferStatus);
                Remove(request);
                if (TransferError != null)
                {
                    TransferError(sender,
                                  new MowblyBackgroundTransferEventArgs(
                                      e, Mowbly.GetString(Constants.STRING_BACKGROUND_TRANSFER_WAITING)));
                }
                break;

            case TransferStatus.Paused:
                Logger.Debug("Request [" + e.Request.RequestUri + "] paused");
                break;
            }
        }
 internal MowblyBackgroundTransferEventArgs(BackgroundTransferEventArgs e, string errorText)
     : this(e)
 {
     this.errorText = errorText;
 }
 void transfer_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     ProcessTransfer(e.Request);
     UpdateUI();
 }
        void current_request_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            switch (e.Request.TransferStatus)
            {
                case TransferStatus.Completed:
                    if (e.Request.StatusCode != 0)
                    {
                        string[] filename = e.Request.Tag.Split('|');
                        ISOHelper.MoveFileOverwrite(e.Request.DownloadLocation.OriginalString, filename[0]);
                        BackgroundTransferService.Remove(e.Request);
                    }
                    long totaldata = 0;
                    long session_data = 0;

                    IsolatedStorageSettings.ApplicationSettings.TryGetValue("total_data", out totaldata);
                    totaldata += e.Request.BytesReceived / 1024 / 1024;
                    IsolatedStorageSettings.ApplicationSettings["total_data"] = totaldata;
                    IsolatedStorageSettings.ApplicationSettings.TryGetValue("session_data", out session_data);
                    session_data += e.Request.BytesReceived / 1024 / 1024;
                    IsolatedStorageSettings.ApplicationSettings["session_data"] = session_data;
                    IsolatedStorageSettings.ApplicationSettings.Save();
                    if(!Cancelled)
                        //RaiseCompleted(new FileDownloadEvntArgs("Completed"));
                        Message.SetMessage("Downloading complete");
                    if (SOURCES.Count == 0)
                        //RaiseSyncChange(new FileDownloadEvntArgs("Completed"));
                        Message.SetMessage("Downloading complete");
                    break;
            }
        }
        /// <summary>
        /// Updates the state of the helper based on the state of the request
        /// </summary>
        /// <param name="sender">The request</param>
        /// <param name="args">The new state of the request</param>
        protected void RequestStateChanged(object sender, BackgroundTransferEventArgs args)
        {
            if (args == null)
            {
                return;
            }
            TransferStatus status = args.Request.TransferStatus;

            switch (status)
            {
            case TransferStatus.None:
                State      = TransferRequestState.Pending;
                StatusText = ControlResources.StatusPending;
                break;

            case TransferStatus.Transferring:
                if (BytesTransferred <= 0)
                {
                    State = TransferRequestState.Pending;
                }
                else
                {
                    State = TransferType == TransferType.Upload ? TransferRequestState.Uploading : TransferRequestState.Downloading;
                }

                StatusText = TransferringStatusText();
                break;

            case TransferStatus.Waiting:
                State      = TransferRequestState.Waiting;
                StatusText = ControlResources.StatusWaiting;
                break;

            case TransferStatus.WaitingForWiFi:
                State      = TransferRequestState.Waiting;
                StatusText = ControlResources.StatusWaitingForWiFi;
                break;

            case TransferStatus.WaitingForExternalPower:
                State      = TransferRequestState.Waiting;
                StatusText = ControlResources.StatusWaitingForExternalPower;
                break;

            case TransferStatus.WaitingForExternalPowerDueToBatterySaverMode:
                State      = TransferRequestState.Waiting;
                StatusText = ControlResources.StatusWaitingForExternalPowerDueToBatterySaverMode;
                break;

            case TransferStatus.WaitingForNonVoiceBlockingNetwork:
                State      = TransferRequestState.Waiting;
                StatusText = ControlResources.StatusWaitingForNonVoiceBlockingNetwork;
                break;

            case TransferStatus.Paused:
                State      = TransferRequestState.Paused;
                StatusText = ControlResources.StatusPaused;
                break;

            case TransferStatus.Completed:
                if (_request.TransferError != null)
                {
                    ErrorMessage = _request.TransferError.Message;
                    State        = TransferRequestState.Failed;
                    StatusText   = ErrorMessage.Contains("canceled") ? ControlResources.StatusCancelled : ControlResources.StatusFailed;
                }
                else
                {
                    State      = TransferRequestState.Complete;
                    StatusText = ControlResources.StatusComplete;
                }
                break;

            case TransferStatus.Unknown:
                State      = TransferRequestState.Unknown;
                StatusText = ControlResources.StatusCancelled;
                break;
            }
        }
Example #45
0
 void item_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     try
     {
         if (countDownload == imagesUri.Count)
         {
             TxtTitulos.Text = "Process Completed";
             CambiarFotosDescargadas();
             MessageBox.Show("Process Completed", "State Download...", MessageBoxButton.OK);
             NavigationService.Navigate(new Uri("/Views/MainPage.xaml", UriKind.Relative));
         }
         else
         {
             if (e.Request.TransferStatus.ToString() == "Completed")
             {
                 countDownload++;
                 TxtImagen.Text = string.Format("Imagen : {0} --- {1} - Imagen : {2}", countDownload, imagesUri.Count, ImagesDetails[countDownload - 1]);
             }
             else
             {
                 TxtImagen.Text = string.Format("Imagen : {0} --- {1} - Imagen : {2}", countDownload, imagesUri.Count, ImagesDetails[countDownload - 1]);
             }
         }
     }
     catch
     {
     }
 }
        private void transfer_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            ProcessTransfer(e.Request);

            // Update the tiles if complete
            if (tileImages.Count >= MAX_TILE_IMAGE_COUNT)
            {
                new Thread(() =>
                {
                    UpdateLiveTiles();
                }).Start();
            }
        }
Example #47
0
 private void transferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     DownloadPercentage = (int)(((float)e.Request.BytesReceived / (float)e.Request.TotalBytesToReceive) * 100);
 }
        private void TransferStatusChanged(object sender, BackgroundTransferEventArgs backgroundTransferEventArgs)
        {
            var transfer = backgroundTransferEventArgs.Request;

            if (transfer.TransferStatus == TransferStatus.Completed)
            {
                // If the status code of a completed _transfer is 200 or 206, the _transfer was successful
                if (transfer.StatusCode == 200 || transfer.StatusCode == 206)
                {
                    MoveFile(transfer);
                    DispatchCommandResult(new PluginResult(PluginResult.Status.OK), _activDownloads[transfer.Tag].CallbackId);

                    _activDownloads.Remove(transfer.Tag);
                }
                else
                {
                    var strErrorMessage = transfer.TransferError != null ? transfer.TransferError.Message : "Unspecified transfer error";
                    DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, strErrorMessage), _activDownloads[transfer.Tag].CallbackId);
                    //_activDownload.Remove(transfer.Tag);
                }
                CleanUp(transfer);
            }
        }
        void ProgressChanged(object sender, BackgroundTransferEventArgs e)
        {
            var progressUpdate = new PluginResult(PluginResult.Status.OK);

            progressUpdate.KeepCallback = true;
            progressUpdate.Message = String.Format("{{\"progress\":{{\"bytesReceived\":{0}, \"totalBytesToReceive\":{1} }}}}", e.Request.BytesReceived, e.Request.TotalBytesToReceive);

            DispatchCommandResult(progressUpdate, _activDownloads[((BackgroundTransferRequest)sender).Tag].CallbackId);
        }
Example #50
0
 private void MainPage_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     UpdateUI();
 }
 private async void DownloaderOnTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     if (e.Request.TransferStatus == TransferStatus.Completed)
     {
         var request = e.Request;
         await SyncService.Current.MoveCompleted(request);
     }
 }
 void backgroundTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     ResetStatusFlags();
     ProcessTransfer(e.Request);
     UpdateUI(e.Request);
 }
 void transfer_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     UpdateUI();
 }
Example #54
0
 void _request_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     Bar.Value = _request.BytesReceived*100/_request.TotalBytesToReceive;
 }
 void Request_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     ProgressReporter.ProgressInfo P = progrss_report.GetProgressInfo(e.Request);
     System.Windows.Deployment.Current.Dispatcher.BeginInvoke(() =>
     {
         proindicator.IsVisible = true;
         proindicator.Text = "Downloading... "+P.Title;
         proindicator.Value = P.FileProgress;
     });
     if(P.FileProgress > 0.90f && !back_worker.IsBusy)
         back_worker.RunWorkerAsync(index);
 }
Example #56
0
 void _request_TransferStatusChanged(object sender, BackgroundTransferEventArgs e)
 {
     if (e.Request.TransferStatus == TransferStatus.Completed)
     {
         if (e.Request.StatusCode == 200 || e.Request.StatusCode == 206)
         {
             btnMove.IsEnabled = true;
             //to do something else
         }
     }
 }
 internal MowblyBackgroundTransferEventArgs(BackgroundTransferEventArgs e)
 {
     this.request = e.Request;
 }
Example #58
0
        void btr_DownloadTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            System.Diagnostics.Debug.WriteLine(e.Request.TransferStatus);

            if (e.Request.TransferStatus == Microsoft.Phone.BackgroundTransfer.TransferStatus.Completed)
            {
                Microsoft.Phone.BackgroundTransfer.BackgroundTransferService.Remove(e.Request);

                if (null != e.Request.TransferError)
                {
                    //LOG error
                }
                else
                {
                    //Overwrite the DB
                    using (IsolatedStorageFile iso = IsolatedStorageFile.GetUserStoreForApplication())
                    {
                        iso.CopyFile("/" + TransfersFiles + "/" + downloadedDBName, "/" + localDBName, true);
                        iso.DeleteFile("/" + TransfersFiles + "/" + downloadedDBName);

                        if (null != DownloadFinished)
                            DownloadFinished(this, new DownloadUploadFinishedEventArgs());
                    }
                }
            }
        }
        /// <summary>
        /// Callback used when the requests TransferStatusChanged event fires.
        /// Checks to see if the status changed to Completed and calls OnTransferStatusComplete
        /// if it did.
        /// </summary>
        private void HandleTransferStatusChanged(object sender, BackgroundTransferEventArgs e)
        {
            BackgroundTransferRequest request = e.Request;
            if (request.TransferStatus != TransferStatus.Completed)
            {
                return;
            }

            request.TransferStatusChanged -= this.HandleTransferStatusChanged;

            this.OnTransferStatusComplete(request);
        }
Example #60
0
 private void MainPage_TransferProgressChanged(object sender, BackgroundTransferEventArgs e)
 {
     double downloadProgress = (e.Request.BytesReceived * 100.0) / e.Request.TotalBytesToReceive;
     DownloadProgress.Value = downloadProgress;
 }