GitSharp.Core.Transport.WalkFetchConnection.doFetch C# (CSharp) Method

doFetch() protected method

protected doFetch ( ProgressMonitor monitor, List want, List have ) : void
monitor ProgressMonitor
want List
have List
return void
        protected override void doFetch(ProgressMonitor monitor, List<Ref> want, List<ObjectId> have)
        {
            MarkLocalRefsComplete(have);
            QueueWants(want);

            while (!monitor.IsCancelled && _workQueue.Count > 0)
            {
                ObjectId id = _workQueue.First.Value;
                _workQueue.RemoveFirst();
                RevObject ro = (id as RevObject);
                if (ro == null || !ro.has(COMPLETE))
                {
                    DownloadObject(monitor, id);
                }
                Process(id);
            }
        }