/* * GSettingUtil.java * * Created on November 18, 2005, 11:19 AM * * To change this template, choose Tools | Template Manager * and open the template in the editor. */ package gmailchecker.common; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import org.openide.filesystems.FileLock; import org.openide.filesystems.FileObject; import org.openide.filesystems.Repository; /** * * @author Administrator */ public class GSettingUtil { FileObject folderObject = null; FileObject settingFile=null; GCheckSetting gsetting = new GCheckSetting(); FileLock lock =null; /** Creates a new instance of GSettingUtil */ public GSettingUtil() { folderObject= Repository.getDefault().getDefaultFileSystem().getRoot().getFileObject("Settings"); if (folderObject==null){ try { folderObject=Repository.getDefault().getDefaultFileSystem().getRoot().createFolder("Settings"); storeSetting(gsetting); } catch (IOException ex) { ex.printStackTrace(); // TODO file can not be created , do something about it } } } public boolean storeSetting(GCheckSetting settings){ try { if (folderObject.getFileObject("Gcheck","Cfg")==null){ settingFile= folderObject.createData("Gcheck","Cfg"); } settingFile= folderObject.getFileObject("Gcheck","Cfg") ; lock = settingFile.lock(); ObjectOutputStream objectOutStr = new ObjectOutputStream(settingFile.getOutputStream(lock)); objectOutStr.writeObject(settings); objectOutStr.close(); lock.releaseLock(); } catch (IOException ex) { // TODO file can not be created , do something about it ex.printStackTrace(); return false; } return true; } public GCheckSetting retrieveSetting(){ settingFile= folderObject.getFileObject("Gcheck","Cfg"); try { ObjectInputStream objectInStr = new ObjectInputStream(settingFile.getInputStream()); gsetting= (GCheckSetting) objectInStr.readObject(); objectInStr.close(); } catch (IOException ex) { ex.printStackTrace(); return null; } catch (ClassNotFoundException ex) { ex.printStackTrace(); return null; } return gsetting; } }