Mercurial > hg > Members > nobuyasu > jungle-network
annotate src/main/java/alice/jungle/persistent/PersistentChangeListReader.java @ 118:f64ff5bd66f5
Implements persistent for bbs app and Fixed bug JungleUpdater
author | one |
---|---|
date | Wed, 25 Dec 2013 20:02:26 +0900 |
parents | 895ab2907db3 |
children | 2e8034524259 |
rev | line source |
---|---|
105 | 1 package alice.jungle.persistent; |
85 | 2 |
3 import java.io.EOFException; | |
4 import java.io.IOException; | |
5 import java.io.InputStream; | |
116 | 6 import java.util.Iterator; |
85 | 7 |
8 import org.msgpack.MessagePack; | |
9 | |
106
f42f2e6b31de
Removed project reference and Added dependency in pom.xml
one
parents:
105
diff
changeset
|
10 import alice.jungle.operations.NetworkTreeOperationLog; |
85 | 11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList; |
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListReader; | |
13 | |
14 public class PersistentChangeListReader implements ChangeListReader { | |
15 | |
106
f42f2e6b31de
Removed project reference and Added dependency in pom.xml
one
parents:
105
diff
changeset
|
16 private InputStream in; |
116 | 17 MessagePack msgpack = PersistentJournal.getMsgPackInstance(); |
85 | 18 |
19 public PersistentChangeListReader(InputStream _in) { | |
20 in = _in; | |
21 } | |
22 | |
23 @Override | |
24 public ChangeListReader newReader() | |
25 { | |
118
f64ff5bd66f5
Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents:
116
diff
changeset
|
26 return null; |
85 | 27 } |
28 | |
29 @Override | |
30 public ChangeList read() | |
31 { | |
32 try { | |
33 final NetworkTreeOperationLog readLog = msgpack.read(in, NetworkTreeOperationLog.class); | |
86 | 34 PersistentChangeList cl = new PersistentChangeList(readLog); |
85 | 35 return cl; |
36 } catch (EOFException e){ | |
37 | |
38 } catch (IOException e) { | |
39 } | |
40 return null; | |
41 } | |
116 | 42 |
43 @Override | |
44 public Iterator<ChangeList> iterator() { | |
45 return new Iterator<ChangeList>() { | |
46 | |
47 @Override | |
48 public boolean hasNext() { | |
49 try { | |
50 return in.available() != 0; | |
51 } catch (IOException e) { | |
52 return false; | |
53 } | |
54 } | |
55 | |
56 @Override | |
57 public ChangeList next() { | |
58 return read(); | |
59 } | |
60 | |
61 @Override | |
62 public void remove() { | |
63 | |
64 } | |
65 }; | |
66 } | |
85 | 67 } |