package edu.pdx.cs410J.net;
/**
* A <code>McCustomer</code> arrives a <code>McDonalds</code> and
* waits for a BigMac.
*/
public class McCustomer implements Runnable {
private String name;
private McDonalds mcDonalds;
/**
* Creates a new <code>McCustomer</code>
*/
public McCustomer(int id, McDonalds mcDonalds) {
this.name = "Customer " + id;
this.mcDonalds = mcDonalds;
}
/**
* Go to a <code>McDonalds</code> and wait for a BigMac
*/
public void run() {
System.out.println(this.name + " wants a BigMac");
try {
synchronized(this.mcDonalds) {
this.mcDonalds.wait();
}
} catch (InterruptedException ex) {
return;
}
System.out.println(this.name + " got a BigMac");
}
}