use of com.solinia.solinia.Factories.ISoliniaLootDropEntryTypeAdapterFactory in project solinia3-core by mixxit.
the class JsonLootDropRepository method reload.
@Override
public void reload() {
List<ISoliniaLootDrop> file = new ArrayList<ISoliniaLootDrop>();
try {
GsonBuilder gsonbuilder = new GsonBuilder();
gsonbuilder.registerTypeAdapterFactory(new ISoliniaLootDropEntryTypeAdapterFactory(SoliniaLootDropEntry.class));
Gson gson = gsonbuilder.create();
BufferedReader br = new BufferedReader(new FileReader(filePath));
file = gson.fromJson(br, new TypeToken<List<SoliniaLootDrop>>() {
}.getType());
} catch (FileNotFoundException e) {
e.printStackTrace();
}
lootdrops.clear();
for (ISoliniaLootDrop i : file) {
lootdrops.put(i.getId(), i);
}
System.out.println("Reloaded " + lootdrops.size() + " lootdrops");
}
use of com.solinia.solinia.Factories.ISoliniaLootDropEntryTypeAdapterFactory in project solinia3-core by mixxit.
the class JsonLootDropRepository method commit.
@Override
public void commit() {
// TODO Auto-generated method stub
GsonBuilder gsonbuilder = new GsonBuilder();
// gsonbuilder.setPrettyPrinting();
gsonbuilder.registerTypeAdapterFactory(new ISoliniaLootDropEntryTypeAdapterFactory(SoliniaLootDropEntry.class));
Gson gson = gsonbuilder.create();
String jsonOutput = gson.toJson(lootdrops.values(), new TypeToken<List<SoliniaLootDrop>>() {
}.getType());
try {
File file = new File(filePath);
if (!file.exists())
file.createNewFile();
FileOutputStream fileOut = new FileOutputStream(file);
OutputStreamWriter outWriter = new OutputStreamWriter(fileOut);
outWriter.append(jsonOutput);
outWriter.close();
fileOut.close();
System.out.println("Commited " + lootdrops.size() + " lootdrops");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Aggregations