com.atlassian.gzipfilter
Class RoutablePrintWriter

java.lang.Object
  extended by java.io.Writer
      extended by java.io.PrintWriter
          extended by com.atlassian.gzipfilter.RoutablePrintWriter
All Implemented Interfaces:
Closeable, Flushable, Appendable

public class RoutablePrintWriter
extends PrintWriter

Provides a PrintWriter that routes through to another PrintWriter, however the destination can be changed at any point. The destination can be passed in using a factory, so it will not be created until it's actually needed.

Borrowed from sitemesh.

Version:
$Revision: 1.1 $
Author:
Joe Walnes

Nested Class Summary
static interface RoutablePrintWriter.DestinationFactory
          Factory to lazily instantiate the destination.
 
Field Summary
 
Fields inherited from class java.io.PrintWriter
out
 
Fields inherited from class java.io.Writer
lock
 
Constructor Summary
RoutablePrintWriter(RoutablePrintWriter.DestinationFactory factory)
           
RoutablePrintWriter(RoutablePrintWriter.DestinationFactory factory, Runnable callBeforeUse)
           
 
Method Summary
 boolean checkError()
           
 void close()
           
 void flush()
           
 void print(boolean b)
           
 void print(char c)
           
 void print(char[] s)
           
 void print(double d)
           
 void print(float f)
           
 void print(int i)
           
 void print(long l)
           
 void print(Object obj)
           
 void print(String s)
           
 void println()
           
 void println(boolean x)
           
 void println(char x)
           
 void println(char[] x)
           
 void println(double x)
           
 void println(float x)
           
 void println(int x)
           
 void println(long x)
           
 void println(Object x)
           
 void println(String x)
           
 void updateDestination(RoutablePrintWriter.DestinationFactory factory)
           
 void write(char[] buf)
           
 void write(char[] buf, int off, int len)
           
 void write(int c)
           
 void write(String s)
           
 void write(String s, int off, int len)
           
 
Methods inherited from class java.io.PrintWriter
append, append, append, clearError, format, format, printf, printf, setError
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RoutablePrintWriter

public RoutablePrintWriter(RoutablePrintWriter.DestinationFactory factory,
                           Runnable callBeforeUse)

RoutablePrintWriter

public RoutablePrintWriter(RoutablePrintWriter.DestinationFactory factory)
Method Detail

updateDestination

public void updateDestination(RoutablePrintWriter.DestinationFactory factory)

close

public void close()
Specified by:
close in interface Closeable
Overrides:
close in class PrintWriter

println

public void println(Object x)
Overrides:
println in class PrintWriter

println

public void println(String x)
Overrides:
println in class PrintWriter

println

public void println(char[] x)
Overrides:
println in class PrintWriter

println

public void println(double x)
Overrides:
println in class PrintWriter

println

public void println(float x)
Overrides:
println in class PrintWriter

println

public void println(long x)
Overrides:
println in class PrintWriter

println

public void println(int x)
Overrides:
println in class PrintWriter

println

public void println(char x)
Overrides:
println in class PrintWriter

println

public void println(boolean x)
Overrides:
println in class PrintWriter

println

public void println()
Overrides:
println in class PrintWriter

print

public void print(Object obj)
Overrides:
print in class PrintWriter

print

public void print(String s)
Overrides:
print in class PrintWriter

print

public void print(char[] s)
Overrides:
print in class PrintWriter

print

public void print(double d)
Overrides:
print in class PrintWriter

print

public void print(float f)
Overrides:
print in class PrintWriter

print

public void print(long l)
Overrides:
print in class PrintWriter

print

public void print(int i)
Overrides:
print in class PrintWriter

print

public void print(char c)
Overrides:
print in class PrintWriter

print

public void print(boolean b)
Overrides:
print in class PrintWriter

write

public void write(String s)
Overrides:
write in class PrintWriter

write

public void write(String s,
                  int off,
                  int len)
Overrides:
write in class PrintWriter

write

public void write(char[] buf)
Overrides:
write in class PrintWriter

write

public void write(char[] buf,
                  int off,
                  int len)
Overrides:
write in class PrintWriter

write

public void write(int c)
Overrides:
write in class PrintWriter

checkError

public boolean checkError()
Overrides:
checkError in class PrintWriter

flush

public void flush()
Specified by:
flush in interface Flushable
Overrides:
flush in class PrintWriter


Copyright © 2015 Atlassian. All rights reserved.