package jp.terasoluna.fw.file.dao.standard;
import java.io.IOException;
import java.io.Reader;
/**
* LineFeed1LineReadeの試験で利用するファイル行オブジェクトクラス。<br>
* 空実装<br>
* 入力された文字列をread()することで一文字づつ返す。
*/
public class LineFeed1LineReader_ReaderStub01 extends Reader {
private char[] data = new char[0];
@Override
public void close() throws IOException {
throw new IOException();
}
@Override
public int read(char[] cbuf, int off, int len) throws IOException {
if (data.length < len) {
throw new IllegalArgumentException();
}
if (len < off) {
throw new IllegalArgumentException();
}
cbuf[0] = data[0];
char[] temp = new char[data.length - 1];
System.arraycopy(data, 1, temp, 0, data.length - 1);
this.data = temp;
return 1;
}
public boolean ready() throws IOException {
return 0 < data.length;
}
public void setDataString(String dataString) {
this.data = dataString.toCharArray();
}
}