blob: fb9691182d9699f3f3bc0683ca6b3d95389bce33 [file] [log] [blame]
package fi.iki.elonen;
import fi.iki.elonen.debug.DebugServer;
import java.util.ArrayList;
import java.util.List;
/**
* @author Paul S. Hawke (paul.hawke@gmail.com)
* On: 3/9/13 at 12:47 AM
*/
public class TempFilesServer extends DebugServer {
public static void main(String[] args) {
TempFilesServer server = new TempFilesServer();
server.setTempFileManagerFactory(new ExampleManagerFactory());
ServerRunner.executeInstance(server);
}
private static class ExampleManagerFactory implements TempFileManagerFactory {
@Override
public TempFileManager create() {
return new ExampleManager();
}
}
private static class ExampleManager implements TempFileManager {
private final String tmpdir;
private final List<TempFile> tempFiles;
private ExampleManager() {
tmpdir = System.getProperty("java.io.tmpdir");
tempFiles = new ArrayList<TempFile>();
}
@Override
public TempFile createTempFile() throws Exception {
DefaultTempFile tempFile = new DefaultTempFile(tmpdir);
tempFiles.add(tempFile);
System.out.println("Created tempFile: " + tempFile.getName());
return tempFile;
}
@Override
public void clear() {
if (!tempFiles.isEmpty()) {
System.out.println("Cleaning up:");
}
for (TempFile file : tempFiles) {
try {
System.out.println(" "+file.getName());
file.delete();
} catch (Exception ignored) {}
}
tempFiles.clear();
}
}
}