summaryrefslogtreecommitdiff
path: root/src/main/java/design/persistence/JSONPersonalDatabase.java
diff options
context:
space:
mode:
authorWillemDalton <willemhdalton@gmail.com>2025-11-10 19:33:15 -0500
committerWillemDalton <willemhdalton@gmail.com>2025-11-10 19:33:15 -0500
commitee0eb56a52bb0414e787cb71ef902c8fce12dda7 (patch)
treeb4f9ff40234960035b0fd5f09fddff7c2e47d5a9 /src/main/java/design/persistence/JSONPersonalDatabase.java
parent05bf6a19f341e2b2cb2b107dea65660a08439a1c (diff)
parent5d8330c190d736427066e3efce283258956d3dfd (diff)
downloaddesignproject-design-6-ee0eb56a52bb0414e787cb71ef902c8fce12dda7.tar.gz
designproject-design-6-ee0eb56a52bb0414e787cb71ef902c8fce12dda7.tar.bz2
designproject-design-6-ee0eb56a52bb0414e787cb71ef902c8fce12dda7.zip
working on exporting to XML and JSON
Diffstat (limited to '')
-rw-r--r--src/main/java/design/persistence/JSONPersonalDatabase.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/main/java/design/persistence/JSONPersonalDatabase.java b/src/main/java/design/persistence/JSONPersonalDatabase.java
index 0e95437..2f003cb 100644
--- a/src/main/java/design/persistence/JSONPersonalDatabase.java
+++ b/src/main/java/design/persistence/JSONPersonalDatabase.java
@@ -98,4 +98,21 @@ public class JSONPersonalDatabase implements PersonalDatabase {
cache.put(golfer.getUsername(), golfer);
save();
}
+
+ @Override
+ public File exportData() throws IOException{
+ save();
+ return file;
+ }
+
+ @Override
+ public void importData(File newFile) throws IOException {
+ Golfer[] newGolfers = mapper.readValue(newFile, Golfer[].class);
+ cache.clear();
+ for (Golfer g : newGolfers) {
+ cache.put(g.getUsername(), g);
+ }
+
+ save();
+ }
}