Skip to content
Snippets Groups Projects
Commit 9f9d9bd1 authored by Peter Hertkorn's avatar Peter Hertkorn
Browse files

Add classes for pizzeria ingredients

parent c6a0a5bf
No related branches found
No related tags found
No related merge requests found
Showing
with 182 additions and 0 deletions
package pizzeria;
import pizzeria.pizza.Pizza;
import pizzeria.store.ChicagoPizzaStore;
import pizzeria.store.NYPizzaStore;
import pizzeria.store.PizzaStore;
public class PizzaTestDrive {
public static void main(String[] args) {
PizzaStore nyStore = new NYPizzaStore();
PizzaStore chicagoStore = new ChicagoPizzaStore();
Pizza pizza = nyStore.orderPizza("cheese");
System.out.println("Ethan ordered a " + pizza.getName() + "\n");
pizza = chicagoStore.orderPizza("cheese");
System.out.println("Joel ordered a " + pizza.getName() + "\n");
pizza = nyStore.orderPizza("clam");
System.out.println("Ethan ordered a " + pizza.getName() + "\n");
pizza = chicagoStore.orderPizza("clam");
System.out.println("Joel ordered a " + pizza.getName() + "\n");
pizza = nyStore.orderPizza("pepperoni");
System.out.println("Ethan ordered a " + pizza.getName() + "\n");
pizza = chicagoStore.orderPizza("pepperoni");
System.out.println("Joel ordered a " + pizza.getName() + "\n");
pizza = nyStore.orderPizza("veggie");
System.out.println("Ethan ordered a " + pizza.getName() + "\n");
pizza = chicagoStore.orderPizza("veggie");
System.out.println("Joel ordered a " + pizza.getName() + "\n");
}
}
package pizzeria.ingredients;
public class BlackOlives implements Veggies {
public String toString() {
return "Black Olives";
}
}
package pizzeria.ingredients;
public interface Cheese {
public String toString();
}
package pizzeria.ingredients;
public interface Clams {
public String toString();
}
package pizzeria.ingredients;
public interface Dough {
public String toString();
}
package pizzeria.ingredients;
public class Eggplant implements Veggies {
public String toString() {
return "Eggplant";
}
}
package pizzeria.ingredients;
public class FreshClams implements Clams {
public String toString() {
return "Fresh Clams from Long Island Sound";
}
}
package pizzeria.ingredients;
public class FrozenClams implements Clams {
public String toString() {
return "Frozen Clams from Chesapeake Bay";
}
}
package pizzeria.ingredients;
public class Garlic implements Veggies {
public String toString() {
return "Garlic";
}
}
package pizzeria.ingredients;
public class MarinaraSauce implements Sauce {
public String toString() {
return "Marinara Sauce";
}
}
package pizzeria.ingredients;
public class MozzarellaCheese implements Cheese {
public String toString() {
return "Shredded Mozzarella";
}
}
package pizzeria.ingredients;
public class Mushroom implements Veggies {
public String toString() {
return "Mushrooms";
}
}
package pizzeria.ingredients;
public class Onion implements Veggies {
public String toString() {
return "Onion";
}
}
package pizzeria.ingredients;
public class ParmesanCheese implements Cheese {
public String toString() {
return "Shredded Parmesan";
}
}
package pizzeria.ingredients;
public interface Pepperoni {
public String toString();
}
package pizzeria.ingredients;
public class PepperoniPizza extends Pizza {
public PepperoniPizza(PizzaIngredientFactory ingredientFactory) {
this.ingredientFactory = ingredientFactory;
}
void prepare() {
System.out.println("Preparing " + name);
dough = ingredientFactory.createDough();
sauce = ingredientFactory.createSauce();
cheese = ingredientFactory.createCheese();
veggies = ingredientFactory.createVeggies();
pepperoni = ingredientFactory.createPepperoni();
}
}
package pizzeria.ingredients;
public class PlumTomatoSauce implements Sauce {
public String toString() {
return "Tomato sauce with plum tomatoes";
}
}
package pizzeria.ingredients;
public class RedPepper implements Veggies {
public String toString() {
return "Red Pepper";
}
}
package pizzeria.ingredients;
public class ReggianoCheese implements Cheese {
public String toString() {
return "Reggiano Cheese";
}
}
package pizzeria.ingredients;
public interface Sauce {
public String toString();
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment