Mercurial > hg > Members > nobuyasu > jungle-network
view 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 |
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 = PersistentJournal.getMsgPackInstance(); 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() { } }; } }