public void UnRegisterPortfolio(Portfolio portfolio) { if (portfolio == null) { throw new ArgumentNullException("portfolio"); } if (portfolio is BasketPortfolio) { ((BasketPortfolio)portfolio).InnerPortfolios.ForEach(_connector.UnRegisterPortfolio); } else if (TryUnSubscribe(_registeredPortfolios, portfolio)) { _connector.OnUnRegisterPortfolio(portfolio); } }
public void UnRegisterPortfolio(Portfolio portfolio) { if (portfolio == null) { throw new ArgumentNullException(nameof(portfolio)); } if (portfolio is BasketPortfolio basketPortfolio) { basketPortfolio.InnerPortfolios.ForEach(_connector.UnRegisterPortfolio); } else { _registeredPortfolios.Remove(portfolio); _connector.OnUnRegisterPortfolio(portfolio); } }