private void WriteItems()

in TeamCity.MSBuild.Logger/EventHandlers/ProjectStartedHandler.cs [108:131]


        private void WriteItems([NotNull] IList<TaskItem> items)
        {
            if (items == null) throw new ArgumentNullException(nameof(items));
            if (_context.Verbosity != LoggerVerbosity.Diagnostic || !_context.Parameters.ShowItemAndPropertyList || items.Count == 0)
            {
                return;
            }

            _logWriter.SetColor(Color.Items);
            _messageWriter.WriteLinePretty(_context.CurrentIndentLevel, _stringService.FormatResourceString("ItemListHeader"));

            var groupedItems = from item in items
                group item by item.Name
                into groupedByName
                orderby groupedByName.Key.ToLowerInvariant()
                select new { ItemType = groupedByName.Key, Items = groupedByName.Select(i => i.Item).OrderBy(i => i, TaskItemItemSpecComparer.Shared) };

            foreach (var groupedItem in groupedItems)
            {
                OutputItems(groupedItem.ItemType, groupedItem.Items);
            }

            _messageWriter.WriteNewLine();
        }