org.sitemesh.webapp.contentfilter.io
Class RoutablePrintWriter

java.lang.Object
  extended by java.io.Writer
      extended by java.io.PrintWriter
          extended by org.sitemesh.webapp.contentfilter.io.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.

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)
           
 
Method Summary
 PrintWriter append(char c)
           
 PrintWriter append(CharSequence charSequence)
           
 PrintWriter append(CharSequence charSequence, int s, int e)
           
 boolean checkError()
           
 void close()
           
 void flush()
           
 PrintWriter format(Locale locale, String string, Object... args)
           
 PrintWriter format(String string, Object... args)
           
 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)
           
 PrintWriter printf(Locale locale, String string, Object... args)
           
 PrintWriter printf(String string, Object... args)
           
 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
clearError, 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)
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

printf

public PrintWriter printf(String string,
                          Object... args)
Overrides:
printf in class PrintWriter

printf

public PrintWriter printf(Locale locale,
                          String string,
                          Object... args)
Overrides:
printf in class PrintWriter

format

public PrintWriter format(String string,
                          Object... args)
Overrides:
format in class PrintWriter

format

public PrintWriter format(Locale locale,
                          String string,
                          Object... args)
Overrides:
format in class PrintWriter

append

public PrintWriter append(CharSequence charSequence)
Specified by:
append in interface Appendable
Overrides:
append in class PrintWriter

append

public PrintWriter append(CharSequence charSequence,
                          int s,
                          int e)
Specified by:
append in interface Appendable
Overrides:
append in class PrintWriter

append

public PrintWriter append(char c)
Specified by:
append in interface Appendable
Overrides:
append in class PrintWriter


Copyright © 2011. All Rights Reserved.