Class VirtualFileSystemFactory
- java.lang.Object
-
- org.apache.sshd.common.file.virtualfs.VirtualFileSystemFactory
-
- All Implemented Interfaces:
FileSystemFactory
public class VirtualFileSystemFactory extends java.lang.Object implements FileSystemFactory
SSHd file system factory to reduce the visibility to a physical folder.
-
-
Field Summary
Fields Modifier and Type Field Description private java.nio.file.Path
defaultHomeDir
private java.util.Map<java.lang.String,java.nio.file.Path>
homeDirs
-
Constructor Summary
Constructors Constructor Description VirtualFileSystemFactory()
VirtualFileSystemFactory(java.nio.file.Path defaultHomeDir)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.nio.file.FileSystem
createFileSystem(SessionContext session)
Create user specific file system.java.nio.file.Path
getDefaultHomeDir()
java.nio.file.Path
getUserHomeDir(java.lang.String userName)
java.nio.file.Path
getUserHomeDir(SessionContext session)
void
setDefaultHomeDir(java.nio.file.Path defaultHomeDir)
void
setUserHomeDir(java.lang.String userName, java.nio.file.Path userHomeDir)
-
-
-
Method Detail
-
setDefaultHomeDir
public void setDefaultHomeDir(java.nio.file.Path defaultHomeDir)
-
getDefaultHomeDir
public java.nio.file.Path getDefaultHomeDir()
-
setUserHomeDir
public void setUserHomeDir(java.lang.String userName, java.nio.file.Path userHomeDir)
-
getUserHomeDir
public java.nio.file.Path getUserHomeDir(java.lang.String userName)
-
getUserHomeDir
public java.nio.file.Path getUserHomeDir(SessionContext session) throws java.io.IOException
- Specified by:
getUserHomeDir
in interfaceFileSystemFactory
- Parameters:
session
- The session created for the user- Returns:
- The recommended user home directory -
null
if none - Throws:
java.io.IOException
- If failed to resolve user's home directory
-
createFileSystem
public java.nio.file.FileSystem createFileSystem(SessionContext session) throws java.io.IOException
Description copied from interface:FileSystemFactory
Create user specific file system.- Specified by:
createFileSystem
in interfaceFileSystemFactory
- Parameters:
session
- The session created for the user- Returns:
- The current
FileSystem
for the provided session - Throws:
java.io.IOException
- if the file system can not be created
-
-