package G1.bank_locks;

import java.util.Random;

public class Client implements Runnable {

	Random randGen = new Random();
	private String name;
	private int accountId;
	private int balance;
	private Bank bank;

	public Client(String name, int accountId, int balance, Bank bank) {
		super();
		this.name = name;
		this.accountId = accountId;
		this.balance = balance;
		this.bank = bank;
	}

	@Override
	public void run() {
		int to;
		int amount;
		while (true) {
			to = randGen.nextInt(bank.getClientCount());
			amount = 0;
			if(balance>0)
				amount = randGen.nextInt(balance)+1;
			bank.transfer(accountId, to, amount);
			try {
				Thread.sleep(100);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}

	public void addToBalance(int amount) {
		balance+=amount;
	}

	public int getBalance() {
		return balance;
	}
}
