import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; import java.util.List; /** * Data is a class to edit files. * @author Madeleine Vigier * @version 1.1 */ public class Data { private String pathRead; public Data(String pathRead) { this.pathRead = pathRead; } /** * readData() is a method to split a file into lines and save them in an arraylist * @return Arraylist userlist * @author Madeleine Vigier, Sabine Gubitz * @version 1.1 */ public ArrayList readData() { Path path = Paths.get(pathRead); try { List rows = Files.readAllLines(path); //Object class Meal is still missing and needs to be added if (pathRead.equals("menue.csv")) { ArrayList menueList = new ArrayList<>(); //Booleans for allergens boolean eggs = false, peanuts = false, fish = false, grains = false, crustaceans = false, lupines = false, milk = false, nuts = false, sulfurDioxideAndSulfite = false, celeriac = false, mustards = false, sesame = false, soy = false, molluscs = false; //Booleans for additives boolean antioxidant = false, artificialColours = false, flavourEnhancer = false, preservatives = false, nitrate = false, picklingSalt = false, phosphate = false, artificialSweetener = false; for (String row : rows) { String[] parts = row.split(":"); String date = parts[1]; String dish = parts[2]; String sideDish = parts[3]; String typ = parts[4]; String desertV = parts[5]; String desert = parts[6]; String allergens = parts[7]; if ( allergens != "") { eggs = true; } allergens = parts[8]; if ( allergens != "") { peanuts = true; } allergens = parts[9]; if ( allergens != "") { fish = true; } allergens = parts[10]; if ( allergens != "") { grains = true; } allergens = parts[11]; if ( allergens != "") { crustaceans = true; } allergens = parts[12]; if ( allergens != "") { lupines = true; } allergens = parts[13]; if ( allergens != "") { milk = true; } allergens = parts[14]; if ( allergens != "") { nuts = true; } allergens = parts[15]; if ( allergens != "") { sulfurDioxideAndSulfite = true; } allergens = parts[16]; if ( allergens != "") { celeriac = true; } allergens = parts[17]; if ( allergens != "") { mustards = true; } allergens = parts[18]; if ( allergens != "") { sesame = true; } allergens = parts[19]; if ( allergens != "") { soy = true; } allergens = parts[20]; if ( allergens != "") { molluscs = true; } String additives = parts[21]; if ( additives != "") { antioxidant = true; } additives = parts[22]; if ( additives != "") { artificialColours = true; } additives = parts[23]; if ( additives != "") { flavourEnhancer = true; } additives = parts[24]; if ( additives != "") { preservatives = true; } additives = parts[25]; if ( additives != "") { nitrate = true; } additives = parts[26]; if ( additives != "") { picklingSalt = true; } additives = parts[27]; if ( additives != "") { phosphate = true; } additives = parts[28]; if ( additives != "") { artificialSweetener = true; } //menueList.add(new Meal(date, dish, sideDish, typ, desertV, desert, eggs, peanuts, fish, grains, // crustaceans, lupines, milk, nuts, sulfurDioxideAndSulfite, celeriac, mustards, sesame, // soy, molluscs, antioxidant, artificialColours, flavourEnhancer, preservatives, nitrate, // picklingSalt, phosphate, artificialSweetener)); } return null;//menueList; } else if (pathRead.equals("users.txt")){ ArrayList userList = new ArrayList<>(); for (String row : rows) { String[] parts = row.split(":"); String nameParent1 = parts[0]; String nameParent2 = parts[1]; String billAddress = parts[2]; String phonenumber = parts[3]; String nameChildren = parts[4]; String password = parts[5]; userList.add(new User(nameParent1,nameParent2,billAddress,phonenumber,nameChildren,password)); } return userList; //Object class Order is still missing and needs to be added } else if (pathRead.equals("orders.txt")) { ArrayList orderList = new ArrayList<>(); for (String row : rows) { String[] parts = row.split(":"); String date = parts[0]; String meat = parts[1]; String meatCount = parts[2]; String vegi = parts[3]; String vegiCount = parts[4]; String vegan = parts[5]; String veganCount = parts[6]; String desertV = parts[7]; String desertVCount = parts[8]; String desert = parts[9]; String desertCount = parts[10]; //orderList.add(new Order(date, meat, meatCount,vegi, vegiCount, vegan, veganCount, desertV, // desertVCount, desert, desertCount)) } return null;//orderList } } catch (IOException e) { e.printStackTrace(); } return null; } /** * The method writeData writes the data of a List into a txt file. * @param pathWrite determines the filename of the file that will be written * @param listToWrite determines which ArrayList is to be used for writing the file */ public void writeData(String pathWrite, ArrayList listToWrite){ if (pathWrite.equals("users.txt")) { } else if (pathWrite.equals("orders.txt")) { } } }