/***************************************************************************** This file is part of Git-Starteam. Git-Starteam is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Git-Starteam is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Git-Starteam. If not, see <http://www.gnu.org/licenses/>. ******************************************************************************/ package org.sync.util; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.List; public final class TempFileManager { private static TempFileManager Reference = new TempFileManager(); public static TempFileManager getInstance() { return Reference; } private List<File> tempFiles; private TempFileManager() { tempFiles = new ArrayList<File>(); } public File createTempFile(String name, String extension) throws IOException { File ret = File.createTempFile(name, extension); ret.deleteOnExit(); tempFiles.add(ret); return ret; } public void deleteTempFiles() { for(File f : tempFiles) { f.delete(); } tempFiles.clear(); } public int tempFileCount() { return tempFiles.size(); } }