Exemplo n.º 1
0
            public int Compare(SelectionCellRangeWithItemsWrapper item)
            {
                if (m_target == item)
                {
                    return(0);
                }

                var xri = m_target.Value;
                var yri = item.Value;

                int compare;

                compare = ItemComparer.Compare(xri.ItemRange, yri.ItemRange);
                if (compare != 0)
                {
                    Debug.Assert(((compare < 0) && ItemRangeComparer.Compare(xri.ItemRange, item) <= 0) ||
                                 ((compare > 0) && ItemRangeComparer.Compare(xri.ItemRange, item) >= 0));

                    return(compare);
                }

                Debug.Assert(ItemRangeComparer.Compare(xri.ItemRange, item) == 0);

                compare = ItemComparer.Compare(xri.CellRange.ColumnRange, yri.CellRange.ColumnRange);
                if (compare != 0)
                {
                    return(compare);
                }

                Debug.Assert(xri.CellRange == yri.CellRange);

                return(m_target.Index - item.Index);
            }
Exemplo n.º 2
0
        public void CompareTitleDesc2()
        {
            ItemComparer comparer         = new ItemComparer("Title", true);
            int          comparisonResult = comparer.Compare(item1, item2);

            Assert.Less(0, comparisonResult);
        }
Exemplo n.º 3
0
        public void CompareTitle2()
        {
            ItemComparer comparer         = new ItemComparer("Title", false);
            int          comparisonResult = comparer.Compare(item1, item2);

            Assert.Greater(0, comparisonResult);
        }
Exemplo n.º 4
0
        public void DefaultComparer()
        {
            ItemComparer comparer         = new ItemComparer();
            int          comparisonResult = comparer.Compare(item1, item2);

            Assert.Less(0, comparisonResult, "The first item should have been greater than the second due to sort order.");
        }
        public int CompareTo(KeyedEnumerator <T> other)
        {
            var result = ItemComparer.Compare(Current, other.Current);

            if (result == 0)
            {
                result = SecondaryKey.CompareTo(other.SecondaryKey);
            }

            return(result);
        }
Exemplo n.º 6
0
        private void Insert(ContentItem item, ContentItem parent, string sortExpression)
        {
            if (item.Parent.Children.Contains(item))
                item.Parent.Children.Remove(item);

            var comparer = new ItemComparer(sortExpression);
            for (int i = 0; i < parent.Children.Count; i++)
            {
                if (comparer.Compare(item, parent.Children[i]) < 0)
                {
                    parent.Children.Insert(i, item);
                    return;
                }
            }
            parent.Children.Add(item);
        }
Exemplo n.º 7
0
        private void Insert(ContentItem item, ContentItem parent, string sortExpression)
        {
            if (item.Parent.Children.Contains(item))
            {
                item.Parent.Children.Remove(item);
            }

            var comparer = new ItemComparer(sortExpression);

            for (int i = 0; i < parent.Children.Count; i++)
            {
                if (comparer.Compare(item, parent.Children[i]) < 0)
                {
                    parent.Children.Insert(i, item);
                    return;
                }
            }
            parent.Children.Add(item);
        }
Exemplo n.º 8
0
		public void CompareTitleDesc2()
		{
			ItemComparer comparer = new ItemComparer("Title", true);
			int comparisonResult = comparer.Compare(item1, item2);
			Assert.Less(0, comparisonResult);
		}
Exemplo n.º 9
0
		public void CompareTitle2()
		{
			ItemComparer comparer = new ItemComparer("Title", false);
			int comparisonResult = comparer.Compare(item1, item2);
			Assert.Greater(0, comparisonResult);
		}
Exemplo n.º 10
0
		public void DefaultComparer()
		{
			ItemComparer comparer = new ItemComparer();
			int comparisonResult = comparer.Compare(item1, item2);
			Assert.Less(0, comparisonResult, "The first item should have been greater than the second due to sort order.");
		}
