/// <summary> /// Initializes a new instance of the <see cref="BasketSecurityMessageAdapter"/>. /// </summary> /// <param name="securityProvider">The provider of information about instruments.</param> /// <param name="processorProvider">Basket security processors provider.</param> /// <param name="exchangeInfoProvider">Exchanges and trading boards provider.</param> /// <param name="innerAdapter">Underlying adapter.</param> public BasketSecurityMessageAdapter(ISecurityProvider securityProvider, IBasketSecurityProcessorProvider processorProvider, IExchangeInfoProvider exchangeInfoProvider, IMessageAdapter innerAdapter) : base(innerAdapter) { _securityProvider = securityProvider ?? throw new ArgumentNullException(nameof(securityProvider)); _processorProvider = processorProvider ?? throw new ArgumentNullException(nameof(processorProvider)); _exchangeInfoProvider = exchangeInfoProvider ?? throw new ArgumentNullException(nameof(exchangeInfoProvider)); }