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();
+	}
+
+}