private void save() { try { File macroFolder = new File(MACRO_FOLDER); if (!macroFolder.exists()) { macroFolder.mkdir(); } for (Macro macro : macros.values()) { if (!macro.isTransient()) { // write JSON to config file File file = new File(MACRO_FOLDER + "/" + macro.getName() + ".json"); FileWriter fileWriter = new FileWriter(file); try { fileWriter.write(macro.toJSON().toJSONString()); } finally { // close file fileWriter.close(); } } } } catch (IOException e) { // deal with exception e.printStackTrace(); } }