@Override public OutputStream newOutputStream(boolean append) throws IOException { FileNioMemData obj = getMemoryFile(); FileNioMem m = new FileNioMem(obj, false); return new FileChannelOutputStream(m, append); }
@Override public OutputStream newOutputStream(boolean append) throws IOException { FileMemData obj = getMemoryFile(); FileMem m = new FileMem(obj, false); return new FileChannelOutputStream(m, append); }
@Override public InputStream newInputStream() { FileMemData obj = getMemoryFile(); FileMem m = new FileMem(obj, true); return new FileChannelInputStream(m, true); }
private FileChannel getFileChannel(String fileName, String r, byte[] decryptKey) throws IOException { FileChannel fileIn = FilePath.get(fileName).open(r); if (decryptKey != null) { fileIn = new FilePathEncrypt.FileEncrypt(fileName, decryptKey, fileIn); } return fileIn; }
@Override public boolean isAbsolute() { String fileName = translateFileName(name); return FilePath.get(fileName).isAbsolute(); }
@Override public InputStream newInputStream() { FileNioMemData obj = getMemoryFile(); FileNioMem m = new FileNioMem(obj, true); return new FileChannelInputStream(m, true); }
@Override public FilePath createTempFile(String suffix, boolean deleteOnExit, boolean inTempDir) throws IOException { log(Recorder.CREATE_TEMP_FILE, unwrap(name) + ":" + suffix + ":" + deleteOnExit + ":" + inTempDir); return super.createTempFile(suffix, deleteOnExit, inTempDir); }
/** * Register this file system. */ public static void register() { FilePath.register(new FilePathEncrypt()); }
private void compressLater(int page) { CompressItem c = new CompressItem(); c.file = this; c.page = page; synchronized (LZF) { COMPRESS_LATER.put(c, c); } }
@Override public boolean createFile() { log(Recorder.CREATE_NEW_FILE, name); return super.createFile(); }
@Override public OutputStream newOutputStream(boolean append) throws IOException { log(Recorder.OPEN_OUTPUT_STREAM, name); return super.newOutputStream(append); }
@Override public FilePath createTempFile(String suffix, boolean deleteOnExit, boolean inTempDir) throws IOException { return wrap(base.createTempFile(suffix, deleteOnExit, inTempDir)); }
@Override public boolean setReadOnly() { return getMemoryFile().setReadOnly(); }
@Override public long size() { return getMemoryFile().length(); }