Mercurial > hg > Members > nobuyasu > jungle-network
view src/main/java/alice/jungle/persistent/PersistentChangeListReader.java @ 135:2e8034524259
Added NetworkJournal and SingletonMessageFromAlice class
author | Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 12 Jan 2014 06:18:37 +0900 |
parents | f64ff5bd66f5 |
children |
line wrap: on
line source
package alice.jungle.persistent; import java.io.EOFException; import java.io.IOException; import java.io.InputStream; import java.util.Iterator; import org.msgpack.MessagePack; import alice.jungle.operations.NetworkTreeOperationLog; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListReader; public class PersistentChangeListReader implements ChangeListReader { private InputStream in; MessagePack msgpack = SingletonMessageFromAlice.getInstance(); public PersistentChangeListReader(InputStream _in) { in = _in; } @Override public ChangeListReader newReader() { return null; } @Override public ChangeList read() { try { final NetworkTreeOperationLog readLog = msgpack.read(in, NetworkTreeOperationLog.class); PersistentChangeList cl = new PersistentChangeList(readLog); return cl; } catch (EOFException e){ } catch (IOException e) { } return null; } @Override public Iterator<ChangeList> iterator() { return new Iterator<ChangeList>() { @Override public boolean hasNext() { try { return in.available() != 0; } catch (IOException e) { return false; } } @Override public ChangeList next() { return read(); } @Override public void remove() { } }; } }