
public class TransactionRecord {
     

	final private static int CAPACITY = 6; //maximum number of transactions that can be remembered, intentionally set low to make testing easier
	
	private Transaction[] transactions = new Transaction[CAPACITY];	//array to store transaction objects
	private int size = 0;	//the number of actual Transaction objects in the collection
	
	public void add(Transaction aTransaction){
		if (size<(CAPACITY)){
			transactions[size] = aTransaction;
			size++;
		}
		else{
			for (int i=0; i<(CAPACITY - 1); i++)	//last place in array isn't in loop; it's going to be the new transaction
				transactions[i]=transactions[i+1];
			transactions[CAPACITY - 1] = aTransaction;
		}
	}
	
	public int getSize(){
		return size;
	}
	
	public void printHistory(){
		System.out.println("Transaction history:");
		for(int i=0; i<size; i++)
			System.out.println("\t\t" + transactions[i]);
		System.out.println("");
	}
	
	public void printHistory(int n){
		if (n>size){
			System.out.println("Invalid Numer Entered.\n");
			return;
		}
		
		System.out.println("Transaction history:");
		for(int i=CAPACITY-n; i<CAPACITY; i++)
			System.out.println("\t\t" + transactions[i]);
		
		System.out.println("");
	}
}
