View Javadoc

1   package ch.qos.logback.core.rolling.helper;
2   
3   import java.io.File;
4   import java.util.Date;
5   
6   public class TimeBasedCleaner {
7   
8     FileNamePattern fileNamePattern;
9     RollingCalendar rc;
10    int numberOfPeriods;
11  
12    public TimeBasedCleaner(FileNamePattern fileNamePattern, RollingCalendar rc,
13        int numberOfPeriods) {
14      this.fileNamePattern = fileNamePattern;
15      this.rc = rc;
16      //
17      this.numberOfPeriods = -numberOfPeriods -1;
18    }
19  
20    public void clean(Date now) {
21      Date date2delete = rc.getRelativeDate(now, numberOfPeriods);
22  
23      String filename = fileNamePattern.convertDate(date2delete);
24  
25      File file2Delete = new File(filename);
26  
27      if (file2Delete.exists() && file2Delete.isFile()) {
28        file2Delete.delete();
29      }
30    }
31  
32  }