Пример #1
0
            private int PushBufferInner(byte[] buffer, int startOffset, int count)
            {
                checked
                {
                    using (IChunkerSession inner = _chunker.BeginChunking(FoundChunk))
                    {
                        inner.PushBuffer(buffer, startOffset, count);
                    }

                    //don't trust the last one ...
                    _chunksSeen.RemoveAt(_chunksSeen.Count - 1);

                    ReportChunks();

                    ChunkInfo secondToLastChunk = _chunksSeen.Last();
                    int       bytesChunked      = (int)(secondToLastChunk.Offset + secondToLastChunk.Size);

                    _chunksSeen.Clear();
                    _lastPushBaseline += (uint)bytesChunked;

                    return(bytesChunked);
                }
            }
 /// <inheritdoc />
 public override void Initialize()
 {
     _chunks.Clear();
     _session = _chunker.BeginChunking(SaveChunks);
 }