Package com.sshtools.daemon.platform
Class NativeFileSystemProvider
- java.lang.Object
-
- com.sshtools.daemon.platform.NativeFileSystemProvider
-
- Direct Known Subclasses:
VirtualFileSystem
public abstract class NativeFileSystemProvider extends java.lang.Object- Version:
- $Revision: 1.13 $
- Author:
- $author$
-
-
Field Summary
Fields Modifier and Type Field Description static intOPEN_APPENDstatic intOPEN_CREATEstatic intOPEN_EXCLUSIVEstatic intOPEN_READstatic intOPEN_TRUNCATEstatic intOPEN_WRITE
-
Constructor Summary
Constructors Constructor Description NativeFileSystemProvider()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract voidcloseFile(byte[] handle)abstract voidcreateSymbolicLink(java.lang.String link, java.lang.String target)abstract booleanfileExists(java.lang.String path)abstract java.lang.StringgetCanonicalPath(java.lang.String path)abstract java.lang.StringgetDefaultPath(java.lang.String username)abstract FileAttributesgetFileAttributes(byte[] handle)abstract FileAttributesgetFileAttributes(java.lang.String path)static NativeFileSystemProvidergetInstance()abstract java.lang.StringgetRealPath(java.lang.String path)abstract booleanmakeDirectory(java.lang.String path)abstract byte[]openDirectory(java.lang.String path)abstract byte[]openFile(java.lang.String path, UnsignedInteger32 flags, FileAttributes attrs)abstract SftpFile[]readDirectory(byte[] handle)abstract byte[]readFile(byte[] handle, UnsignedInteger64 offset, UnsignedInteger32 len)abstract SftpFilereadSymbolicLink(java.lang.String path)abstract voidremoveDirectory(java.lang.String path)abstract voidremoveFile(java.lang.String path)abstract voidrenameFile(java.lang.String oldpath, java.lang.String newpath)abstract voidsetFileAttributes(byte[] handle, FileAttributes attrs)abstract voidsetFileAttributes(java.lang.String path, FileAttributes attrs)abstract voidverifyPermissions(java.lang.String username, java.lang.String path, java.lang.String permissions)abstract voidwriteFile(byte[] handle, UnsignedInteger64 offset, byte[] data, int off, int len)
-
-
-
Field Detail
-
OPEN_READ
public static final int OPEN_READ
- See Also:
- Constant Field Values
-
OPEN_WRITE
public static final int OPEN_WRITE
- See Also:
- Constant Field Values
-
OPEN_APPEND
public static final int OPEN_APPEND
- See Also:
- Constant Field Values
-
OPEN_CREATE
public static final int OPEN_CREATE
- See Also:
- Constant Field Values
-
OPEN_TRUNCATE
public static final int OPEN_TRUNCATE
- See Also:
- Constant Field Values
-
OPEN_EXCLUSIVE
public static final int OPEN_EXCLUSIVE
- See Also:
- Constant Field Values
-
-
Method Detail
-
fileExists
public abstract boolean fileExists(java.lang.String path) throws java.io.IOException- Parameters:
path-- Returns:
- Throws:
PermissionDeniedExceptionjava.io.FileNotFoundExceptionjava.io.IOException
-
getCanonicalPath
public abstract java.lang.String getCanonicalPath(java.lang.String path) throws java.io.IOException, java.io.FileNotFoundException- Parameters:
path-- Returns:
- Throws:
PermissionDeniedExceptionjava.io.FileNotFoundExceptionjava.io.IOException
-
getRealPath
public abstract java.lang.String getRealPath(java.lang.String path) throws java.io.FileNotFoundException- Parameters:
path-- Returns:
- Throws:
java.io.FileNotFoundException
-
makeDirectory
public abstract boolean makeDirectory(java.lang.String path) throws PermissionDeniedException, java.io.FileNotFoundException, java.io.IOException- Parameters:
path-- Returns:
- Throws:
PermissionDeniedExceptionjava.io.FileNotFoundExceptionjava.io.IOException
-
getFileAttributes
public abstract FileAttributes getFileAttributes(java.lang.String path) throws java.io.IOException, java.io.FileNotFoundException
- Parameters:
path-- Returns:
- Throws:
java.io.IOExceptionjava.io.FileNotFoundException
-
getFileAttributes
public abstract FileAttributes getFileAttributes(byte[] handle) throws java.io.IOException, InvalidHandleException
- Parameters:
handle-- Returns:
- Throws:
java.io.IOExceptionInvalidHandleException
-
openDirectory
public abstract byte[] openDirectory(java.lang.String path) throws PermissionDeniedException, java.io.FileNotFoundException, java.io.IOException- Parameters:
path-- Returns:
- Throws:
PermissionDeniedExceptionjava.io.FileNotFoundExceptionjava.io.IOException
-
readDirectory
public abstract SftpFile[] readDirectory(byte[] handle) throws InvalidHandleException, java.io.EOFException, java.io.IOException
- Parameters:
handle-- Returns:
- Throws:
InvalidHandleExceptionjava.io.EOFExceptionjava.io.IOException
-
openFile
public abstract byte[] openFile(java.lang.String path, UnsignedInteger32 flags, FileAttributes attrs) throws PermissionDeniedException, java.io.FileNotFoundException, java.io.IOException- Parameters:
path-flags-attrs-- Returns:
- Throws:
PermissionDeniedExceptionjava.io.FileNotFoundExceptionjava.io.IOException
-
readFile
public abstract byte[] readFile(byte[] handle, UnsignedInteger64 offset, UnsignedInteger32 len) throws InvalidHandleException, java.io.EOFException, java.io.IOException- Parameters:
handle-offset-len-- Returns:
- Throws:
InvalidHandleExceptionjava.io.EOFExceptionjava.io.IOException
-
writeFile
public abstract void writeFile(byte[] handle, UnsignedInteger64 offset, byte[] data, int off, int len) throws InvalidHandleException, java.io.IOException- Parameters:
handle-offset-data-off-len-- Throws:
InvalidHandleExceptionjava.io.IOException
-
closeFile
public abstract void closeFile(byte[] handle) throws InvalidHandleException, java.io.IOException- Parameters:
handle-- Throws:
InvalidHandleExceptionjava.io.IOException
-
removeFile
public abstract void removeFile(java.lang.String path) throws PermissionDeniedException, java.io.IOException, java.io.FileNotFoundException- Parameters:
path-- Throws:
PermissionDeniedExceptionjava.io.IOExceptionjava.io.FileNotFoundException
-
renameFile
public abstract void renameFile(java.lang.String oldpath, java.lang.String newpath) throws PermissionDeniedException, java.io.FileNotFoundException, java.io.IOException- Parameters:
oldpath-newpath-- Throws:
PermissionDeniedExceptionjava.io.FileNotFoundExceptionjava.io.IOException
-
removeDirectory
public abstract void removeDirectory(java.lang.String path) throws PermissionDeniedException, java.io.FileNotFoundException, java.io.IOException- Parameters:
path-- Throws:
PermissionDeniedExceptionjava.io.FileNotFoundExceptionjava.io.IOException
-
setFileAttributes
public abstract void setFileAttributes(java.lang.String path, FileAttributes attrs) throws PermissionDeniedException, java.io.IOException, java.io.FileNotFoundException- Parameters:
path-attrs-- Throws:
PermissionDeniedExceptionjava.io.IOExceptionjava.io.FileNotFoundException
-
setFileAttributes
public abstract void setFileAttributes(byte[] handle, FileAttributes attrs) throws PermissionDeniedException, java.io.IOException, InvalidHandleException- Parameters:
handle-attrs-- Throws:
PermissionDeniedExceptionjava.io.IOExceptionInvalidHandleException
-
readSymbolicLink
public abstract SftpFile readSymbolicLink(java.lang.String path) throws UnsupportedFileOperationException, java.io.FileNotFoundException, java.io.IOException, PermissionDeniedException
- Parameters:
path-- Returns:
- Throws:
UnsupportedFileOperationExceptionjava.io.FileNotFoundExceptionjava.io.IOExceptionPermissionDeniedException
-
createSymbolicLink
public abstract void createSymbolicLink(java.lang.String link, java.lang.String target) throws UnsupportedFileOperationException, java.io.FileNotFoundException, java.io.IOException, PermissionDeniedException- Parameters:
link-target-- Throws:
UnsupportedFileOperationExceptionjava.io.FileNotFoundExceptionjava.io.IOExceptionPermissionDeniedException
-
getDefaultPath
public abstract java.lang.String getDefaultPath(java.lang.String username) throws java.io.FileNotFoundException- Throws:
java.io.FileNotFoundException
-
verifyPermissions
public abstract void verifyPermissions(java.lang.String username, java.lang.String path, java.lang.String permissions) throws PermissionDeniedException, java.io.FileNotFoundException, java.io.IOException- Parameters:
username-path-permissions-- Throws:
PermissionDeniedExceptionjava.io.FileNotFoundExceptionjava.io.IOException
-
getInstance
public static NativeFileSystemProvider getInstance()
- Returns:
-
-