Mercurial > hg > Members > nobuyasu > jungle-network
annotate src/main/java/alice/jungle/persistent/PersistentChangeListReader.java @ 116:895ab2907db3
Modified pom.xml
author | one |
---|---|
date | Fri, 20 Dec 2013 20:47:35 +0900 |
parents | f42f2e6b31de |
children | f64ff5bd66f5 |
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() { | |
20 in = null; | |
21 } | |
22 | |
23 public PersistentChangeListReader(InputStream _in) { | |
24 in = _in; | |
25 } | |
26 | |
27 @Override | |
28 public ChangeListReader newReader() | |
29 { | |
30 return new PersistentChangeListReader(); | |
31 } | |
32 | |
33 @Override | |
34 public ChangeList read() | |
35 { | |
36 try { | |
37 final NetworkTreeOperationLog readLog = msgpack.read(in, NetworkTreeOperationLog.class); | |
86 | 38 PersistentChangeList cl = new PersistentChangeList(readLog); |
85 | 39 return cl; |
40 } catch (EOFException e){ | |
41 | |
42 } catch (IOException e) { | |
43 } | |
44 return null; | |
45 } | |
116 | 46 |
47 @Override | |
48 public Iterator<ChangeList> iterator() { | |
49 return new Iterator<ChangeList>() { | |
50 | |
51 @Override | |
52 public boolean hasNext() { | |
53 try { | |
54 return in.available() != 0; | |
55 } catch (IOException e) { | |
56 return false; | |
57 } | |
58 } | |
59 | |
60 @Override | |
61 public ChangeList next() { | |
62 return read(); | |
63 } | |
64 | |
65 @Override | |
66 public void remove() { | |
67 | |
68 } | |
69 }; | |
70 } | |
85 | 71 } |