Exemplo n.º 11
0
        public void CompareTitleStaticDesc()
        {
            int comparisonResult = ItemComparer.Compare(item1, item2, "Title", true);

            Assert.Less(0, comparisonResult);
        }
Exemplo n.º 12
0
        public void CompareTitleStatic()
        {
            int comparisonResult = ItemComparer.Compare(item1, item2, "Title", false);

            Assert.Greater(0, comparisonResult);
        }
Exemplo n.º 13
0
 private async Task ProcessItem(PullItemModel args, IItemData localData, IItemData remoteData, Item localItem)
 {
     _allowedItems.Remove(remoteData.Id);
     if (args.Preview)
     {
         if (localData != null)
         {
             var results = _comparer.Compare(remoteData, localData);
             if (results.AreEqual)
             {
                 _logger.BeginEvent(remoteData, "Skipped", _sitecore.GetItemIconSrc(localData), false);
             }
             else if (results.IsMoved)
             {
                 _logger.BeginEvent(remoteData, "Moved", _sitecore.GetItemIconSrc(localData), false);
             }
             else if (results.IsRenamed)
             {
                 _logger.BeginEvent(remoteData, "Renamed", _sitecore.GetItemIconSrc(localData), false);
             }
             else if (results.IsTemplateChanged)
             {
                 _logger.BeginEvent(remoteData, "Template Change", _sitecore.GetItemIconSrc(localData), false);
             }
             else if (args.Overwrite)
             {
                 _logger.BeginEvent(remoteData, "Changed", _sitecore.GetItemIconSrc(localData), false);
             }
             else
             {
                 _logger.BeginEvent(remoteData, "Skipped", _sitecore.GetItemIconSrc(localData), false);
             }
         }
         else
         {
             _logger.BeginEvent(remoteData, "Created", "", false);
         }
     }
     else
     {
         bool skip = false;
         if (!args.Overwrite && localData != null)
         {
             _logger.BeginEvent(remoteData, "Skipped", _sitecore.GetItemIconSrc(localData), false);
             skip = true;
         }
         if (!skip && localData != null)
         {
             var results = _comparer.Compare(remoteData, localData);
             if (results.AreEqual)
             {
                 _logger.BeginEvent(remoteData, "Skipped", _sitecore.GetItemIconSrc(localData), false);
                 skip = true;
             }
         }
         else if (!skip)
         {
             while (_currentlyProcessing.Contains(remoteData.ParentId))
             {
                 if (_errors.Contains(remoteData.ParentId))
                 {
                     _errors.Add(remoteData.Id);
                     skip = true;
                     break;
                 }
                 await Task.Delay(50);
             }
         }
         if (!skip)
         {
             try
             {
                 if (localData != null)
                 {
                     _logger.BeginEvent(remoteData, "Changed", _logger.GetSrc(ThemeManager.GetIconImage(localItem, 32, 32, "", "")), true);
                 }
                 _scDatastore.Save(remoteData);
             }
             catch (TemplateMissingFieldException tm)
             {
                 _logger.BeginEvent(new ErrorItemData()
                 {
                     Name = remoteData.Name, Path = tm.ToString()
                 }, "Warning", "", false);
             }
             catch (ParentItemNotFoundException)
             {
                 _logger.BeginEvent(remoteData, "Skipped parent error", "", false);
                 _errors.Add(remoteData.Id);
             }
             catch (Exception e)
             {
                 _errors.Add(remoteData.Id);
                 _logger.BeginEvent(new ErrorItemData()
                 {
                     Name = remoteData?.Name ?? "Unknown item", Path = e.ToString()
                 }, "Error", "", false);
             }
             if (localData != null)
             {
                 if (_logger.LinesSupport[localData.Id.ToString()].Events.Count != 0)
                 {
                     _logger.CompleteEvent(localData.Id.ToString());
                 }
                 else
                 {
                     _logger.BeginEvent(localData, "Skipped", _logger.GetSrc(ThemeManager.GetIconImage(localItem, 32, 32, "", "")), false);
                 }
             }
         }
     }
 }