public abstract class FilesystemBasedFileImpl extends AbstractFile
Modifier and Type | Field and Description |
---|---|
protected String |
currentFile
Current file if any
|
protected boolean |
isAppend
Is this file in append mode
|
protected SessionInterface |
session
SessionInterface
|
isReady
Modifier | Constructor and Description |
---|---|
protected |
FilesystemBasedFileImpl(SessionInterface session,
FilesystemBasedDirImpl dir,
String path)
Special constructor for possibly external file
|
protected |
FilesystemBasedFileImpl(SessionInterface session,
FilesystemBasedDirImpl dir,
String path,
boolean append) |
Modifier and Type | Method and Description |
---|---|
boolean |
abortFile()
Try to abort the current transfer if any
|
boolean |
canRead() |
boolean |
canWrite() |
void |
clear()
Set empty this FtpFile, mark it unReady.
|
boolean |
closeFile()
Close the current FileInterface
|
boolean |
delete()
Delete the current FileInterface.
|
boolean |
exists() |
protected boolean |
get(FileChannel fileChannelOut)
Write the FileInterface to the fileChannelOut, thus bypassing the
limitation of the file size to 2^32
bytes.
|
DirInterface |
getDir() |
String |
getFile() |
protected FileChannel |
getFileChannel()
Returns the FileChannel in In mode associated with the current file.
|
protected File |
getFileFromPath(String path)
Get the File from this path, checking first its validity
|
protected FileOutputStream |
getFileOutputStream(boolean append)
Returns the FileOutputStream in Out mode associated with the current
file.
|
long |
getPosition()
Return the current position in the FileInterface.
|
protected RandomAccessFile |
getRandomFile()
Returns the RandomAccessFile in Out mode associated with the current
file.
|
protected String |
getRelativePath(File file)
Get the relative path (without mount point)
|
SessionInterface |
getSession() |
boolean |
isDirectory()
Is the current FileInterface a directory and exists
|
boolean |
isFile()
Is the current FileInterface a file and exists
|
boolean |
isInReading() |
boolean |
isInWriting() |
long |
length() |
DataBlock |
readDataBlock()
Read a new block for FileInterface
|
boolean |
renameTo(String path)
Rename the current FileInterface into a new filename from argument
|
void |
setPosition(long position)
Change the position in the file.
|
void |
writeDataBlock(DataBlock dataBlock)
Function called by the DataNetworkHandler when it receives one DataBlock
(Store like command)
|
checkIdentify, getMarker, restartMarker, retrieve, store
protected final SessionInterface session
protected String currentFile
protected boolean isAppend
protected FilesystemBasedFileImpl(SessionInterface session, FilesystemBasedDirImpl dir, String path, boolean append) throws CommandAbstractException
session
- dir
- It is not necessary the directory that owns this file.path
- append
- CommandAbstractException
protected FilesystemBasedFileImpl(SessionInterface session, FilesystemBasedDirImpl dir, String path)
session
- dir
- It is not necessary the directory that owns this file.path
- public void clear() throws CommandAbstractException
FileInterface
clear
in interface FileInterface
clear
in class AbstractFile
CommandAbstractException
public SessionInterface getSession()
public DirInterface getDir()
protected File getFileFromPath(String path) throws CommandAbstractException
path
- CommandAbstractException
protected String getRelativePath(File file)
file
- public boolean isDirectory() throws CommandAbstractException
FileInterface
CommandAbstractException
public boolean isFile() throws CommandAbstractException
FileInterface
CommandAbstractException
public String getFile() throws CommandAbstractException
CommandAbstractException
public boolean closeFile() throws CommandAbstractException
FileInterface
CommandAbstractException
public boolean abortFile() throws CommandAbstractException
FileInterface
CommandAbstractException
public long length() throws CommandAbstractException
CommandAbstractException
public boolean isInReading() throws CommandAbstractException
CommandAbstractException
public boolean isInWriting() throws CommandAbstractException
CommandAbstractException
public boolean canRead() throws CommandAbstractException
CommandAbstractException
public boolean canWrite() throws CommandAbstractException
CommandAbstractException
public boolean exists() throws CommandAbstractException
CommandAbstractException
public boolean delete() throws CommandAbstractException
FileInterface
CommandAbstractException
public boolean renameTo(String path) throws CommandAbstractException
FileInterface
path
- the new filename (path could be relative or absolute
-
without mount point)CommandAbstractException
public DataBlock readDataBlock() throws FileTransferException, FileEndOfTransferException
FileInterface
FileTransferException
FileEndOfTransferException
public void writeDataBlock(DataBlock dataBlock) throws FileTransferException
FileInterface
FileTransferException
public long getPosition()
public void setPosition(long position) throws IOException
position
- the position to setIOException
protected boolean get(FileChannel fileChannelOut)
This call closes the fileChannelOut with fileChannelOut.close() if the operation is in success.
fileChannelOut
- protected FileChannel getFileChannel()
protected RandomAccessFile getRandomFile()
protected FileOutputStream getFileOutputStream(boolean append)
append
- True if the FileOutputStream should be in append
modeCopyright © 2009–2020 Waarp. All rights reserved.