using FileService.Application.Ports; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FileService.Infrastructure.Storage { public class ObjectStorageRouter : IObjectStorageRouter { private IReadOnlyDictionary adpters; public ObjectStorageRouter(IEnumerable storages) { this.adpters = storages.ToDictionary(x => x.ProviderCode, StringComparer.OrdinalIgnoreCase); } public IObjectStoragePort Route(string providerCode) { return this.adpters[providerCode]; } } }