@Override public FileStorage openFile(String name, String openMode, boolean mustExist) { if (mustExist && !FileUtils.exists(name)) { throw DbException.get(ErrorCode.FILE_NOT_FOUND_1, name); } FileStorage fileStorage = FileStorage.open(this, name, openMode, dbSettings.cipher, dbSettings.filePasswordHash); try { fileStorage.init(); } catch (DbException e) { fileStorage.closeSilently(); throw e; } return fileStorage; }
private void initStore() { Database db = session.getDatabase(); byte[] key = null; if (cipher != null && password != null) { char[] pass = password.optimize(session).getValue(session).getString().toCharArray(); key = SHA256.getKeyPasswordHash("script", pass); } String file = getFileName(); fileStorage = FileStorage.open(db, file, "rw", cipher, key); fileStorage.setCheckedWriting(false); fileStorage.init(); }
@Override public FileStorage openFile(String name, String mode, boolean mustExist) { if (mustExist && !FileUtils.exists(name)) { throw DbException.get(ErrorCode.FILE_NOT_FOUND_1, name); } FileStorage fileStorage; if (cipher == null) { fileStorage = FileStorage.open(this, name, mode); } else { fileStorage = FileStorage.open(this, name, mode, cipher, fileEncryptionKey, 0); } fileStorage.setCheckedWriting(false); try { fileStorage.init(); } catch (DbException e) { fileStorage.closeSilently(); throw e; } return fileStorage; }