public void saveChanges(RecordStoreImpl recordStoreImpl) throws RecordStoreNotOpenException, RecordStoreException { File storeFile = new File(getSuiteFolder(), recordStoreName2FileName(recordStoreImpl.getName())); saveToDisk(storeFile, recordStoreImpl); }
public void deleteRecordStore(final String recordStoreName) throws RecordStoreNotFoundException, RecordStoreException { final File storeFile = new File(getSuiteFolder(), recordStoreName2FileName(recordStoreName)); RecordStoreImpl recordStoreImpl = (RecordStoreImpl) testOpenRecordStores.get(storeFile.getName()); if (recordStoreImpl != null && recordStoreImpl.isOpen()) { throw new RecordStoreException(); } try { recordStoreImpl = loadFromDisk(storeFile); } catch (FileNotFoundException ex) { throw new RecordStoreNotFoundException(recordStoreName); } try { AccessController.doPrivileged(new PrivilegedExceptionAction() { public Object run() throws FileNotFoundException { storeFile.delete(); fireRecordStoreListener(ExtendedRecordListener.RECORDSTORE_DELETE, recordStoreName); return null; } }, acc); } catch (PrivilegedActionException e) { Logger.error("Unable remove file " + storeFile, e); throw new RecordStoreException(); } }
public RecordStore openRecordStore(String recordStoreName, boolean createIfNecessary) throws RecordStoreException { File storeFile = new File(getSuiteFolder(), recordStoreName2FileName(recordStoreName)); RecordStoreImpl recordStoreImpl; try { recordStoreImpl = loadFromDisk(storeFile); } catch (FileNotFoundException e) { if (!createIfNecessary) { throw new RecordStoreNotFoundException(recordStoreName); } recordStoreImpl = new RecordStoreImpl(this, recordStoreName); saveToDisk(storeFile, recordStoreImpl); } recordStoreImpl.setOpen(true); if (recordListener != null) { recordStoreImpl.addRecordListener(recordListener); } testOpenRecordStores.put(storeFile.getName(), recordStoreImpl); fireRecordStoreListener(ExtendedRecordListener.RECORDSTORE_OPEN, recordStoreName); return recordStoreImpl; }