Skip to content
Snippets Groups Projects
Commit cb5bf851 authored by HSoreide's avatar HSoreide
Browse files

Refactor our read and write actions of SuggestRecipesController

parent 5cb47da5
No related branches found
No related tags found
2 merge requests!42Hs frontend recipes,!41Hs frontend recipes
......@@ -75,11 +75,7 @@ public class SuggestRecipesController implements Initializable {
if (clickedButton.isPresent() && clickedButton.get() == ButtonType.APPLY) {
// Refresh ingredientsAtHand.
ingredientsAtHand = FileHandler.readIngredientsAtHand("Fridge");
//TODO: Duplicate code and assertion.
assert ingredientsAtHand != null;
fridge = FXCollections.observableArrayList(ingredientsAtHand.getIngredientsAtHand().stream().map(foodItem -> foodItem.label).toList());
fridgeList.setItems(fridge.sorted());
readIngredientsAtHand();
setRecipeTiles();
}
}
......@@ -89,11 +85,7 @@ public class SuggestRecipesController implements Initializable {
String toRemove = fridgeList.getSelectionModel().getSelectedItem();
//TODO: If anything selected!
ingredientsAtHand.removeIngredient(FoodItem.valueOf(toRemove.replace(" ", "_").toUpperCase()));
FileHandler.writeIngredientsAtHand(ingredientsAtHand, "Fridge");
//TODO: Remove toUppercase solution above.
//TODO: Consider factoring out to a update method.
fridge = FXCollections.observableArrayList(ingredientsAtHand.getIngredientsAtHand().stream().map(foodItem -> foodItem.label).toList());
fridgeList.setItems(fridge.sorted());
storeIngredientsAtHand();
setRecipeTiles();
}
......@@ -169,16 +161,26 @@ public class SuggestRecipesController implements Initializable {
stage.show();
}
@Override
public void initialize(URL url, ResourceBundle resourceBundle) {
public void readIngredientsAtHand() {
// If no ingredients at hand file exsists, add one and let it be empty. //TODO
ingredientsAtHand = FileHandler.readIngredientsAtHand("Fridge");
ingredientsAtHand = FileHandler.readIngredientsAtHand("Fridge");
fridge = FXCollections.observableArrayList(ingredientsAtHand.getIngredientsAtHand().stream().map(foodItem -> foodItem.label).toList());
//List<String> fridgeLabels = fridge;
fridgeList.setItems(fridge.sorted());
fridgeList.setItems(fridge.sorted());
}
public void storeIngredientsAtHand() throws IOException {
FileHandler.writeIngredientsAtHand(ingredientsAtHand, "Fridge");
fridge = FXCollections.observableArrayList(ingredientsAtHand.getIngredientsAtHand().stream().map(foodItem -> foodItem.label).toList());
fridgeList.setItems(fridge.sorted());
}
@Override
public void initialize(URL url, ResourceBundle resourceBundle) {
readIngredientsAtHand();
recipeRegister = FileHandler.readRecipeRegister("Recipes");
recipes = FXCollections.observableArrayList(recipeRegister.getRecipes());
......
WHEAT_FLOUR
ONION
EGG
VINEGAR
SPAGHETTI
......@@ -9,14 +8,13 @@ TOMATO_PASTE
CHICKPEAS
SPRING_ROLL
YELLOW_CHEESE
MILK
POTATO
BELL_PEPPER
DRY_THYME
DRY_BASIL
PARMESAN
OLIVE_OIL
OIL
BUTTER
GARLIC_CLOVE
HAM
BROCCOLI
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