xapi.dev.util.DebugPrintWriter Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of xapi-dev Show documentation
Show all versions of xapi-dev Show documentation
Everything needed to run a comprehensive dev environment.
Just type X_ and pick a service from autocomplete;
new dev modules will be added as they are built.
The only dev service not included in the uber jar is xapi-dev-maven,
as it includes all runtime dependencies of maven, adding ~4 seconds to build time,
and 6 megabytes to the final output jar size (without xapi-dev-maven, it's ~1MB).
The newest version!
package xapi.dev.util;
import java.io.PrintStream;
import java.io.PrintWriter;
public class DebugPrintWriter extends PrintWriter{
private final PrintStream listener;
public DebugPrintWriter(PrintWriter delegate) {
this(delegate, System.out);
}
public DebugPrintWriter(PrintWriter delegate, PrintStream listener) {
super(delegate);
this.listener = listener;
}
@Override
public void println() {
super.println();
listener.println();
}
@Override
public void write(char[] buf, int off, int len) {
super.write(buf, off, len);
listener.write(new String(buf).getBytes(), off, len);
}
@Override
public void write(int c) {
super.write(c);
listener.write(c);
}
@Override
public void write(String s, int off, int len) {
super.write(s, off, len);
listener.write(s.getBytes(), off, len);
}
}