Beispiel #1
0
 private void ClearTxRx_Click(object sender, EventArgs e)
 {
     TxRx.Clear();
 }
Beispiel #2
0
 public async Task TransferRun(TransferQueue <FileInfo> Items, TxRx Direction, bool Continous = false)
 {
     await TransferRun(Items, null, Direction, Continous);
 }
Beispiel #3
0
        public async Task TransferRun(TransferQueue <FileInfo> Items, TransferQueue <FileInfo> Finished, TxRx Direction, bool Continous = false)
        {
            if (IsOpen == false)
            {
                await Open();
            }

            if (IsOpen)
            {
                FileInfo item;

                while (Items.Count > 0 || Continous)
                {
                    item = Items.Dequeue();

                    if (item != null)
                    {
                        if (await ValidateTransfer(item, Direction))
                        {
                            await TransferNext(item, Direction);
                        }
                    }

                    if (Finished != null)
                    {
                        Finished.Enqueue(item);
                    }

                    if (StopTransfer)
                    {
                        break;
                    }
                }
            }
        }
Beispiel #4
0
 public abstract Task <bool> TransferNext(FileInfo item, TxRx Direction);
Beispiel #5
0
 public abstract Task <bool> TransferNext(string FileName, Stream item, TxRx Direction);
Beispiel #6
0
 public abstract Task <int> TransferItemAge(FileInfo item, TxRx Direction);
Beispiel #7
0
 public abstract Task <bool> ValidateTransfer(FileInfo item, TxRx Direction);
Beispiel #8
0
        public void TransferRun(TransferQueue <FileInfo> Items, TransferQueue <FileInfo> Finished, TxRx Direction, bool Continous = false)
        {
            if (IsOpen == false)
            {
                Open();
            }


            Action <FileInfo> Finish;

            if (Finished != null)
            {
                Finish = (x) => { Finished.Enqueue(x); }
            }
            ;
            else
            {
                Finish = (x) => { }
            };

            if (IsOpen)
            {
                FileInfo item;

                while (Items.Count > 0 || Continous)
                {
                    item = Items.Dequeue();

                    if (item != null)
                    {
                        if (ValidateTransfer(item, Direction))
                        {
                            TransferNext(item, Direction);
                        }
                    }

                    Finish(item);


                    if (StopTransfer)
                    {
                        break;
                    }
                }
            }
        }
Beispiel #9
0
 public void TransferRun(TransferQueue <FileInfo> Items, TxRx Direction, bool Continous = false)
 {
     TransferRun(Items, null, Direction, Continous);
 }
Beispiel #10
0
 public abstract bool TransferNext(FileInfo item, TxRx Direction);