Ejemplo n.º 1
0
        internal static ProgressVector Clone(ProgressVector originalProgressVector, uint progressVectorMaxEntries, Epoch highestBackedUpEpoch, Epoch headEpoch)
        {
            //try trimming the progress vector before cloning
            originalProgressVector.TrimProgressVectorIfNeeded(highestBackedUpEpoch, headEpoch);

            var copiedProgressVector = new ProgressVector();

            copiedProgressVector.progressVectorMaxEntries = progressVectorMaxEntries;

            foreach (var vector in originalProgressVector.vectors)
            {
                copiedProgressVector.vectors.Add(vector);
            }

            return(copiedProgressVector);
        }