85
|
1 package alice.jungle.persistence;
|
|
2
|
|
3 import java.io.EOFException;
|
|
4 import java.io.IOException;
|
|
5 import java.io.InputStream;
|
|
6
|
|
7 import org.msgpack.MessagePack;
|
|
8
|
|
9 import alice.jungle.operations.NetworkTreeOperationLog;
|
|
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList;
|
|
11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListReader;
|
|
12
|
|
13 public class PersistentChangeListReader implements ChangeListReader {
|
|
14
|
|
15 private static InputStream in;
|
|
16 MessagePack msgpack = NetworkJournal.getMessagePack();
|
|
17
|
|
18 public PersistentChangeListReader() {
|
|
19 in = null;
|
|
20 }
|
|
21
|
|
22 public PersistentChangeListReader(InputStream _in) {
|
|
23 in = _in;
|
|
24 }
|
|
25
|
|
26 @Override
|
|
27 public ChangeListReader newReader()
|
|
28 {
|
|
29 return new PersistentChangeListReader();
|
|
30 }
|
|
31
|
|
32 @Override
|
|
33 public ChangeList read()
|
|
34 {
|
|
35 try {
|
|
36 final NetworkTreeOperationLog readLog = msgpack.read(in, NetworkTreeOperationLog.class);
|
86
|
37 PersistentChangeList cl = new PersistentChangeList(readLog);
|
85
|
38 return cl;
|
|
39 } catch (EOFException e){
|
|
40
|
|
41 } catch (IOException e) {
|
|
42 }
|
|
43 return null;
|
|
44 }
|
|
45 }
|