| 
Groovy 1.8.4 | |||||||
| FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectgroovy.util.IndentPrinter
public class IndentPrinter extends Object
A helper class for printing indented text. This can be used stand-alone or, more commonly, from Builders.
By default, a PrintWriter to System.out is used as the Writer, but it is possible to change the Writer by passing a new one as a constructor argument.
Indention by default is 2 characters but can be changed by passing a different value as a constructor argument.
The following is an example usage. Note that within a "with" block you need to specify a parameter name so that this.println is not called instead of IndentPrinter.println:
 new IndentPrinter(new PrintWriter(out)).with { p ->
     p.printIndent()
     p.println('parent1')
     p.incrementIndent()
     p.printIndent()
     p.println('child 1')
     p.printIndent()
     p.println('child 2')
     p.decrementIndent()
     p.printIndent()
     p.println('parent2')
     p.flush()
 }
 
 The above example prints this to standard output:
parent1 child 1 child 2 parent2
| Constructor Summary | |
            IndentPrinter()
            Creates an IndentPrinter backed by a PrintWriter pointing to System.out, with an indent of two spaces.  | 
        |
            IndentPrinter(Writer out)
            Creates an IndentPrinter backed by the supplied Writer, with an indent of two spaces.  | 
        |
            IndentPrinter(Writer out, String indent)
            Creates an IndentPrinter backed by the supplied Writer, with a user-supplied String to be used for indenting.  | 
        |
            IndentPrinter(Writer out, String indent, boolean addNewlines)
            Creates an IndentPrinter backed by the supplied Writer, with a user-supplied String to be used for indenting and the ability to override newline handling.  | 
        |
| Method Summary | |
|---|---|
            void
         | 
        
            decrementIndent()
             | 
        
            void
         | 
        
            flush()
             | 
        
            int
         | 
        
            getIndentLevel()
             | 
        
            void
         | 
        
            incrementIndent()
             | 
        
            void
         | 
        
            print(String text)
            Prints a string.  | 
        
            void
         | 
        
            print(char c)
            Prints a character.  | 
        
            void
         | 
        
            printIndent()
            Prints the current indent level.  | 
        
            void
         | 
        
            println(String text)
            Prints a string followed by an end of line character.  | 
        
            void
         | 
        
            println()
            Prints an end-of-line character (if enabled via addNewLines property).  | 
        
            void
         | 
        
            setIndentLevel(int indentLevel)
             | 
        
| Methods inherited from class Object | |
|---|---|
| wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll | 
| Constructor Detail | 
|---|
public IndentPrinter()
public IndentPrinter(Writer out)
out -  Writer to output to
public IndentPrinter(Writer out, String indent)
out -  Writer to output toindent -  character(s) used to indent each line
public IndentPrinter(Writer out, String indent, boolean addNewlines)
out -  Writer to output toindent -  character(s) used to indent each lineaddNewlines -  set to false to gobble all new lines (default true)
| Method Detail | 
|---|
public void decrementIndent()
public void flush()
public int getIndentLevel()
public void incrementIndent()
public void print(String text)
text -  String to be written
public void print(char c)
c -  char to be written
public void printIndent()
public void println(String text)
text -  String to be written
public void println()
public void setIndentLevel(int indentLevel)
Copyright © 2003-2011 The Codehaus. All rights reserved.