X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=unused%2Fjavajs%2Futil%2FListDataReader.java;fp=unused%2Fjavajs%2Futil%2FListDataReader.java;h=78149775efa580ab35b92cbdc81ff02dbd027319;hb=4f30214e8098748469c6a4269ac2ed6c5750e4b0;hp=0000000000000000000000000000000000000000;hpb=9dabc02511e3a334a5749a504f57f69d6c9017bd;p=jalview.git diff --git a/unused/javajs/util/ListDataReader.java b/unused/javajs/util/ListDataReader.java new file mode 100644 index 0000000..7814977 --- /dev/null +++ b/unused/javajs/util/ListDataReader.java @@ -0,0 +1,57 @@ +package javajs.util; + +import java.io.IOException; + + + + + +/** + * + * VectorDataReader subclasses BufferedReader and overrides its + * read, readLine, mark, and reset methods so that JmolAdapter + * works with Vector arrays without any further adaptation. + * + */ + +public class ListDataReader extends DataReader { + private Lst data; + private int pt; + private int len; + + public ListDataReader() { + super(); + } + + @SuppressWarnings("unchecked") + @Override + public DataReader setData(Object data) { + this.data = (Lst) data; + len = this.data.size(); + return this; + } + + @Override + public int read(char[] buf, int off, int len) throws IOException { + return readBuf(buf, off, len); + } + + @Override + public String readLine() { + return (pt < len ? data.get(pt++) : null); + } + + /** + * + * @param ptr + */ + public void mark(long ptr) { + //ignore ptr. + ptMark = pt; + } + + @Override + public void reset() { + pt = ptMark; + } +} \ No newline at end of file