package net.romvoid.crashbot.file.solution; import java.io.Reader; import java.io.Writer; import java.nio.file.Files; import java.nio.file.Paths; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import com.google.gson.Gson; import com.google.gson.GsonBuilder; public class SolutionFile { private static List<Solution> solutions = new ArrayList<Solution>(); private static Gson gson = new GsonBuilder().setPrettyPrinting().create(); private static Writer writer; private static Reader reader; public static List<Solution> read() { try { reader = Files.newBufferedReader(Paths.get("solutions/solutions.json")); //setSolutions(gson.fromJson(reader, new TypeToken<List<Solution>>() {}.getType())); List<Solution> list = Arrays.asList(gson.fromJson(reader, Solution[].class)); reader.close(); return list; } catch (Exception e) { e.getStackTrace(); } return null; } public static void write(Solution solution) { solutions.addAll(getSolutions()); solutions.add(solution); try { writer = Files.newBufferedWriter(Paths.get("solutions/solutions.json")); gson.toJson(solutions, writer); for(Solution s : solutions) { System.out.println(s.toString()); } writer.close(); } catch (Exception e) { e.getStackTrace(); } } public static List<Solution> getSolutions() { solutions = read(); return solutions; } }