@Override public VirtualFile child(String name) { return new FileVF(new File(f, name), root); } @Override public long length() throws IOException {
@Override public VirtualFile getParent() { return new FileVF(f.getParentFile(), root); } @Override public boolean isDirectory() throws IOException {
@Override public VirtualFile[] list() throws IOException { if (isIllegalSymlink()) { return new VirtualFile[0]; } File[] kids = f.listFiles(); if (kids == null) { return new VirtualFile[0]; } VirtualFile[] vfs = new VirtualFile[kids.length]; for (int i = 0; i < kids.length; i++) { vfs[i] = new FileVF(kids[i], root); } return vfs; } @Override
@Override public VirtualFile[] list() throws IOException { if (isIllegalSymlink()) { return new VirtualFile[0]; } File[] kids = f.listFiles(); if (kids == null) { return new VirtualFile[0]; } VirtualFile[] vfs = new VirtualFile[kids.length]; for (int i = 0; i < kids.length; i++) { vfs[i] = new FileVF(kids[i], root); } return vfs; } @Override public String[] list(String glob) throws IOException {
@Override public VirtualFile getParent() { return new FileVF(f.getParentFile(), root); } @Override public boolean isDirectory() throws IOException {
@Override public VirtualFile child(String name) { return new FileVF(new File(f, name), root); } @Override public long length() throws IOException {
/** * Creates a virtual file wrapper for a local file. * @param f a disk file (need not exist) * @return a wrapper */ public static VirtualFile forFile(final File f) { return new FileVF(f, f); } private static final class FileVF extends VirtualFile {
/** * Creates a virtual file wrapper for a local file. * @param f a disk file (need not exist) * @return a wrapper */ public static VirtualFile forFile(final File f) { return new FileVF(f, f); } private static final class FileVF extends VirtualFile {