package infrastructure.sftp;
import java.io.File;
import org.apache.sshd.common.Session;
import org.apache.sshd.common.file.SshFile;
import org.apache.sshd.common.file.nativefs.NativeFileSystemView;
public class TestFileSystemView extends NativeFileSystemView {
private final Session session;
private final File root;
public TestFileSystemView(Session session, File root) {
super(session.getUsername(), false);
this.session = session;
this.root = root;
}
@Override
public SshFile getFile(String name) {
if (name.startsWith("/")){
File file = new File(name);
return new TestSshFile(this, file, session.getUsername());
}
File file = new File(root, name);
return new TestSshFile(this, file, session.getUsername());
}
@Override
public SshFile getFile(SshFile sshFile, String name) {
File file = new File(sshFile.getAbsolutePath(), name);
return new TestSshFile(this, file, session.getUsername());
}
}