Mercurial > hg > Members > nobuyasu > jungle-network
view src/main/java/alice/jungle/persistent/PersistentJournal.java @ 195:82698be06c6c default tip
change index TreeMap
author | tatsuki |
---|---|
date | Tue, 28 Apr 2015 07:51:41 +0900 |
parents | 54d68cda84c4 |
children |
line wrap: on
line source
package alice.jungle.persistent; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListReader; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListWriter; public class PersistentJournal implements NetworkJournal { // private ChangeListWriter WRITER; private ChangeListReader READER; private OutputStream out; private InputStream in; private String logFileName; public PersistentJournal() { } public PersistentJournal(File file) throws FileNotFoundException { out = new FileOutputStream(file,true); in = new FileInputStream(file); //「 WRITER = new PersistentChangeListWriter(out); READER = new PersistentChangeListReader(in); } @Override public ChangeListReader getReader() { return READER; } @Override public ChangeListWriter getWriter() { String timeStamp = Long.toString(System.currentTimeMillis()); logFileName = timeStamp + ".log"; OutputStream outStream = null; try { outStream = new FileOutputStream(new File("./log/"+logFileName)); } catch (FileNotFoundException e) { e.printStackTrace(); } ChangeListWriter writer = new PersistentChangeListWriter(outStream); return writer; } public void setOutputFile(File file) throws FileNotFoundException { setOutputStream(new FileOutputStream(file, true)); } public void setInputFile(File file) throws FileNotFoundException { setInputStream(new FileInputStream(file)); } public void setOutputStream(OutputStream _out) { out = _out; // WRITER = new PersistentChangeListWriter(out); } public OutputStream getOutputStream() { return out; } public void setInputStream(InputStream _in) { in = _in; READER = new PersistentChangeListReader(in); } public InputStream getInputStream() { return in; } public String getLogName(){ return logFileName; } public void close() throws IOException { out.close(); in.close(); } }