@Override
    public final CustomerStrategy lookupCustomer(String customerId) {
	if (customerId == null) {
	    throw new IllegalArgumentException();
	}

	CustomerStrategy customer = null;

	for (int i = 0; i < numCustomers; i++) {
	    if (customers[i].getId().equalsIgnoreCase(customerId)) {
		customer = customers[i].getCustomer();
		if (customer == null) {
		    customer = allocateCustomer(customers[i]);
		    customers[i].setCustomer(customer);
		}
		break;
	    }
	}

	if (customer == null) {
	    throw new IllegalArgumentException();   // This should be something else...
	}

	return customer;
    }