Add vegan potato

This commit is contained in:
spiral 2020-12-31 11:04:37 +00:00
parent 80538f81fa
commit be04791fea
1 changed files with 10 additions and 4 deletions

View File

@ -11,10 +11,12 @@ import java.util.List;
*/
public class Potato implements Tuber {
private final boolean isVegan;
private final List<Condiment> condiments = new ArrayList<>();
public static void main(String[] args) {
final Potato potato = new Potato();
final Potato potato = new Potato(args.length == 1 && args[0].equals("--vegan"));
if (potato.isVegan) System.out.println("This potato is vegan.");
try {
potato.prepare();
System.out.println("Of course Potato is prepared and delicious.");
@ -23,6 +25,10 @@ public class Potato implements Tuber {
}
}
public Potato(boolean isVegan) {
this.isVegan = isVegan;
}
/**
* Gets the condiments on this potato.
*
@ -39,8 +45,8 @@ public class Potato implements Tuber {
* @throws NotDeliciousException If the potato is not delicious
*/
public void prepare() throws NotDeliciousException {
this.addCondiments("sour cream", "chives", "butter", "crumbled bacon", "grated cheese", "ketchup", "pepper",
"salt", "tabasco", "tomatoes", "onion");
this.addCondiments("chives", "butter", "pepper", "salt", "tabasco", "tomatoes", "onion");
if (!this.isVegan) this.addCondiments("sour cream", "crumbled bacon", "grated cheese", "ketchup");
this.listCondiments();
if (!this.isDelicious()) throw new NotDeliciousException(NotDeliciousReason.UNDERCOOKED);
}
@ -153,7 +159,7 @@ public class Potato implements Tuber {
*/
@Override
public Tuber propagate() {
return new Potato();
return new Potato(this.isVegan);
}
/**