Beispiel #1
0
 private RevisionId GetToRevision(RevisionRange processedRevisionRange, RevisionId newToRevision)
 {
     if (RevisionComparer.Is(newToRevision).GreaterThan(processedRevisionRange.ToChangeset))
     {
         return(newToRevision);
     }
     return(processedRevisionRange.ToChangeset);
 }
Beispiel #2
0
        /// <summary>
        /// Sorts an array of <see cref="SccStamp"/> objects by their
        /// revision numbers in ascending or descending order.
        /// </summary>

        public static void SortByRevision(SccStamp[] stamps, bool descending)
        {
            IComparer comparer = new RevisionComparer();

            if (descending)
            {
                comparer = new ReverseComparer(comparer);
            }

            Array.Sort(stamps, comparer);
        }
Beispiel #3
0
        private RevisionId GetFromRevision(RevisionRange processedRevisionRange, RevisionId newFromRevision)
        {
            if (RevisionComparer.Is(StartRevision).LessThan(newFromRevision))
            {
                newFromRevision = StartRevision;
            }

            if (RevisionComparer.Is(newFromRevision).LessThan(processedRevisionRange.FromChangeset))
            {
                return(newFromRevision);
            }
            return(processedRevisionRange.FromChangeset);
        }
Beispiel #4
0
        protected void SetStartRevisionBy(RevisionRange[] revisionRanges)
        {
            if (revisionRanges.Empty())
            {
                return;
            }

            var newFromRevision = RevisionComparer.FindMinFromRevision(revisionRanges);
            var newToRevision   = RevisionComparer.FindMaxToRevision(revisionRanges);
            var processedRevisionRangeStorage = Storage.Get <RevisionRange>();
            var processedRevisionRange        = processedRevisionRangeStorage.SingleOrDefault() ?? new RevisionRange(newFromRevision, newToRevision);
            var newProcessedRevisionRange     = new RevisionRange(GetFromRevision(processedRevisionRange, newFromRevision),
                                                                  GetToRevision(processedRevisionRange, newToRevision));

            processedRevisionRangeStorage.Clear();
            processedRevisionRangeStorage.Add(newProcessedRevisionRange);
        }
Beispiel #5
0
        /// <summary>
        /// Sorts an array of <see cref="SccStamp"/> objects by their 
        /// revision numbers in ascending or descending order.
        /// </summary>
        public static void SortByRevision(SccStamp[] stamps, bool descending)
        {
            IComparer comparer = new RevisionComparer();

            if (descending)
                comparer = new ReverseComparer(comparer);

            Array.Sort(stamps, comparer);
        }