Package org.exolab.javasource
Class JSourceWriter
- java.lang.Object
-
- java.io.Writer
-
- org.exolab.javasource.JSourceWriter
-
- All Implemented Interfaces:
java.io.Closeable,java.io.Flushable,java.lang.Appendable,java.lang.AutoCloseable
public final class JSourceWriter extends java.io.WriterThe writer used by the javasource classes.- Version:
- $Revision: 8011 $ $Date: 2005-03-30 03:29:24 -0700 (Wed, 30 Mar 2005) $
- Author:
- Keith Visco
-
-
Field Summary
Fields Modifier and Type Field Description static charDEFAULT_CHARThe default character to use for indentation.static shortDEFAULT_SIZEThe default indentation size.
-
Constructor Summary
Constructors Constructor Description JSourceWriter(java.io.Writer out)Creates a new JSourceWriter.JSourceWriter(java.io.Writer out, boolean autoflush)Creates a new JSourceWriter.JSourceWriter(java.io.Writer out, short tabSize, boolean autoflush)Creates a new JSourceWriter.JSourceWriter(java.io.Writer out, short tabSize, char tabChar, boolean autoflush)Creates a new JSourceWriter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()voidflush()protected chargetIndentChar()Returns the current character used for indentation.protected shortgetIndentLevel()Returns the current indentation level.protected shortgetIndentSize()Returns the current indent size (getIndentLevel()*tabSize).java.lang.StringgetLineSeparator()Returns the line separator being used by this JSourceWriter.voidindent()Increases the indentation level by 1.booleanisNewline()Checks to see if the cursor is positioned on a new line.voidsetLineSeparator(java.lang.String lineSeparator)Sets the line separator to use at the end of each line.voidunindent()Decreases the indentation level by 1.voidwrite(boolean b)voidwrite(char[] buf)voidwrite(char[] buf, int off, int len)voidwrite(double d)voidwrite(float f)voidwrite(int c)voidwrite(long l)voidwrite(java.lang.Object obj)voidwrite(java.lang.String s)voidwrite(java.lang.String s, int off, int len)protected voidwriteIndent()Always applies the current indentation.voidwriteln()voidwriteln(boolean b)voidwriteln(char c)voidwriteln(char[] chars)voidwriteln(double d)voidwriteln(float f)voidwriteln(int i)voidwriteln(long l)voidwriteln(java.lang.Object obj)voidwriteln(java.lang.String string)
-
-
-
Field Detail
-
DEFAULT_CHAR
public static final char DEFAULT_CHAR
The default character to use for indentation.- See Also:
- Constant Field Values
-
DEFAULT_SIZE
public static final short DEFAULT_SIZE
The default indentation size.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
JSourceWriter
public JSourceWriter(java.io.Writer out)
Creates a new JSourceWriter.- Parameters:
out- The Writer to write the actual output to.
-
JSourceWriter
public JSourceWriter(java.io.Writer out, boolean autoflush)Creates a new JSourceWriter.- Parameters:
out- The Writer to write the actual output to.autoflush- A boolean indicating whether or not to perform automatic flush at the end of a line.
-
JSourceWriter
public JSourceWriter(java.io.Writer out, short tabSize, boolean autoflush)Creates a new JSourceWriter.- Parameters:
out- The Writer to write the actual output to.tabSize- The size of each indentation.autoflush- A boolean indicating whether or not to perform automatic flush at the end of a line.
-
JSourceWriter
public JSourceWriter(java.io.Writer out, short tabSize, char tabChar, boolean autoflush)Creates a new JSourceWriter.- Parameters:
out- The Writer to write the actual output to.tabSize- The size of each indentation.tabChar- The character to use for indentation.autoflush- A boolean indicating whether or not to perform an automatic flush at the end of each line.
-
-
Method Detail
-
getLineSeparator
public java.lang.String getLineSeparator()
Returns the line separator being used by this JSourceWriter.- Returns:
- The line separator being used by this JSourceWriter.
-
indent
public void indent()
Increases the indentation level by 1.
-
isNewline
public boolean isNewline()
Checks to see if the cursor is positioned on a new line.- Returns:
- True if the cursor is at the start of a new line, otherwise false.
-
setLineSeparator
public void setLineSeparator(java.lang.String lineSeparator)
Sets the line separator to use at the end of each line. Typically a line separator will be one of the following:- "\r\n" for MS Windows
- "\n" for UNIX
- "\r" for Macintosh
- Parameters:
lineSeparator- The String to use as a line separator.
-
unindent
public void unindent()
Decreases the indentation level by 1.
-
getIndentLevel
protected short getIndentLevel()
Returns the current indentation level.- Returns:
- The current indentation level.
-
getIndentSize
protected short getIndentSize()
Returns the current indent size (getIndentLevel()*tabSize).- Returns:
- The current indent size.
-
getIndentChar
protected char getIndentChar()
Returns the current character used for indentation.- Returns:
- The current character used for indentation.
-
writeIndent
protected void writeIndent()
Always applies the current indentation.
-
write
public void write(float f)
-
write
public void write(long l)
-
write
public void write(double d)
-
write
public void write(java.lang.Object obj)
-
write
public void write(boolean b)
-
writeln
public void writeln()
-
writeln
public void writeln(float f)
-
writeln
public void writeln(long l)
-
writeln
public void writeln(int i)
-
writeln
public void writeln(double d)
-
writeln
public void writeln(java.lang.Object obj)
-
writeln
public void writeln(java.lang.String string)
-
writeln
public void writeln(char[] chars)
-
writeln
public void writeln(boolean b)
-
writeln
public void writeln(char c)
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Specified by:
closein classjava.io.Writer
-
flush
public void flush()
- Specified by:
flushin interfacejava.io.Flushable- Specified by:
flushin classjava.io.Writer
-
write
public void write(java.lang.String s, int off, int len)- Overrides:
writein classjava.io.Writer
-
write
public void write(java.lang.String s)
- Overrides:
writein classjava.io.Writer
-
write
public void write(char[] buf)
- Overrides:
writein classjava.io.Writer
-
write
public void write(int c)
- Overrides:
writein classjava.io.Writer
-
write
public void write(char[] buf, int off, int len)- Specified by:
writein classjava.io.Writer
-
-