public static ApplicationService getInstance() { if (instance == null) { instance = new ApplicationService(); instance.initDefaultProperties(); } return instance; }
/** Добавляет новую покупку. Обновляет данные о частоте использования типов. */ public void addPayObject(PayObject payObject) { if (payObjects.size() != 0 && frequencyUsePayType.size() == 0) updateAllFrequencyUse(); payObjects.add(payObject); updateFrequencyUse(payObject); ApplicationService.writeData(); MonitoringMoney.mainFrame.updateData(); }
/** * Возвращает покупки с учётом фильтров. Если с учётом фильтров покупок нет, возвращает все * покупки. * * @return все покупки по выбранным фильтрам в основном окне <code>MainFrame</code> */ static List<PayObject> getPayObjects() { List<PayObject> payObjects = MonitoringMoney.mainFrame.getPayObjectWithCurrentFilters(); if (payObjects.isEmpty()) { payObjects = ApplicationService.getInstance() .getPayObjectsWithFilters(null, null, null, null, null, null, null, null); } viewPayObjects = payObjects; return payObjects; }
/** Прочитывает файл, который хранит долговременную информацию */ public static void readData() throws IOException, ClassNotFoundException { ObjectInputStream ois = new ObjectInputStream(new FileInputStream(ApplicationProperties.BUY_FILE)); instance = (ApplicationService) ois.readObject(); if (instance.images == null) instance.images = new HashMap<>(); }