using Toolkit.Foundation; namespace Wallet; public class WalletInitializer(IEnumerable> configurations, IComponentFactory componentFactory, IWalletHostCollection Wallets) : IInitialization { public async Task Initialize() { foreach (IConfigurationDescriptor configuration in configurations) { if (componentFactory.Create(configuration.Section, configuration.Value) is IComponentHost host) { Wallets.Add(host); await host.StartAsync(); } } } }