public void OnProviderDownloadStatisticsUpdated(CloudMount mount, StatisticUpdateReason reason, AStatisticFileInfo info) { var cloud = mount.CloudInfo; switch (reason) { case StatisticUpdateReason.DownloadAdded: { var item = new FileItemInfo(cloud.Id, info.Id) { CloudIcon = mount.Instance.CloudServiceIcon, FileName = info.FileName, FullPath = $"{mount.MountLetter}:{info.Path}", ErrorMessage = info.ErrorMessage, Total = info.Total, CloudName = cloud.Name }; DownloadFiles.Remove(item); DownloadFiles.Add(item); } break; case StatisticUpdateReason.DownloadFinished: { DownloadFiles.Remove(new FileItemInfo(cloud.Id, info.Id)); } break; case StatisticUpdateReason.DownloadFailed: { var item = UploadFiles.Single(f => f.Id == info.Id && f.CloudId == cloud.Id); item.ErrorMessage = info.ErrorMessage; DownloadFiles.Remove(item); DownloadFailedFiles.Add(item); if (DownloadFailedFiles.Count > 10) { DownloadFailedFiles.RemoveAt(DownloadFailedFiles.Count - 1); } } break; default: throw new ArgumentOutOfRangeException(); } }
private void Save() { if (DetailsViewEditItem.CurrentMode == DetailsViewMode.Insert) { Logger.LogInfo("DetailsViewEditItem.CurrentMode == DetailsViewMode.Insert", "DownloadFiles"); try { //DetailsViewEditItem.InsertItem(false); DownloadFile downloadFile = new DownloadFile(); var fu = DetailsViewEditItem.FindControl("fuFile") as FileUpload; if (fu != null && fu.HasFile) { downloadFile.FileName = fu.PostedFile.FileName; downloadFile.MimeType = fu.PostedFile.ContentType; string path = WebConfigurationManager.AppSettings["DownloadFilesPath"]; string filePath = Path.Combine(path, downloadFile.FileName); Logger.LogInfo("FileUpload exists", "DownloadFiles"); fu.PostedFile.SaveAs(filePath); Logger.LogInfo("File was saved " + filePath, "DownloadFiles"); } var txtName = DetailsViewEditItem.FindControl("txtName") as TextBox; if (txtName != null) { Logger.LogInfo("txtName exists ", "DownloadFiles"); downloadFile.Name = txtName.Text; } var txtDescription = DetailsViewEditItem.FindControl("txtDescription") as TextBox; if (txtDescription != null) { downloadFile.Description = txtDescription.Text; } var ddl = DetailsViewEditItem.FindControl("ddlCategory") as DropDownList; if (ddl != null) { downloadFile.TypeId = Convert.ToInt32(ddl.SelectedValue); } DownloadFiles m = new DownloadFiles(); Logger.LogInfo("Saving DownloadFiles ", "DownloadFiles"); m.Add(downloadFile); Logger.LogInfo("Saved DownloadFiles ", "DownloadFiles"); ID = downloadFile.ID; uploadImage(); // DetailsViewEditItem.ChangeMode(DetailsViewMode.Edit); } catch (Exception ex) { Logger.LogException(ex, "DownloadFiles"); ShowError(ex); } } else if (DetailsViewEditItem.CurrentMode == DetailsViewMode.Edit) { Logger.LogInfo("DetailsViewEditItem.CurrentMode == DetailsViewMode.Edit", "DownloadFiles"); DetailsViewEditItem.UpdateItem(false); } }
/// <summary> /// Deserializes the object from XML. /// </summary> /// <param name="reader">The xml reader from which to deserialize the object.</param> public void ReadXml(XmlReader reader) { bool booIsEmpty = reader.IsEmptyElement; if (booIsEmpty) { return; } reader.ReadStartElement(); reader.ReadStartElement("sourceUri"); XmlSerializer xsrSerializer = new XmlSerializer(typeof(string)); SourceUri = new Uri((string)xsrSerializer.Deserialize(reader)); reader.ReadEndElement(); reader.ReadStartElement("sourcePath"); xsrSerializer = new XmlSerializer(typeof(string)); SourcePath = (string)xsrSerializer.Deserialize(reader); reader.ReadEndElement(); booIsEmpty = reader.IsEmptyElement; try { reader.ReadStartElement("sourceName"); if (!booIsEmpty) { while (reader.MoveToContent() == XmlNodeType.Element && reader.LocalName == "string") { xsrSerializer = new XmlSerializer(typeof(string)); SourceName.Add((string)xsrSerializer.Deserialize(reader)); } reader.ReadEndElement(); } } catch { } finally { if (SourceName.Count == 0) { SourceName.Add("Default"); } } reader.ReadStartElement("defaultSourcePath"); xsrSerializer = new XmlSerializer(typeof(string)); DefaultSourcePath = (string)xsrSerializer.Deserialize(reader); reader.ReadEndElement(); try { reader.ReadStartElement("status"); xsrSerializer = new XmlSerializer(typeof(TaskStatus)); Status = (TaskStatus)xsrSerializer.Deserialize(reader); reader.ReadEndElement(); } catch { Status = TaskStatus.Paused; } booIsEmpty = reader.IsEmptyElement; reader.ReadStartElement("downloadFiles"); if (!booIsEmpty) { while (reader.MoveToContent() == XmlNodeType.Element && reader.LocalName == "file") { DownloadFiles.Add(new Uri(reader["path"])); booIsEmpty = reader.IsEmptyElement; reader.ReadStartElement("file"); if (!booIsEmpty) { reader.ReadEndElement(); } } reader.ReadEndElement(); } booIsEmpty = reader.IsEmptyElement; reader.ReadStartElement("downloadedFiles"); if (!booIsEmpty) { while (reader.MoveToContent() == XmlNodeType.Element && reader.LocalName == "file") { DownloadedFiles.Add(reader["path"]); booIsEmpty = reader.IsEmptyElement; reader.ReadStartElement("file"); if (!booIsEmpty) { reader.ReadEndElement(); } } reader.ReadEndElement(); } reader.ReadEndElement(); }