org.eclipse.jpt.common.utility
Class IndentingPrintWriter

java.lang.Object
  extended by java.io.Writer
      extended by java.io.PrintWriter
          extended by org.eclipse.jpt.common.utility.IndentingPrintWriter
All Implemented Interfaces:
java.io.Closeable, java.io.Flushable, java.lang.Appendable
Direct Known Subclasses:
BodySourceWriter

public class IndentingPrintWriter
extends java.io.PrintWriter

Extend PrintWriter to automatically indent new lines.


Field Summary
static java.lang.String DEFAULT_INDENT
           
 
Constructor Summary
IndentingPrintWriter(java.io.Writer out)
          Construct a writer that indents with tabs.
IndentingPrintWriter(java.io.Writer out, java.lang.String indent)
          Construct a writer that indents with the specified string.
 
Method Summary
 void decrementIndentLevel()
          Decrement the indent level.
 int getIndentLevel()
          Return the current indent level.
 void incrementIndentLevel()
          Bump the indent level.
 void indent()
          Bump the indent level.
 void println()
          Set flag so following line is indented.
 int setIndentLevel(int indentLevel)
          Allow the indent level to be set directly.
 void undent()
          Decrement the indent level.
 void write(char[] buf, int off, int len)
          Write a portion of an array of characters.
 void write(int c)
          Write a single character.
 void write(java.lang.String s, int off, int len)
          Write a portion of a string.
 
Methods inherited from class java.io.PrintWriter
append, append, append, checkError, close, flush, format, format, print, print, print, print, print, print, print, print, print, printf, printf, println, println, println, println, println, println, println, println, println, write, write
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_INDENT

public static java.lang.String DEFAULT_INDENT
Constructor Detail

IndentingPrintWriter

public IndentingPrintWriter(java.io.Writer out)
Construct a writer that indents with tabs.


IndentingPrintWriter

public IndentingPrintWriter(java.io.Writer out,
                            java.lang.String indent)
Construct a writer that indents with the specified string.

Method Detail

println

public void println()
Set flag so following line is indented.

Overrides:
println in class java.io.PrintWriter

write

public void write(char[] buf,
                  int off,
                  int len)
Write a portion of an array of characters.

Overrides:
write in class java.io.PrintWriter

write

public void write(int c)
Write a single character.

Overrides:
write in class java.io.PrintWriter

write

public void write(java.lang.String s,
                  int off,
                  int len)
Write a portion of a string.

Overrides:
write in class java.io.PrintWriter

indent

public void indent()
Bump the indent level.


undent

public void undent()
Decrement the indent level.


incrementIndentLevel

public void incrementIndentLevel()
Bump the indent level.


decrementIndentLevel

public void decrementIndentLevel()
Decrement the indent level.


getIndentLevel

public int getIndentLevel()
Return the current indent level.


setIndentLevel

public int setIndentLevel(int indentLevel)
Allow the indent level to be set directly. Return the previous indent level.