示例#1
0
        /// <summary>
        ///     Creates a copy of the storage info and filters chunks
        /// </summary>
        /// <returns>Copied storage info</returns>
        internal StorageInfo StableChunks()
        {
            if (_stableChunkList == null)
            {
                _stableChunkList = ChunkList.Where(c => !c.Changing && c.Type != ChunkTypes.Free).ToList();
                if (Cache != null && Cache._stableChunkList == null)
                {
                    Cache._stableChunkList = _stableChunkList;
                }
            }

            return(new StorageInfo {
                Initialized = Initialized, ModifiedVersion = ModifiedVersion, AddedVersion = AddedVersion, RemovedVersion = RemovedVersion, ChunkList = _stableChunkList
            });
        }