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.Writer
The 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 char
DEFAULT_CHAR
The default character to use for indentation.static short
DEFAULT_SIZE
The 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 void
close()
void
flush()
protected char
getIndentChar()
Returns the current character used for indentation.protected short
getIndentLevel()
Returns the current indentation level.protected short
getIndentSize()
Returns the current indent size (getIndentLevel()*tabSize).java.lang.String
getLineSeparator()
Returns the line separator being used by this JSourceWriter.void
indent()
Increases the indentation level by 1.boolean
isNewline()
Checks to see if the cursor is positioned on a new line.void
setLineSeparator(java.lang.String lineSeparator)
Sets the line separator to use at the end of each line.void
unindent()
Decreases the indentation level by 1.void
write(boolean b)
void
write(char[] buf)
void
write(char[] buf, int off, int len)
void
write(double d)
void
write(float f)
void
write(int c)
void
write(long l)
void
write(java.lang.Object obj)
void
write(java.lang.String s)
void
write(java.lang.String s, int off, int len)
protected void
writeIndent()
Always applies the current indentation.void
writeln()
void
writeln(boolean b)
void
writeln(char c)
void
writeln(char[] chars)
void
writeln(double d)
void
writeln(float f)
void
writeln(int i)
void
writeln(long l)
void
writeln(java.lang.Object obj)
void
writeln(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:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in classjava.io.Writer
-
flush
public void flush()
- Specified by:
flush
in interfacejava.io.Flushable
- Specified by:
flush
in classjava.io.Writer
-
write
public void write(java.lang.String s, int off, int len)
- Overrides:
write
in classjava.io.Writer
-
write
public void write(java.lang.String s)
- Overrides:
write
in classjava.io.Writer
-
write
public void write(char[] buf)
- Overrides:
write
in classjava.io.Writer
-
write
public void write(int c)
- Overrides:
write
in classjava.io.Writer
-
write
public void write(char[] buf, int off, int len)
- Specified by:
write
in classjava.io.Writer
-
-