summaryrefslogtreecommitdiff
path: root/src/main/java/design/persistence/XMLHandler.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/design/persistence/XMLHandler.java')
-rw-r--r--src/main/java/design/persistence/XMLHandler.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/main/java/design/persistence/XMLHandler.java b/src/main/java/design/persistence/XMLHandler.java
index 413defc..dc67687 100644
--- a/src/main/java/design/persistence/XMLHandler.java
+++ b/src/main/java/design/persistence/XMLHandler.java
@@ -3,7 +3,9 @@ import java.io.File;
import java.io.IOException;
import design.model.DataHandler;
+import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.node.ObjectNode;
import design.model.Golfer;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
@@ -16,10 +18,11 @@ public class XMLHandler implements DataHandler
private final XmlMapper xmlMapper = new XmlMapper();
public void exportPersonalData(File fileName) throws IOException {
- File jsonData = JSONPersonalDatabase.instance().exportData();
- Golfer[] golfers = jsonMapper.readValue(jsonData, Golfer[].class);
- File xmlFile = new File(fileName + ".xml");
- xmlMapper.writerWithDefaultPrettyPrinter().writeValue(xmlFile, golfers);
+ File jsonData = JSONPersonalDatabase.instance().exportData(fileName);
+ JsonNode golfersNode = jsonMapper.readTree(jsonData);
+ ObjectNode root = xmlMapper.createObjectNode();
+ root.set("golfers", golfersNode);
+ xmlMapper.writerWithDefaultPrettyPrinter().writeValue(fileName, root);
}
public void importPersonalData(File fileName) throws IOException {