updates
This commit is contained in:
@@ -15,12 +15,15 @@ import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.security.SecureRandom;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Base64;
|
||||
import java.util.List;
|
||||
|
||||
import jakarta.json.Json;
|
||||
import jakarta.json.JsonArray;
|
||||
import jakarta.json.JsonException;
|
||||
import jakarta.json.JsonObject;
|
||||
import jakarta.json.JsonValue;
|
||||
import jakarta.json.bind.Jsonb;
|
||||
import jakarta.json.bind.JsonbBuilder;
|
||||
import jakarta.json.bind.JsonbConfig;
|
||||
@@ -144,10 +147,38 @@ public class DataRepository {
|
||||
result = in.readAllAsString();
|
||||
}
|
||||
|
||||
List<InventoryPiece> inventory = mapJsonToObjectList(result, InventoryPiece.class);
|
||||
List<InventoryPiece> inventory;
|
||||
|
||||
manager.INVENTORY.clear();
|
||||
manager.INVENTORY.addAll(inventory);
|
||||
try (var reader = Json.createReader(new StringReader(result));
|
||||
Jsonb jsonb = JsonbBuilder.create()) {
|
||||
JsonArray jsonArray = reader.readArray();
|
||||
|
||||
inventory = new ArrayList<InventoryPiece>();
|
||||
|
||||
jsonArray.forEach(item -> {
|
||||
try {
|
||||
switch (item.asJsonObject().getString("type")) {
|
||||
case "DRAWING":
|
||||
inventory.add(jsonb.fromJson(item.toString(), Drawing.class));
|
||||
break;
|
||||
case "PAINTING":
|
||||
inventory.add(jsonb.fromJson(item.toString(), Painting.class));
|
||||
break;
|
||||
case "PRINT":
|
||||
inventory.add(jsonb.fromJson(item.toString(), Print.class));
|
||||
break;
|
||||
case "SCULPTURE":
|
||||
inventory.add(jsonb.fromJson(item.toString(), Sculpture.class));
|
||||
break;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
});
|
||||
|
||||
manager.INVENTORY.clear();
|
||||
manager.INVENTORY.addAll(inventory);
|
||||
}
|
||||
}
|
||||
|
||||
public final static class getRepositoryConfig {
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
*/
|
||||
package edu.inventorym.model;
|
||||
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
import java.util.EnumSet;
|
||||
import java.util.Set;
|
||||
@@ -31,7 +32,7 @@ public class InventoryManager {
|
||||
return iv;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -50,13 +51,15 @@ public class InventoryManager {
|
||||
public void load() {
|
||||
try {
|
||||
DataRepository.WalkFileSystemTree(this);
|
||||
} catch (FileNotFoundException e) {
|
||||
System.out.println(String.format("INVENTORY: %s", e.getLocalizedMessage().toString()));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public InventoryPiece Remove(InventoryPiece iPiece) {
|
||||
int i = INVENTORY.indexOf(iPiece);
|
||||
int i = INVENTORY.indexOf(iPiece);
|
||||
return INVENTORY.remove(i);
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user