package com.revolsys.io;
import java.io.IOException;
public class StringBuilderWriter extends java.io.Writer {
private final StringBuilder buffer;
public StringBuilderWriter(final StringBuilder buffer) {
this.buffer = buffer;
}
@Override
public void close() throws IOException {
}
/**
* Flush the stream.
*/
@Override
public void flush() {
}
public StringBuilder getBuffer() {
return this.buffer;
}
@Override
public String toString() {
return this.buffer.toString();
}
@Override
public void write(final char[] cbuf, final int off, final int len) {
if (off < 0 || off > cbuf.length || len < 0 || off + len > cbuf.length || off + len < 0) {
throw new IndexOutOfBoundsException();
} else if (len == 0) {
return;
}
this.buffer.append(cbuf, off, len);
}
@Override
public void write(final int c) {
this.buffer.append((char)c);
}
@Override
public void write(final String str) {
this.buffer.append(str);
}
@Override
public void write(final String str, final int off, final int len) {
this.buffer.append(str.substring(off, off + len));
}
}