Package com.sun.javatest.util
Class WrapWriter
- java.lang.Object
-
- java.io.Writer
-
- com.sun.javatest.util.WrapWriter
-
- All Implemented Interfaces:
java.io.Closeable
,java.io.Flushable
,java.lang.Appendable
,java.lang.AutoCloseable
public class WrapWriter extends java.io.Writer
A writer that will automatically word wrap lines to fit within left and right margins.
-
-
Constructor Summary
Constructors Constructor Description WrapWriter(java.io.OutputStream out)
Create a WrapWriter object that will write to a given stream.WrapWriter(java.io.Writer out)
Create a WrapWriter object that will write to a given stream.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
void
flush()
int
getCharsOnLineSoFar()
Get the number of characters that have been written so far on the current line.int
getLeftMargin()
Get the position for the left margin for the text stream.int
getRightMargin()
Get the position for the right margin for the text stream.void
setLeftMargin(int m)
Set the position for the left margin for the text stream.void
setRightMargin(int m)
Set the position for the right margin for the text stream.void
write(char c)
Write a character to the stream.void
write(char[] cbuf, int off, int len)
-
-
-
Constructor Detail
-
WrapWriter
public WrapWriter(java.io.OutputStream out)
Create a WrapWriter object that will write to a given stream.- Parameters:
out
- the stream to which the WrapWriter will write
-
WrapWriter
public WrapWriter(java.io.Writer out)
Create a WrapWriter object that will write to a given stream.- Parameters:
out
- the stream to which the WrapWriter will write
-
-
Method Detail
-
setLeftMargin
public void setLeftMargin(int m)
Set the position for the left margin for the text stream.- Parameters:
m
- the position for the left margin- Throws:
java.lang.IllegalArgumentException
- if the value is negative or greater than the current value of the right margin- See Also:
getLeftMargin()
-
getLeftMargin
public int getLeftMargin()
Get the position for the left margin for the text stream.- Returns:
- the position for the left margin
- See Also:
setLeftMargin(int)
-
setRightMargin
public void setRightMargin(int m)
Set the position for the right margin for the text stream.- Parameters:
m
- the position for the right margin- Throws:
java.lang.IllegalArgumentException
- if the value is less than the current value of the left margin- See Also:
getRightMargin()
-
getRightMargin
public int getRightMargin()
Get the position for the right margin for the text stream.- Returns:
- the position for the right margin
- See Also:
setRightMargin(int)
-
getCharsOnLineSoFar
public int getCharsOnLineSoFar()
Get the number of characters that have been written so far on the current line. This will not include any characters in the last word that have not yet been written. Use flush() or write a white space character to force out the last word written.- Returns:
- the number of characters that have been written so far on the line
-
close
public void close() throws java.io.IOException
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in classjava.io.Writer
- Throws:
java.io.IOException
-
flush
public void flush() throws java.io.IOException
- Specified by:
flush
in interfacejava.io.Flushable
- Specified by:
flush
in classjava.io.Writer
- Throws:
java.io.IOException
-
write
public void write(char[] cbuf, int off, int len) throws java.io.IOException
- Specified by:
write
in classjava.io.Writer
- Throws:
java.io.IOException
-
write
public void write(char c) throws java.io.IOException
Write a character to the stream. Non-white-space characters will be buffered until a white space character is written. When a white space character is written, the buffered characters will be written on the current line, if they will fit before the right margin, otherwise a newline and spaces will be inserted so that the buffered characters appear on the next line starting at the left margin.- Parameters:
c
- the character to be written- Throws:
java.io.IOException
- if there is a problem writing to the underlying stream
-
-