/// <summary> /// Initializes an instance of the <see cref="BankAccountListService"/> with passed bank account list storage and bonus counter. /// </summary> /// <param name="bankAccountStorage">An instance of a bank account service interface.</param> /// <param name="bonusCounter">An instance of a bonus counter interface.</param> /// <exception cref="ArgumentNullException"> /// Thrown when <paramref name="bankAccountStorage"/> or/and <paramref name="bonusCounter"/> equal to null. /// </exception> public BankAccountListService(IBankAccountListStorage bankAccountStorage, IBonusCounter bonusCounter) { if (ReferenceEquals(bankAccountStorage, null)) { throw new ArgumentNullException(nameof(bankAccountStorage)); } if (ReferenceEquals(bonusCounter, null)) { throw new ArgumentNullException(nameof(bonusCounter)); } _bankAccountListStorage = bankAccountStorage; _bonusCouter = bonusCounter; BankAccounts = new List <BankAccount>(); }
/// <summary> /// Initializes an instance of the <see cref="BankAccountListService"/> with passed list of book accounts, /// bank account list storage and bonus counter. /// </summary> /// <param name="bankAccounts">A list of bank accounts.</param> /// <param name="bankAccountStorage">An instance of a bank account service interface.</param> /// <param name="bonusCounter">An instance of a bonus counter interface.</param> public BankAccountListService(List <BankAccount> bankAccounts, IBankAccountListStorage bankAccountStorage, IBonusCounter bonusCounter) : this(bankAccountStorage, bonusCounter) { BankAccounts = bankAccounts; }