Esempio n. 1
0
 private void DownloadFile(FileSharingDetailsTO fileSharingDetails)
 {
     Task.Factory.StartNew(() =>
     {
         Downloading downloading            = new Downloading(fileSharingDetails);
         downloading.DownloadFinishedEvent += DownloadFinished;
         downloading.DownloadStartedEvent  += DownloadStarted;
         downloading.StartDownloadingFile();
     });
 }
        internal static List <FileSharingDetailsTO> GetSharingFilesTOClassifiedByName(List <File> files)
        {
            List <FileSharingDetailsTO> fileSharingDetailsTOs = new List <FileSharingDetailsTO>();

            foreach (File file in files)
            {
                FileSharingDetailsTO fileSharingDetailsTO = new FileSharingDetailsTO();
                fileSharingDetailsTO.FileName = file.FileName;
                fileSharingDetailsTO.Size     = file.Size;
                fileSharingDetailsTO.Peers    = GetAllFileSharingPeers(files, file.FileName);
                fileSharingDetailsTOs.Add(fileSharingDetailsTO);
            }
            return(fileSharingDetailsTOs);
        }
Esempio n. 3
0
        public static FileSharingDetailsTO GetFileToDownloadByName(string fileName)
        {
            //Get the requested file
            FileRequestTO fileRequestTO = new FileRequestTO();

            fileRequestTO.FileName = fileName;
            fileRequestTO.Username = clientDetails.Username;
            fileRequestTO.Password = clientDetails.Password;
            string jsonFileRequest = JsonConvert.SerializeObject(fileRequestTO);

            //Downloading only one file - Get the firs one
            FileSharingDetailsTO requestedFile =
                JsonConvert.DeserializeObject <List <FileSharingDetailsTO> >(proxy.FileRequest(jsonFileRequest))[0];

            return(requestedFile);
        }
Esempio n. 4
0
 private void FileSearchResultsListView_MouseDoubleClick(object sender, MouseButtonEventArgs e)
 {
     if (MessageBox.Show(Consts.DOWNLOAD_CONFIRMATION_DIALOG_MESSAGE, "Download Confirmation", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
     {
         FileView selectedFile = (FileView)FileSearchResultsListView.SelectedItem;
         //Create FileDownlaodView to show in downloadings listView
         FileDownloadView fileDownloadView = new FileDownloadView();
         fileDownloadView.FileName = selectedFile.FileName;
         fileDownloadView.Size     = selectedFile.Size;
         fileDownloadView.Peers    = selectedFile.Peers;
         fileDownloadView.Kbps     = 0;
         fileDownloadView.Time     = TimeSpan.MinValue;
         fileDownloadView.Status   = "";
         if (!ClientUtils.downloadingDictionary.ContainsKey(fileDownloadView.FileName))
         {
             ClientUtils.downloadingDictionary.Add(fileDownloadView.FileName, fileDownloadView);
         }
         downloadingFiles.Add(fileDownloadView);
         DownloadsFilesListView.Items.Refresh();
         FileSharingDetailsTO fileSharingDetails = ClientUtils.GetFileToDownloadByName(selectedFile.FileName);
         DownloadFile(fileSharingDetails);
     }
 }
 public Downloading(FileSharingDetailsTO fileSharingDetails)
 {
     currentlyDownloadingFile = fileSharingDetails;
 }