public class FtpFileTracker
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected java.io.PrintWriter |
currentWriter |
protected java.lang.ThreadLocal<java.text.SimpleDateFormat> |
dateFmt |
protected int |
daysToTrack |
static int |
DEFAULT_DAYS_TO_TRACK |
protected boolean |
keepRunning |
protected java.lang.Thread |
oldTrackerFileRemoverThread |
protected java.io.File |
scratchDirectory |
protected java.util.TreeSet |
sortedFilenameSet |
protected java.util.ArrayList |
trackerFileList |
protected java.lang.String |
trackerFilePrefix |
Constructor and Description |
---|
FtpFileTracker(java.lang.String filePrefix,
java.io.File scratchDirectory,
int days) |
Modifier and Type | Method and Description |
---|---|
boolean |
contains(java.lang.String ipAddress,
java.lang.String filename)
Search this tracker for the given IP address + file name combination.
|
void |
flushOldRecords() |
void |
init() |
protected void |
initSortedFilenameSet() |
protected void |
initTrackerFileList(java.util.Calendar cal,
int daysToTrack) |
protected java.lang.String |
makeTodayTrackerFilename() |
protected java.lang.String |
makeTrackerFilename(java.util.Date date) |
protected void |
readTrackerFile(java.io.File inputTrackerFile,
java.util.TreeSet filenameSet) |
protected void |
removeOutdatedTrackerFiles() |
void |
shutdown() |
boolean |
track(java.lang.String ipAddress,
java.lang.String filename)
Adds the specified IP address and file name to this tracker if it is not already present.
|
public static final int DEFAULT_DAYS_TO_TRACK
protected java.util.TreeSet sortedFilenameSet
protected java.lang.String trackerFilePrefix
protected java.lang.ThreadLocal<java.text.SimpleDateFormat> dateFmt
protected java.util.ArrayList trackerFileList
protected java.io.PrintWriter currentWriter
protected java.io.File scratchDirectory
protected java.lang.Thread oldTrackerFileRemoverThread
protected boolean keepRunning
protected int daysToTrack
public FtpFileTracker(java.lang.String filePrefix, java.io.File scratchDirectory, int days)
public void shutdown()
public boolean track(java.lang.String ipAddress, java.lang.String filename)
ipAddress
- IP address to be added to this tracker.filename
- file name to be added to this tracker.public boolean contains(java.lang.String ipAddress, java.lang.String filename)
ipAddress
- IP address to be checked within this tracker.filename
- file name to be checked within this tracker.public void flushOldRecords() throws java.io.IOException
java.io.IOException
protected java.lang.String makeTodayTrackerFilename()
protected java.lang.String makeTrackerFilename(java.util.Date date)
protected void readTrackerFile(java.io.File inputTrackerFile, java.util.TreeSet filenameSet)
public void init() throws java.io.IOException
java.io.IOException
protected void initTrackerFileList(java.util.Calendar cal, int daysToTrack)
protected void removeOutdatedTrackerFiles()
protected void initSortedFilenameSet()