View Javadoc

1   /**
2    * Copyright 2005 Steve Molloy
3    * 
4    * This file is part of OV4J.
5    * 
6    * OV4J is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as
7    * published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
8    * 
9    * OV4J is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
10   * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
11   * 
12   * You should have received a copy of the GNU General Public License along with OV4J; if not, write to the Free Software
13   * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
14   * 
15   */
16  package org.ov4j.hessianImpl;
17  
18  import java.util.logging.Level;
19  import java.util.logging.Logger;
20  
21  import java.io.File;
22  import java.io.FileFilter;
23  
24  /**
25   * @author smolloy
26   * 
27   */
28  public class TStampFileFilter implements FileFilter {
29  	/**
30  	 * Logger for this class
31  	 */
32  	private static final Logger	logger	= Logger.getLogger(TStampFileFilter.class.getName());
33  
34  	/** Timestamp. */
35  	private final long			tstamp;
36  
37  	public TStampFileFilter(final long tstamp) {
38  		this.tstamp = tstamp;
39  	}
40  
41  	/**
42  	 * Accepts only normal files newer than tstamp.
43  	 * 
44  	 * @see java.io.FileFilter#accept(java.io.File)
45  	 */
46  	public boolean accept(final File pathname) {
47  		if (TStampFileFilter.logger.isLoggable(Level.FINEST)) {
48  			TStampFileFilter.logger.entering("TStampFileFilter", "accept(File=" + pathname + ")", "start");
49  		}
50  
51  		final boolean returnboolean = pathname.isFile() && pathname.lastModified() > tstamp;
52  
53  		if (TStampFileFilter.logger.isLoggable(Level.FINEST)) {
54  			TStampFileFilter.logger.exiting("TStampFileFilter", "accept(File=" + pathname + ")", "end - return value="
55  				+ returnboolean);
56  		}
57  		return returnboolean;
58  	}
59  
60  }