Example #1
0
 public CreditCard(Account account, IPaymentStrategy paymentStrategy = null, ILoanStrategy loanStrategy = null)
 {
     this.account         = account;
     currentDayExpenses   = 0;
     this.paymentStrategy = paymentStrategy != null ? paymentStrategy : new RegularPaymentStrategy();
     this.loanStrategy    = loanStrategy != null ? loanStrategy : new LoanWithDepositStrategy();
 }
Example #2
0
 private void Initialize(ILoanStrategy strategy, float notional, float outstanding, int rating, DateTime expiry, DateTime maturity = default(DateTime))
 {
     this.strategy    = strategy;
     this.notional    = notional;
     this.outstanding = outstanding;
     this.rating      = rating;
     this.expiry      = expiry;
     this.maturity    = maturity;
 }
Example #3
0
        public Loan(ILoanStrategy strategy, float notional, float outstanding, int rating, DateTime expiry, DateTime maturity)
        {
            var revolvingTermRoc = new RevolvingTermRoc();

            Initialize(revolvingTermRoc, notional, outstanding, rating, expiry, maturity);
        }
Example #4
0
 public void setLoanStrategy(ILoanStrategy strategy)
 {
     this.loanStrategy = strategy;
 }
 public CalculationService(ILoanStrategy <T> loanStrategy)
 {
     _loanStrategy = loanStrategy;
 }