Хранилище сеансов Swing Application Framework
Я использую Swing Application Framework и очень доволен его хранением состояния сеансов. Мне было интересно, можно ли удалить (очистить) сохраненные состояния.
- всех диалоговых форм. или же
- конкретных диалоговых форм.
Если нет, кто-нибудь нашел чистый способ добиться этого (сохраненные файлы не сохраняются в одном месте в зависимости от ОС и т. Д.).
Спасибо
2 ответа
Решение
Вы можете удалить соответствующий файл (ы) (забыл точные сведения о наименовании) через LocalStorage, вот фрагмент кода, который я использую (с bsaf, но не сильно изменился)
/**
* Deletes the session state by deleting the file. Useful during development
* when restoring to old state is not always the desired behaviour.
* Pending: this is incomplete, deletes the mainframe state only.
*/
protected void deleteSessionState() {
ApplicationContext context = getContext();
try {
context.getLocalStorage().deleteFile("mainFrame.session.xml");
} catch (...) {
}
}
File directory = context.getLocalStorage().getDirectory();
directory = directory.getCanonicalFile();
Files.deleteDirectoryContents(directory);
Files
это Google IO Lib.