/*
 * Warteschlange.java, Created on 18.01.2005
 * 
 */
import java.util.ArrayList;

/**
 * Diese Klasse repraesentiert eine Warteschlange
 * fuer Autos in einer Werkstatt. Hinten fahren
 * Autos rein, vorne werden Autos zur Reparatur
 * herausgefahren.
 * 
 * @author kriewel
 *
 */
public class Warteschlange {

    // Warteschlange einer Werkstatt
    private ArrayList schlange = new ArrayList();
    
    /**
     * Fuegt ein neues Auto zur Warteschlange hinzu.
     * 
     * @author kriewel
     * @param auto das hinzuzufuegende Auto
     */
    public void autoRein(Auto auto) {
        // fügt Auto am Ende der Schlange hinzu
        schlange.add(schlange.size(),auto);
        System.out.println(auto.getKennzeichen() + " wurde in der Werkstatt abgegeben.");
    }
    
    /**
     * Entnimmt das erste Auto aus der Warteschlange
     * und liefert es zurueck. Ist die Warteschlange
     * leer, wird null zurueckgeliefert
     * 
     * @author kriewel
     * @return das erste Auto in der Schlange oder null
     */
    public Auto autoRaus() {
        if (schlange.isEmpty())
            return null;
        else // entferne das erste Auto aus der Schlange 
            return  (Auto) schlange.remove(0); 
    }
    
}
