diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index ee9c969..8efdb4a 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -12,8 +12,7 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Set up JDK 25 - uses: actions/setup-java@v4 + -uses: actions/setup-java@v4 with: java-version: '25' distribution: 'temurin' diff --git a/pom.xml b/pom.xml index eea0a11..b0a2e89 100644 --- a/pom.xml +++ b/pom.xml @@ -21,6 +21,14 @@ 3.14.1 + + + com.google.code.gson + gson + 2.13.2 + compile + + org.openjfx javafx-controls diff --git a/src/main/java/edu/ntnu/idi/idatt/Launcher.java b/src/main/java/edu/ntnu/idi/idatt/Launcher.java index 10507a4..b77e8d8 100644 --- a/src/main/java/edu/ntnu/idi/idatt/Launcher.java +++ b/src/main/java/edu/ntnu/idi/idatt/Launcher.java @@ -1,5 +1,6 @@ package edu.ntnu.idi.idatt; +import edu.ntnu.idi.idatt.storage.CSVtoJSON; import edu.ntnu.idi.idatt.view.SceneManager; import edu.ntnu.idi.idatt.view.primary.MainView; import edu.ntnu.idi.idatt.view.primary.PrimaryView; @@ -24,6 +25,8 @@ public void start(Stage stage) { stage.setTitle("Stock Game"); SceneManager.init(stage, new MainView().getInstance()); stage.show(); + CSVtoJSON ja = new CSVtoJSON(); + ja.csvFile(); } } diff --git a/src/main/java/edu/ntnu/idi/idatt/storage/CSVtoJSON.java b/src/main/java/edu/ntnu/idi/idatt/storage/CSVtoJSON.java new file mode 100644 index 0000000..cf91bec --- /dev/null +++ b/src/main/java/edu/ntnu/idi/idatt/storage/CSVtoJSON.java @@ -0,0 +1,33 @@ +package edu.ntnu.idi.idatt.storage; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonElement; +import com.google.gson.JsonParser; + +import java.io.*; +import java.nio.charset.StandardCharsets; +import java.util.stream.Collectors; + + +public class CSVtoJSON { + + public void csvFile(){ + String csvData; + try (InputStream rawData = CSVtoJSON.class.getResourceAsStream("/stocks.csv")){ + csvData = new BufferedReader(new InputStreamReader(rawData, StandardCharsets.UTF_8)) + .lines() + .collect(Collectors.joining(" ")); + } catch (IOException e) { + throw new RuntimeException(e); + } + + Gson gson = new GsonBuilder().setPrettyPrinting().create(); + try (Writer writer = new FileWriter("src/main/resources/save.json")) { + gson.toJson(csvData, writer); + } catch (IOException e) { + e.printStackTrace(); + } + } +} + diff --git a/src/main/resources/edu.ntnu.idi.idatt/logo.png b/src/main/resources/logo.png similarity index 100% rename from src/main/resources/edu.ntnu.idi.idatt/logo.png rename to src/main/resources/logo.png diff --git a/src/main/resources/save.json b/src/main/resources/save.json new file mode 100644 index 0000000..07089da --- /dev/null +++ b/src/main/resources/save.json @@ -0,0 +1 @@ +"# Ticker,Name,Price AMD,Advanced Micro Devices,202.68 MSI,Micro-Star International,92.80 INTC,Intel,45.58 NVDA,Nvidia,182.65 EQNR,Equinor,32.43" \ No newline at end of file diff --git a/src/main/resources/edu.ntnu.idi.idatt/stocks.csv b/src/main/resources/stocks.csv similarity index 100% rename from src/main/resources/edu.ntnu.idi.idatt/stocks.csv rename to src/main/resources/stocks.csv diff --git a/src/main/resources/edu.ntnu.idi.idatt/stonks.png b/src/main/resources/stonks.png similarity index 100% rename from src/main/resources/edu.ntnu.idi.idatt/stonks.png rename to src/main/resources/stonks.png diff --git a/src/main/resources/edu.ntnu.idi.idatt/user.png b/src/main/resources/user.png similarity index 100% rename from src/main/resources/edu.ntnu.idi.idatt/user.png rename to src/main/resources/user.png