package com.yet.spring.core.loggers; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import com.yet.spring.core.beans.Event; public class FileEventLogger extends AbstractLogger { private File file; private String filename; public FileEventLogger(String filename) { this.filename = filename; } public void init() throws IOException { file = new File(filename); if (file.exists() && !file.canWrite()) { throw new IllegalArgumentException("Can't write to file " + filename); } else if (!file.exists()) { file.createNewFile(); } } @Override public void logEvent(Event event) { try { FileUtils.writeStringToFile(file, event.toString() + "\n", true); } catch (IOException e) { e.printStackTrace(); } } }