Last change
on this file since 29855 was 29855, checked in by davidb, 9 years ago |
John's code after refactoring by Tom over the summer of 2014/2015
|
File size:
1.3 KB
|
Line | |
---|
1 |
|
---|
2 | package tasks;
|
---|
3 |
|
---|
4 | import java.io.File;
|
---|
5 | import java.util.Calendar;
|
---|
6 | import java.util.TimerTask;
|
---|
7 | import util.FileUtil;
|
---|
8 |
|
---|
9 | /**
|
---|
10 | * Sweeps the temp directory for old temp files
|
---|
11 | * @author University of Waikato - Te Whare WÄnanga o Waikato
|
---|
12 | * @version 1.0
|
---|
13 | * @since 2014-11-21
|
---|
14 | */
|
---|
15 | public class FileSweeper extends TimerTask {
|
---|
16 |
|
---|
17 | private final File directory;
|
---|
18 | private final int minutes;
|
---|
19 |
|
---|
20 | /**
|
---|
21 | * @param File directory to be sweeped for old temp files.
|
---|
22 | * @param int minutes between sweepings
|
---|
23 | */
|
---|
24 | public FileSweeper(File directoryToSweep, int minutes) {
|
---|
25 | FileUtil.checkValidDir(directoryToSweep);
|
---|
26 | directory = directoryToSweep;
|
---|
27 | this.minutes = minutes;
|
---|
28 | }
|
---|
29 |
|
---|
30 | @Override
|
---|
31 | /**
|
---|
32 | * Runs
|
---|
33 | */
|
---|
34 | public void run() {
|
---|
35 | Calendar cal = Calendar.getInstance();
|
---|
36 | cal.add(Calendar.MINUTE, minutes * -1);
|
---|
37 | long purgeTime = cal.getTimeInMillis();
|
---|
38 | sweep(purgeTime);
|
---|
39 | }
|
---|
40 |
|
---|
41 | /**
|
---|
42 | * Runs a sweep over the temp file directory.
|
---|
43 | * @param long if a files last modified time is lest then this purge time it will be delete
|
---|
44 | */
|
---|
45 | private void sweep(long purgeTime) {
|
---|
46 | final File[] listFiles = directory.listFiles();
|
---|
47 | for (File file : listFiles) {
|
---|
48 | if (file.lastModified() < purgeTime) {
|
---|
49 | FileUtil.deleteFile(file);
|
---|
50 | }
|
---|
51 | }
|
---|
52 | }
|
---|
53 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.