Mercurial Hosting > nabble
diff src/cachingfilter/CachedFile.java @ 0:7ecd1a4ef557
add content
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 21 Mar 2019 19:15:52 -0600 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/cachingfilter/CachedFile.java Thu Mar 21 19:15:52 2019 -0600 @@ -0,0 +1,52 @@ +package cachingfilter; + +import java.io.File; +import java.io.IOException; + +import java.io.File; +import java.io.IOException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + + +final class CachedFile implements CachedPage { + private static final Logger logger = LoggerFactory.getLogger(CachedFile.class); + private final File file; + + CachedFile( File parent, String child ) { + this.file = new File(parent,child); + } + + public String name() { + return file.getName(); + } + + public boolean exists() { + return file.exists(); + } + + public File lastFile() { + return file; + } + + public File newFile() throws IOException { + delete(); + if( !file.createNewFile() ) + throw new RuntimeException("couldn't create "+file); + return file; + } + + public void deleteNewFile() { + if( !delete() ) + throw new RuntimeException("couldn't delete "+file); + } + + public boolean delete() { + return file.delete(); + } + + public String toString() { + return file.toString(); + } + +}