public SortedMap<String, Requirement> read() throws IOException{ SortedMap<String, Requirement> map = new ChildrenFirstOrderedMap(); File jsonFile = new File(outputDirectory, rootDirectory + ".json"); if(!jsonFile.exists()) { return map; } JavaType type = mapper.getTypeFactory().constructMapType(map.getClass(), String.class, Requirement.class); SortedMap<String, Requirement> storedRequirementsMap = mapper.readValue(jsonFile, type); map.putAll(storedRequirementsMap); //reset the parents for (Map.Entry<String, Requirement> entry : storedRequirementsMap.entrySet()) { String key = entry.getKey(); if (key.contains(".")) { String parent = key.substring(0, key.lastIndexOf(".")); Requirement child = entry.getValue(); updateParentChildren(map, parent, child); } } return map; }
public SortedMap<String, Requirement> read() throws IOException{ SortedMap<String, Requirement> map = new ChildrenFirstOrderedMap(); File jsonFile = new File(outputDirectory, rootDirectory + ".json"); if(!jsonFile.exists()) { return map; } SortedMap<String, Requirement> storedRequirementsMap; Type requirementsMapType = new TypeToken<SortedMap<String, Requirement>>(){}.getType(); try(FileReader reader = new FileReader(jsonFile)) { storedRequirementsMap = gson.fromJson(reader, requirementsMapType); } map.putAll(storedRequirementsMap); //reset the parents for (Map.Entry<String, Requirement> entry : storedRequirementsMap.entrySet()) { String key = entry.getKey(); if (key.contains(".")) { String parent = key.substring(0, key.lastIndexOf(".")); Requirement child = entry.getValue(); updateParentChildren(map, parent, child); } } return map; }
public SortedMap<String, Requirement> read() throws IOException{ SortedMap<String, Requirement> map = new ChildrenFirstOrderedMap(); File jsonFile = new File(outputDirectory, rootDirectory + ".json"); if(!jsonFile.exists()) { return map; } SortedMap<String, Requirement> storedRequirementsMap; Type requirementsMapType = new TypeToken<SortedMap<String, Requirement>>(){}.getType(); try(InputStreamReader reader = new InputStreamReader(new FileInputStream(jsonFile), StandardCharsets.UTF_8)) { storedRequirementsMap = gson.fromJson(reader, requirementsMapType); if (storedRequirementsMap == null) { storedRequirementsMap = new TreeMap<>(); } } map.putAll(storedRequirementsMap); //reset the parents for (Map.Entry<String, Requirement> entry : storedRequirementsMap.entrySet()) { String key = entry.getKey(); if (key.contains(".")) { String parent = key.substring(0, key.lastIndexOf(".")); Requirement child = entry.getValue(); updateParentChildren(map, parent, child); } } return map; }