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

Change simple factory to static factory

parent 3f6cfafc
No related branches found
No related tags found
No related merge requests found
package pizzeria; package pizzeria;
public class PizzaStore { public class PizzaStore {
SimplePizzaFactory factory;
public PizzaStore(SimplePizzaFactory factory) {
this.factory = factory;
}
public Pizza orderPizza(String type) { public Pizza orderPizza(String type) {
Pizza pizza; Pizza pizza;
pizza = factory.createPizza(type); pizza = StaticSimplePizzaFactory.createPizza(type);
pizza.prepare(); pizza.prepare();
pizza.bake(); pizza.bake();
...@@ -20,27 +15,4 @@ public class PizzaStore { ...@@ -20,27 +15,4 @@ public class PizzaStore {
return pizza; return pizza;
} }
public Pizza orderPizza() {
Pizza pizza;
pizza = factory.createPizza();
pizza.prepare();
pizza.bake();
pizza.cut();
pizza.box();
return pizza;
}
public Pizza orderPepperoniPizza() {
Pizza pizza;
pizza = factory.createPepperoniPizza();
pizza.prepare();
pizza.bake();
pizza.cut();
pizza.box();
return pizza;
}
} }
...@@ -3,8 +3,7 @@ package pizzeria; ...@@ -3,8 +3,7 @@ package pizzeria;
public class PizzaTestDrive { public class PizzaTestDrive {
public static void main(String[] args) { public static void main(String[] args) {
SimplePizzaFactory factory = new SimplePizzaFactory(); PizzaStore store = new PizzaStore();
PizzaStore store = new PizzaStore(factory);
Pizza pizza = store.orderPizza("cheese"); Pizza pizza = store.orderPizza("cheese");
System.out.println("We ordered a " + pizza.getName() + "\n"); System.out.println("We ordered a " + pizza.getName() + "\n");
...@@ -12,11 +11,5 @@ public class PizzaTestDrive { ...@@ -12,11 +11,5 @@ public class PizzaTestDrive {
pizza = store.orderPizza("veggie"); pizza = store.orderPizza("veggie");
System.out.println("We ordered a " + pizza.getName() + "\n"); System.out.println("We ordered a " + pizza.getName() + "\n");
pizza = store.orderPepperoniPizza();
System.out.println("We ordered a " + pizza.getName() + "\n");
pizza = store.orderPizza();
System.out.println("We ordered a " + pizza.getName() + "\n");
} }
} }
package pizzeria; package pizzeria;
public class SimplePizzaFactory { public class StaticSimplePizzaFactory {
public Pizza createPizza(String type) { public static Pizza createPizza(String type) {
Pizza pizza = null; Pizza pizza = null;
if (type.equals("cheese")) { if (type.equals("cheese")) {
...@@ -16,13 +16,4 @@ public class SimplePizzaFactory { ...@@ -16,13 +16,4 @@ public class SimplePizzaFactory {
} }
return pizza; return pizza;
} }
public Pizza createPizza() {
return new CheesePizza();
}
public Pizza createPepperoniPizza() {
return new PepperoniPizza();
}
} }
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