package chbachman.armour.util;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
public class OutputHandler {
File file;
public Map<String, List<String>> categoryList = new HashMap<String, List<String>>();
public OutputHandler(File file) {
if (file.exists()) {
file.delete();
}
try {
file.createNewFile();
} catch (IOException e) {
}
this.file = file;
}
public void write(String category, String message, Object... params) {
List<String> list = categoryList.get(category);
if (list == null) {
list = new ArrayList<String>();
list.add(String.format(message, params));
categoryList.put(category, list);
} else {
list.add(String.format(message, params));
}
}
public void save() {
try {
BufferedWriter write = new BufferedWriter(new FileWriter(file));
for (Entry<String, List<String>> entry : categoryList.entrySet()) {
write.write(entry.getKey());
write.write("{");
write.newLine();
for (String s : entry.getValue()) {
write.write("\t");
write.write(s);
write.newLine();
}
write.write("}");
write.newLine();
write.newLine();
}
write.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}