private void SessionOnFileFound(object sender, HyperFileCheckEventArgs e)
        {
            HyperMeta meta;

            if (_aliveTasks.TryRemove(e.Token, out meta))
            {
                if (meta.FileCheckAwaitable == null)
                {
                    if (meta.SegmentAwaitable != null)
                    {
                        meta.SegmentAwaitable.SetResult(new ReusableObject <byte[]>());
                    }

                    Logger.Error("No awaitable for file check!");
                    return;
                }

                meta.FileCheckAwaitable.SetResult(e.FileSize);
            }
            else
            {
                MissedCheckResponses.Update(1);
            }
        }
Example #2
0
 protected virtual void OnFileFound(HyperFileCheckEventArgs e)
 {
     FileFound?.Invoke(this, e);
 }
Example #3
0
 private void ConnectionOnFileFound(object sender, HyperFileCheckEventArgs e)
 {
     OnFileFound(e);
 }