public class DefaultFileReplicator extends AbstractVfsComponent implements FileReplicator, TemporaryFileStore
Modifier and Type | Field and Description |
---|---|
private java.util.ArrayList<java.lang.Object> |
copies |
private long |
filecount |
private static org.apache.commons.logging.Log |
log |
private static int |
MASK |
private static java.util.Random |
random |
private java.io.File |
tempDir |
private boolean |
tempDirMessageLogged |
private static char[] |
TMP_RESERVED_CHARS |
Constructor and Description |
---|
DefaultFileReplicator() |
DefaultFileReplicator(java.io.File tempDir)
Constructor to set the location of the temporary directory.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addFile(java.lang.Object file) |
java.io.File |
allocateFile(java.lang.String baseName)
Allocates a new temporary file.
|
void |
close()
Closes the replicator, deleting all temporary files.
|
protected java.io.File |
createAndAddFile(java.io.File parent,
java.lang.String basename) |
protected java.io.File |
createFile(java.io.File parent,
java.lang.String name)
Create the temporary file.
|
protected java.lang.String |
createFilename(java.lang.String baseName)
Create the temporary file name.
|
protected void |
deleteFile(java.io.File file)
Physically deletes the file from the file system.
|
protected long |
getFilecount() |
void |
init()
Initializes this component.
|
protected java.lang.Object |
removeFile()
Removes a file from the copies list.
|
protected void |
removeFile(java.lang.Object file)
Removes a instance from the list of copies.
|
java.io.File |
replicateFile(FileObject srcFile,
FileSelector selector)
Creates a local copy of the file, and all its descendants.
|
getContext, getLogger, setContext, setLogger
private static final org.apache.commons.logging.Log log
private static final int MASK
private static final java.util.Random random
private static final char[] TMP_RESERVED_CHARS
private final java.util.ArrayList<java.lang.Object> copies
private long filecount
private java.io.File tempDir
private boolean tempDirMessageLogged
public DefaultFileReplicator()
public DefaultFileReplicator(java.io.File tempDir)
tempDir
- The temporary directory.protected void addFile(java.lang.Object file)
public java.io.File allocateFile(java.lang.String baseName) throws FileSystemException
allocateFile
in interface TemporaryFileStore
baseName
- the base file name.FileSystemException
- if an error occurs.public void close()
close
in interface VfsComponent
close
in class AbstractVfsComponent
protected java.io.File createAndAddFile(java.io.File parent, java.lang.String basename) throws FileSystemException
FileSystemException
protected java.io.File createFile(java.io.File parent, java.lang.String name) throws FileSystemException
parent
- The file to use as the parent of the file being created.name
- The name of the file to create.FileSystemException
- if an error occurs creating the file.protected java.lang.String createFilename(java.lang.String baseName)
baseName
- The base to prepend to the file name being created.protected void deleteFile(java.io.File file)
file
- The File to delete.protected long getFilecount()
public void init() throws FileSystemException
init
in interface VfsComponent
init
in class AbstractVfsComponent
FileSystemException
- if an error occurs.protected java.lang.Object removeFile()
Notice: The system awaits that the returning object can be cast to a File
.
protected void removeFile(java.lang.Object file)
file
- The File to remove.public java.io.File replicateFile(FileObject srcFile, FileSelector selector) throws FileSystemException
replicateFile
in interface FileReplicator
srcFile
- The file to copy.selector
- The FileSelector.FileSystemException
- if an error occurs copying the file.