// ========================================================================== // Squidex Headless CMS // ========================================================================== // Copyright (c) Squidex UG (haftungsbeschraenkt) // All rights reserved. Licensed under the MIT license. // ========================================================================== using System.Collections.Generic; using System.Linq; using Squidex.Infrastructure.EventSourcing; using Squidex.Web; namespace Squidex.Areas.Api.Controllers.EventConsumers.Models { public sealed class EventConsumersDto : Resource { /// /// The event consumers. /// public EventConsumerDto[] Items { get; set; } public static EventConsumersDto FromResults(IEnumerable items, ApiController controller) { var result = new EventConsumersDto { Items = items.Select(x => EventConsumerDto.FromEventConsumerInfo(x, controller)).ToArray() }; return CreateLinks(result, controller); } private static EventConsumersDto CreateLinks(EventConsumersDto result, ApiController controller) { result.AddSelfLink(controller.Url(c => nameof(c.GetEventConsumers))); return result; } } }