diff options
| author | WillemDalton <willemhdalton@gmail.com> | 2025-11-13 09:00:56 -0500 |
|---|---|---|
| committer | WillemDalton <willemhdalton@gmail.com> | 2025-11-13 09:00:56 -0500 |
| commit | 18a142e6d76288ae9bc6a597461e06a5ee02f6ad (patch) | |
| tree | 0cb2b3e175c9b3390da5bb3c6ce3612d266b6d88 /src/main/java/design/persistence/XMLHandler.java | |
| parent | 0efa0586e27c173211153b186ae08eb3b7c8d588 (diff) | |
| download | designproject-design-6-18a142e6d76288ae9bc6a597461e06a5ee02f6ad.tar.gz designproject-design-6-18a142e6d76288ae9bc6a597461e06a5ee02f6ad.tar.bz2 designproject-design-6-18a142e6d76288ae9bc6a597461e06a5ee02f6ad.zip | |
more work on adapting to XML
Diffstat (limited to '')
| -rw-r--r-- | src/main/java/design/persistence/XMLHandler.java | 28 |
1 files changed, 9 insertions, 19 deletions
diff --git a/src/main/java/design/persistence/XMLHandler.java b/src/main/java/design/persistence/XMLHandler.java index eaae811..174407a 100644 --- a/src/main/java/design/persistence/XMLHandler.java +++ b/src/main/java/design/persistence/XMLHandler.java @@ -23,28 +23,18 @@ public class XMLHandler implements DataHandler // read the top tree node (the array) JsonNode golfersNode = jsonMapper.readTree(jsonData); // map it to an object node - ObjectNode root = xmlMapper.createObjectNode(); - root.set("golfer", golfersNode); - xmlMapper.writerWithDefaultPrettyPrinter().writeValue(file, root); + xmlMapper.writerWithDefaultPrettyPrinter().writeValue(file, golfersNode); } public void importPersonalData(File file) throws IOException { - - JsonNode root = xmlMapper.readTree(file); - JsonNode golfersNode = root.get("golfer"); - if (golfersNode == null) { - throw new IOException("Expected 'golfer' element in XML root, but none found"); - } - if (!golfersNode.isArray()) { - golfersNode = xmlMapper.createArrayNode().add(golfersNode); - } - - Golfer[] golfers = xmlMapper.treeToValue(golfersNode, Golfer[].class); - - File tempJson = File.createTempFile("imported", ".json"); - jsonMapper.writerWithDefaultPrettyPrinter().writeValue(tempJson, golfers); - JSONPersonalDatabase.instance().importData(tempJson); - tempJson.delete(); + JsonNode root = xmlMapper.readTree(file); + + System.out.println(root.toPrettyString()); + Golfer[] golfers = xmlMapper.treeToValue(root, Golfer[].class); + File tempJson = File.createTempFile("imported", ".json"); + jsonMapper.writerWithDefaultPrettyPrinter().writeValue(tempJson, golfers); + JSONPersonalDatabase.instance().importData(tempJson); + tempJson.delete(); } |
