class BudincăDeGriş extends Prăjitură {
    ArrayList Ingrediente = new ArrayList();
    public BudincăDeGriş(int NrPorţii) throws Exception, PrajiturăTerminată
    {
        Griş griş;
        Lapte lapte;
        Zahăr zahărTos, zahărPudra, zahărVanilat;
        Unt unt;
        CoajăLămâie coajăLămâie;
        OuăCollection ouă;

        griş = new Griş(150, SI.GRAM);
        lapte = new Lapte(1, SI.LITRU);
        unt = new Unt(100, SI.GRAM);
        zahărTos = new ZahărTos(3, Units.LINGURĂ);
        zahărPudră = new ZahărPudră(150, SI.GRAM);
        zahărVanilat = new ZahărVanilat(1, Units.LINGURĂ);
        for (int i = 0; i < 4; i++) {
            ouă.add(new Ou());
        }

        Ingrediente.add(griş);
        Ingrediente.add(lapte);
        Ingrediente.add(unt);
        Ingrediente.add(coajăLămâie);
        Ingrediente.add(zahărTos);
        Ingrediente.add(zahărPudră);
        Ingrediente.add(zahărVanilat);
        Ingrediente.addAll(oua);

        Ingrediente.trimToSize();

        do {
            Aragaz.Fierbe(lapte, Foc.MEDIU);
        } while (lapte.Temperatura < 100);

        lapte.add(griş);

        do {
            lapte.Amesteca();
        } while (!lapte.aFiert());
        // laptele cu griş se lasă să se răcească
        lapte.Racire();

        Gălbenuş gălbenuş = ouă.Separă(Ou.GĂLBENUŞ);
        Albuş albuş = ouă.Separă(Ou.ALBUŞ);

        zahărTos.add(gălbenuş);
        zahărTos.Freacă();

        albuş.BateSpuma();

        // containerul pentru tot amestecul
        Cratiţă cratiţă = new Cratiţă;
        cratiţă.Unge(unt);
        cratiţă.add(zahărTos);
        cratiţă.add(lapte);
        cratiţă.add(zahărVanilat);
        cratiţă.add(albuş);
        cratiţă.add(coajăLămâie);

        try {
            Cuptor.Coace(cratiţă, Foc.MEDIU);
        } catch (CuptorCoacereException e) {
            // când procesul de coacere s-a terminat
            cratiţă.add(zahărPudră);
            throw new PrăjiturăTerminatăException(cratiţă);
        }
    }

}

try {
    BudincăDeGriş b = new BudincăDeGriş(4);
} catch (Exception e) {
    System.out.println(e.getMessage());
} catch (PrăjiturăTerminată p) {
    System.out.println("Poftă bună");
}
// JCook v0.1 beta

« »