package bankaccounts.logic;

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

/**
 * @author trust56
 * @contributor Daniel "3ICE" Berezvai
 */
public class BankAccount {

  private String nameOfOwner;
  private List<Integer> history;
  private int balance;

  public BankAccount() {
    history = new LinkedList<>();
    balance = 0;
    nameOfOwner = "";
  }

  public int getBalance() {
    return balance;
  }

  public List<Integer> getHistory() {
    return new ArrayList<>(history);
  }

  public void deposit(int amount) {
    history.add(amount);
    balance += amount;
  }

  public void withdrawal(int amount) {
    deposit(-amount);
  }

  public String getNameOfOwner() {
    return nameOfOwner;
  }

  public void setNameOfOwner(String nameOfOwner) {
    this.nameOfOwner = nameOfOwner;
  }

  public String toString() {
    return nameOfOwner + " " + balance;
  }
}
