Example #1
0
        private void ProcessFileEntry(FileEntry fileEntry)
        {
            //Get rid of any streams that will be empty
            if (fileEntry.Filesize == 0)
            {
                fileEntry.Stream?.Dispose();
                fileEntry.Stream = null;
            }

            //Add to the correct
            if (fileEntry.IsDeltaFile())
            {
                DeltaFile.Add(fileEntry);
                return;
            }

            if (fileEntry.IsNewFile())
            {
                NewFile.Add(fileEntry);
                return;
            }

            if (fileEntry.DeltaExtension.EndsWith("load"))
            {
                LoaderFile = fileEntry;
                return;
            }

            SameFile.Add(fileEntry);
        }
Example #2
0
        /// <summary>
        /// Loads everything from a <see cref="IAsyncEnumerable{T}"/> into this <see cref="UpdateEntry"/>
        /// </summary>
        /// <param name="fileEntries">File entries to load in</param>
        public async Task LoadAsyncEnumerable(IAsyncEnumerable <FileEntry?> fileEntries)
        {
            await foreach (var fileEntry in fileEntries)
            {
                /*If the fileEntry is null then something happened while grabbing*
                 * the update files, clear out*/
                if (fileEntry == null)
                {
                    DeltaFile.Clear();
                    SameFile.Clear();
                    NewFile.Clear();
                    break;
                }

                ProcessFileEntry(fileEntry);
            }
        }
Example #3
0
        private async void Button2_Click(object sender, EventArgs e)
        {
            //tokenSource = new CancellationTokenSource();
            //token = tokenSource.Token;

            //task = Task.Run(() => doSomething(200),token);
            //try {
            //    await task;
            //}
            //catch (Exception ex)
            //{
            //    log.Log("task isCanceled:" + task.IsCanceled.ToString());
            //    log.Log("task isCompleted" + task.IsCompleted.ToString());
            //}
            // log.Log(Path.GetExtension("intervju.docx"));
            //FileInfo oneFile = new FileInfo(@"c:\test AB\intervju.docx");
            //FileInfo twoFile = oneFile.;
            //Get original files list
            try
            {
                //this.SetFolderButtonStatus(false);
                StartNewTask();
                CheckFileParameter param = new CheckFileParameter();
                param.OutputDirectory     = this.lbDestination.Text.Trim();
                param.OriginalDirectory   = this.lbOriginal.Text.Trim();
                param.OutputFileExtension = "pdf";
                param.OriginalExtension   = "pdf";
                param.AllExtensionOfLibreOfficeSupporting = "pdf";
                SameFile Threading = new SameFile(this.log, this.tokenSource, param);
                Task     task      = Threading.Run();
                await    task;
                //
            }
            catch (Exception ex)
            {
                log.RecordError(ex.Message);
                //this.SetFolderButtonStatus(true);
            }
            finally
            {
                //this.SetFolderButtonStatus(true);
            }
        }