package fr.umlv.designpattern.account;

import java.util.ArrayList;

public class AccountDetails {
	private long accountNumber;
	private long balance;
	private final String firstName;
	private final String lastName;
	private final ArrayList<Record> listOfLastRecords = new ArrayList<>();
	private static int NumberOfRecords = 3;

	public AccountDetails(long n, long b, String name, String last){
		this.accountNumber = n;
		this.balance = b;
		this.firstName = name;
		this.lastName = last;
	}

	public long getAccountNumber() {
    return accountNumber;
  }
	
	public String getFirstName() {
    return firstName;
  }
	
	public String getLastName() {
    return lastName;
  }
	
	public void setBalance(Long balance) {
		this.balance = balance;
	}

	public Long getBalance() {
		return balance;
	}

	public void addRecord(Record r){
		for(int i = 0; i<NumberOfRecords;i++){
			if(listOfLastRecords.get(i) == null){
				listOfLastRecords.add(i, r);
				return;
			}
		}
		
		//ça pique surement les yeux mais bon...
		listOfLastRecords.add(2, listOfLastRecords.get(1));
		listOfLastRecords.add(1, listOfLastRecords.get(0));
		listOfLastRecords.add(0, r);
	}
	
	public ArrayList<Record> getListOfLastRecords() {
    return listOfLastRecords;
  }
}
