annotate src/main/java/alice/jungle/persistent/PersistentJournal.java @ 169:54d68cda84c4

create edit Attribute & Folder Method
author tatsuki
date Tue, 29 Jul 2014 18:51:44 +0900
parents cd4d64249931
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
105
f9e29a52efd3 Move some files
one
parents: 89
diff changeset
1 package alice.jungle.persistent;
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
2
e641f559559c Added some files for persistent
one
parents:
diff changeset
3 import java.io.File;
e641f559559c Added some files for persistent
one
parents:
diff changeset
4 import java.io.FileInputStream;
e641f559559c Added some files for persistent
one
parents:
diff changeset
5 import java.io.FileNotFoundException;
e641f559559c Added some files for persistent
one
parents:
diff changeset
6 import java.io.FileOutputStream;
e641f559559c Added some files for persistent
one
parents:
diff changeset
7 import java.io.IOException;
e641f559559c Added some files for persistent
one
parents:
diff changeset
8 import java.io.InputStream;
e641f559559c Added some files for persistent
one
parents:
diff changeset
9 import java.io.OutputStream;
e641f559559c Added some files for persistent
one
parents:
diff changeset
10
e641f559559c Added some files for persistent
one
parents:
diff changeset
11
e641f559559c Added some files for persistent
one
parents:
diff changeset
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListReader;
e641f559559c Added some files for persistent
one
parents:
diff changeset
13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListWriter;
e641f559559c Added some files for persistent
one
parents:
diff changeset
14
135
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 118
diff changeset
15 public class PersistentJournal implements NetworkJournal {
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
16
158
cd4d64249931 minor fix
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 135
diff changeset
17 // private ChangeListWriter WRITER;
118
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
18 private ChangeListReader READER;
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
19 private OutputStream out;
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
20 private InputStream in;
169
54d68cda84c4 create edit Attribute & Folder Method
tatsuki
parents: 158
diff changeset
21 private String logFileName;
135
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 118
diff changeset
22
86
bcaf28f8244d Added PersistentChageList and PersistentJournalTest
one
parents: 85
diff changeset
23 public PersistentJournal() {
bcaf28f8244d Added PersistentChageList and PersistentJournalTest
one
parents: 85
diff changeset
24 }
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
25
e641f559559c Added some files for persistent
one
parents:
diff changeset
26 public PersistentJournal(File file) throws FileNotFoundException {
118
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
27 out = new FileOutputStream(file,true);
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
28 in = new FileInputStream(file);
169
54d68cda84c4 create edit Attribute & Folder Method
tatsuki
parents: 158
diff changeset
29 //「 WRITER = new PersistentChangeListWriter(out);
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
30 READER = new PersistentChangeListReader(in);
e641f559559c Added some files for persistent
one
parents:
diff changeset
31 }
e641f559559c Added some files for persistent
one
parents:
diff changeset
32
e641f559559c Added some files for persistent
one
parents:
diff changeset
33 @Override
e641f559559c Added some files for persistent
one
parents:
diff changeset
34 public ChangeListReader getReader() {
e641f559559c Added some files for persistent
one
parents:
diff changeset
35 return READER;
e641f559559c Added some files for persistent
one
parents:
diff changeset
36 }
e641f559559c Added some files for persistent
one
parents:
diff changeset
37
e641f559559c Added some files for persistent
one
parents:
diff changeset
38 @Override
e641f559559c Added some files for persistent
one
parents:
diff changeset
39 public ChangeListWriter getWriter() {
118
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
40 String timeStamp = Long.toString(System.currentTimeMillis());
169
54d68cda84c4 create edit Attribute & Folder Method
tatsuki
parents: 158
diff changeset
41 logFileName = timeStamp + ".log";
118
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
42 OutputStream outStream = null;
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
43 try {
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
44 outStream = new FileOutputStream(new File("./log/"+logFileName));
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
45 } catch (FileNotFoundException e) {
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
46 e.printStackTrace();
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
47 }
135
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 118
diff changeset
48 ChangeListWriter writer = new PersistentChangeListWriter(outStream);
118
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
49 return writer;
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
50 }
e641f559559c Added some files for persistent
one
parents:
diff changeset
51
86
bcaf28f8244d Added PersistentChageList and PersistentJournalTest
one
parents: 85
diff changeset
52 public void setOutputFile(File file) throws FileNotFoundException {
118
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
53 setOutputStream(new FileOutputStream(file, true));
86
bcaf28f8244d Added PersistentChageList and PersistentJournalTest
one
parents: 85
diff changeset
54 }
bcaf28f8244d Added PersistentChageList and PersistentJournalTest
one
parents: 85
diff changeset
55
bcaf28f8244d Added PersistentChageList and PersistentJournalTest
one
parents: 85
diff changeset
56 public void setInputFile(File file) throws FileNotFoundException {
118
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
57 setInputStream(new FileInputStream(file));
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
58 }
e641f559559c Added some files for persistent
one
parents:
diff changeset
59
e641f559559c Added some files for persistent
one
parents:
diff changeset
60 public void setOutputStream(OutputStream _out) {
e641f559559c Added some files for persistent
one
parents:
diff changeset
61 out = _out;
158
cd4d64249931 minor fix
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 135
diff changeset
62 // WRITER = new PersistentChangeListWriter(out);
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
63 }
e641f559559c Added some files for persistent
one
parents:
diff changeset
64
e641f559559c Added some files for persistent
one
parents:
diff changeset
65 public OutputStream getOutputStream() {
e641f559559c Added some files for persistent
one
parents:
diff changeset
66 return out;
e641f559559c Added some files for persistent
one
parents:
diff changeset
67 }
e641f559559c Added some files for persistent
one
parents:
diff changeset
68
e641f559559c Added some files for persistent
one
parents:
diff changeset
69 public void setInputStream(InputStream _in) {
e641f559559c Added some files for persistent
one
parents:
diff changeset
70 in = _in;
118
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
71 READER = new PersistentChangeListReader(in);
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
72 }
118
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
73
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
74 public InputStream getInputStream() {
e641f559559c Added some files for persistent
one
parents:
diff changeset
75 return in;
e641f559559c Added some files for persistent
one
parents:
diff changeset
76 }
e641f559559c Added some files for persistent
one
parents:
diff changeset
77
169
54d68cda84c4 create edit Attribute & Folder Method
tatsuki
parents: 158
diff changeset
78 public String getLogName(){
54d68cda84c4 create edit Attribute & Folder Method
tatsuki
parents: 158
diff changeset
79 return logFileName;
54d68cda84c4 create edit Attribute & Folder Method
tatsuki
parents: 158
diff changeset
80 }
54d68cda84c4 create edit Attribute & Folder Method
tatsuki
parents: 158
diff changeset
81
118
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
82 public void close() throws IOException {
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
83 out.close();
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
84 in.close();
f64ff5bd66f5 Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents: 116
diff changeset
85 }
85
e641f559559c Added some files for persistent
one
parents:
diff changeset
86 }