/// <summary>
        /// See <see cref="IDisposable.Dispose" /> for more information.
        /// </summary>
        public void Dispose()
        {
            if (_stream != null)
            {
                _stream.Close();
                _stream = null;
            }

            _fileName = null;
            _dataMap  = null;
            GC.SuppressFinalize(this);
        }
 private void ReInitialize()
 {
     _dataMap = new DataMap();
     _dataMap.AddFirst(new FileDataBlock(0, _stream.Length));
     _totalLength = _stream.Length;
 }