예제 #1
0
        /// <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>();
        }
예제 #2
0
 /// <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;
 }