package gueei.binding.gen;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.util.Hashtable;
import java.util.Map.Entry;
public class TemplateWriter {
public static String make(InputStream template, Hashtable<String, String> data)
throws IOException{
BufferedReader reader = new BufferedReader(new InputStreamReader(template));
StringBuilder builder = new StringBuilder();
String line;
while((line = reader.readLine())!=null){
builder.append(line + "\n");
}
String content = builder.toString();
for(Entry<String, String> entry: data.entrySet()){
String replace = "${" + entry.getKey() + "}";
// System.out.println("entry: " + replace + ": " + entry.getValue());
content = content.replace(replace, entry.getValue());
}
return content;
}
public static void write(OutputStream target, String data) throws IOException{
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(target));
writer.write(data);
}
public static void writeToFile(File dir, String filename, String data) throws IOException{
File file = new File(dir, filename);
file.createNewFile();
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(data);
writer.close();
}
}